Files
CatServer/patches/net/minecraft/block/BlockCommandBlock.java.patch
2018-07-15 13:26:53 +08:00

36 lines
1.4 KiB
Diff

--- ../src-base/minecraft/net/minecraft/block/BlockCommandBlock.java
+++ ../src-work/minecraft/net/minecraft/block/BlockCommandBlock.java
@@ -25,6 +25,7 @@
import net.minecraft.util.StringUtils;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World;
+import org.bukkit.event.block.BlockRedstoneEvent;
public class BlockCommandBlock extends BlockContainer
{
@@ -57,7 +58,14 @@
boolean flag1 = tileentitycommandblock.isPowered();
boolean flag2 = tileentitycommandblock.isAuto();
- if (flag && !flag1)
+ org.bukkit.block.Block bukkitBlock = worldIn.getWorld().getBlockAt(pos.getX(),pos.getY(),pos.getZ());
+ int old = flag1 ? 15 : 0;
+ int current = flag ? 15 : 0;
+
+ BlockRedstoneEvent eventRedstone = new BlockRedstoneEvent(bukkitBlock,old,current);
+ worldIn.getServer().getPluginManager().callEvent(eventRedstone);
+
+ if (eventRedstone.getNewCurrent() > 0 && !(eventRedstone.getOldCurrent() > 0))
{
tileentitycommandblock.setPowered(true);
@@ -73,7 +81,7 @@
}
}
}
- else if (!flag && flag1)
+ else if (!(eventRedstone.getNewCurrent() > 0) && eventRedstone.getOldCurrent() > 0)
{
tileentitycommandblock.setPowered(false);
}