From 2b9e24b45b99c2d2bed40920dbc6f0af21cb5eae Mon Sep 17 00:00:00 2001 From: Rick Date: Sun, 22 Apr 2018 10:58:57 -0400 Subject: [PATCH] Commit 1 of 2 for ticket #643 -- eliminates Altar dupe bug by disallowing all interactions while altar is in use. --- .../Slimefun/AncientAltar/RitualAnimation.java | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/me/mrCookieSlime/Slimefun/AncientAltar/RitualAnimation.java b/src/me/mrCookieSlime/Slimefun/AncientAltar/RitualAnimation.java index ce0b6e711..3ad6f6013 100644 --- a/src/me/mrCookieSlime/Slimefun/AncientAltar/RitualAnimation.java +++ b/src/me/mrCookieSlime/Slimefun/AncientAltar/RitualAnimation.java @@ -28,7 +28,7 @@ public class RitualAnimation implements Runnable { List particles; boolean running; - int stage; + int stage; public RitualAnimation(List altars, Block altar, Location drop, ItemStack output, List pedestals, List items) { this.l = drop; @@ -48,6 +48,7 @@ public class RitualAnimation implements Runnable { idle(); if(this.stage == 36) { finish(); + AncientAltarListener.altarinuse = false; return; } if(this.stage > 0 && this.stage % 4 == 0) { @@ -72,7 +73,10 @@ public class RitualAnimation implements Runnable { private void checkPedestal(Block pedestal) { Item item = AncientAltarListener.findItem(pedestal); - if (item == null) abort(); + if (item == null) { + abort(); + AncientAltarListener.altarinuse = false; + } else { particles.add(pedestal.getLocation().add(0.5, 1.5, 0.5)); items.add(AncientAltarListener.fixItemStack(item.getItemStack(), item.getCustomName())); @@ -95,7 +99,7 @@ public class RitualAnimation implements Runnable { for (ItemStack stack: items) { l.getWorld().dropItemNaturally(l, stack); } - l.getWorld().playSound(l, Sound.BLOCK_NOTE_SNARE, 5F, 1F); + l.getWorld().playSound(l, Sound.BLOCK_NOTE_SNARE, 5F, 1F); altars.remove(altar); }