From 6a5add38e257f781b76a8a2cdfac880e0ce3ef08 Mon Sep 17 00:00:00 2001 From: Sebastian Hartte Date: Mon, 12 Sep 2016 01:46:55 +0200 Subject: [PATCH] Fixes incorrect onItemUse declaration, which in turn fixes the color applicator. --- .../java/appeng/hooks/DispenserBlockTool.java | 3 ++- src/main/java/appeng/hooks/IBlockTool.java | 4 +++- .../tools/powered/ToolColorApplicator.java | 14 +++++++----- .../tools/powered/ToolEntropyManipulator.java | 22 +++++++++---------- 4 files changed, 24 insertions(+), 19 deletions(-) diff --git a/src/main/java/appeng/hooks/DispenserBlockTool.java b/src/main/java/appeng/hooks/DispenserBlockTool.java index eb2e88f3..6c0d04e4 100644 --- a/src/main/java/appeng/hooks/DispenserBlockTool.java +++ b/src/main/java/appeng/hooks/DispenserBlockTool.java @@ -25,6 +25,7 @@ import net.minecraft.dispenser.IBlockSource; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.util.EnumFacing; +import net.minecraft.util.EnumHand; import net.minecraft.world.World; import net.minecraft.world.WorldServer; @@ -46,7 +47,7 @@ public final class DispenserBlockTool extends BehaviorDefaultDispenseItem final World w = dispenser.getWorld(); if( w instanceof WorldServer ) { - tm.onItemUse( dispensedItem, Platform.getPlayer( (WorldServer) w ), w, dispenser.getBlockPos().offset( enumfacing ), enumfacing, 0.5f, 0.5f, 0.5f ); + tm.onItemUse( dispensedItem, Platform.getPlayer( (WorldServer) w ), w, dispenser.getBlockPos().offset( enumfacing ), EnumHand.MAIN_HAND, enumfacing, 0.5f, 0.5f, 0.5f ); } } return dispensedItem; diff --git a/src/main/java/appeng/hooks/IBlockTool.java b/src/main/java/appeng/hooks/IBlockTool.java index 5ae8f9d2..fab0435c 100644 --- a/src/main/java/appeng/hooks/IBlockTool.java +++ b/src/main/java/appeng/hooks/IBlockTool.java @@ -21,7 +21,9 @@ package appeng.hooks; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; +import net.minecraft.util.EnumActionResult; import net.minecraft.util.EnumFacing; +import net.minecraft.util.EnumHand; import net.minecraft.util.math.BlockPos; import net.minecraft.world.World; @@ -29,6 +31,6 @@ import net.minecraft.world.World; public interface IBlockTool { - public boolean onItemUse( ItemStack item, EntityPlayer p, World w, BlockPos pos, EnumFacing side, float hitX, float hitY, float hitZ ); + EnumActionResult onItemUse( ItemStack is, EntityPlayer p, World w, BlockPos pos, EnumHand hand, EnumFacing side, float hitX, float hitY, float hitZ ); } diff --git a/src/main/java/appeng/items/tools/powered/ToolColorApplicator.java b/src/main/java/appeng/items/tools/powered/ToolColorApplicator.java index 407edffe..7c25e0e5 100644 --- a/src/main/java/appeng/items/tools/powered/ToolColorApplicator.java +++ b/src/main/java/appeng/items/tools/powered/ToolColorApplicator.java @@ -40,7 +40,9 @@ import net.minecraft.item.ItemSnowball; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.EnumActionResult; import net.minecraft.util.EnumFacing; +import net.minecraft.util.EnumHand; import net.minecraft.util.math.BlockPos; import net.minecraft.world.World; import net.minecraftforge.oredict.OreDictionary; @@ -107,7 +109,7 @@ public class ToolColorApplicator extends AEBasePoweredItem implements IStorageCe } @Override - public boolean onItemUse( final ItemStack is, final EntityPlayer p, final World w, final BlockPos pos, final EnumFacing side, final float hitX, final float hitY, final float hitZ ) + public EnumActionResult onItemUse( ItemStack is, EntityPlayer p, World w, BlockPos pos, EnumHand hand, EnumFacing side, float hitX, float hitY, float hitZ ) { final Block blk = w.getBlockState( pos ).getBlock(); @@ -130,7 +132,7 @@ public class ToolColorApplicator extends AEBasePoweredItem implements IStorageCe if( !Platform.hasPermissions( new DimensionalCoord( w, pos ), p ) ) { - return false; + return EnumActionResult.FAIL; } final double powerPerUse = 100; @@ -146,7 +148,7 @@ public class ToolColorApplicator extends AEBasePoweredItem implements IStorageCe { inv.extractItems( AEItemStack.create( paintBall ), Actionable.MODULATE, new BaseActionSource() ); this.extractAEPower( is, powerPerUse ); - return true; + return EnumActionResult.SUCCESS; } } } @@ -159,7 +161,7 @@ public class ToolColorApplicator extends AEBasePoweredItem implements IStorageCe inv.extractItems( AEItemStack.create( paintBall ), Actionable.MODULATE, new BaseActionSource() ); this.extractAEPower( is, powerPerUse ); ( (TilePaint) painted ).cleanSide( side.getOpposite() ); - return true; + return EnumActionResult.SUCCESS; } } else if( paintBall != null ) @@ -172,7 +174,7 @@ public class ToolColorApplicator extends AEBasePoweredItem implements IStorageCe { inv.extractItems( AEItemStack.create( paintBall ), Actionable.MODULATE, new BaseActionSource() ); this.extractAEPower( is, powerPerUse ); - return true; + return EnumActionResult.SUCCESS; } } } @@ -183,7 +185,7 @@ public class ToolColorApplicator extends AEBasePoweredItem implements IStorageCe this.cycleColors( is, paintBall, 1 ); } - return false; + return EnumActionResult.FAIL; } @Override diff --git a/src/main/java/appeng/items/tools/powered/ToolEntropyManipulator.java b/src/main/java/appeng/items/tools/powered/ToolEntropyManipulator.java index c32fed30..9aa5b1ab 100644 --- a/src/main/java/appeng/items/tools/powered/ToolEntropyManipulator.java +++ b/src/main/java/appeng/items/tools/powered/ToolEntropyManipulator.java @@ -226,7 +226,7 @@ public class ToolEntropyManipulator extends AEBasePoweredItem implements IBlockT { if( Platform.hasPermissions( new DimensionalCoord( w, target.getBlockPos() ), p ) ) { - this.onItemUse( item, p, w, target.getBlockPos(), EnumFacing.UP, 0.0F, 0.0F, 0.0F ); + this.onItemUse( item, p, w, target.getBlockPos(), hand, EnumFacing.UP, 0.0F, 0.0F, 0.0F ); } } } @@ -236,13 +236,13 @@ public class ToolEntropyManipulator extends AEBasePoweredItem implements IBlockT } @Override - public boolean onItemUse( final ItemStack item, final EntityPlayer p, final World w, final BlockPos pos, final EnumFacing side, final float hitX, final float hitY, final float hitZ ) + public EnumActionResult onItemUse( ItemStack item, EntityPlayer p, World w, BlockPos pos, EnumHand hand, EnumFacing side, float hitX, float hitY, float hitZ ) { if( this.getAECurrentPower( item ) > 1600 ) { if( !p.canPlayerEdit( pos, side, item ) ) { - return false; + return EnumActionResult.FAIL; } final IBlockState state = w.getBlockState( pos ); @@ -254,7 +254,7 @@ public class ToolEntropyManipulator extends AEBasePoweredItem implements IBlockT { this.extractAEPower( item, 1600 ); this.cool( state, w, pos ); - return true; + return EnumActionResult.SUCCESS; } } else @@ -263,21 +263,21 @@ public class ToolEntropyManipulator extends AEBasePoweredItem implements IBlockT { w.setBlockToAir( pos ); ( (BlockTNT) blockID ).explode( w, pos, state, p ); - return true; + return EnumActionResult.SUCCESS; } if( blockID instanceof BlockTinyTNT ) { w.setBlockToAir( pos ); ( (BlockTinyTNT) blockID ).startFuse( w, pos, p ); - return true; + return EnumActionResult.SUCCESS; } if( this.canHeat( state ) ) { this.extractAEPower( item, 1600 ); this.heat( state, w, pos ); - return true; + return EnumActionResult.SUCCESS; } final ItemStack[] stack = Platform.getBlockDrops( w, pos ); @@ -329,7 +329,7 @@ public class ToolEntropyManipulator extends AEBasePoweredItem implements IBlockT Platform.spawnDrops( w, pos, or.getDrops() ); } - return true; + return EnumActionResult.SUCCESS; } else { @@ -337,7 +337,7 @@ public class ToolEntropyManipulator extends AEBasePoweredItem implements IBlockT if( !p.canPlayerEdit( offsetPos, side, item ) ) { - return false; + return EnumActionResult.FAIL; } if( w.isAirBlock( offsetPos ) ) @@ -347,11 +347,11 @@ public class ToolEntropyManipulator extends AEBasePoweredItem implements IBlockT w.setBlockState( offsetPos, Blocks.FIRE.getDefaultState() ); } - return true; + return EnumActionResult.SUCCESS; } } } - return false; + return EnumActionResult.PASS; } }