33 lines
2.2 KiB
Diff
33 lines
2.2 KiB
Diff
--- a/net/minecraft/item/HoeItem.java
|
|
+++ b/net/minecraft/item/HoeItem.java
|
|
@@ -21,14 +21,16 @@
|
|
protected static final Map<Block, BlockState> field_195973_b = Maps.newHashMap(ImmutableMap.of(Blocks.field_196658_i, Blocks.field_150458_ak.func_176223_P(), Blocks.field_185774_da, Blocks.field_150458_ak.func_176223_P(), Blocks.field_150346_d, Blocks.field_150458_ak.func_176223_P(), Blocks.field_196660_k, Blocks.field_150346_d.func_176223_P()));
|
|
|
|
public HoeItem(IItemTier p_i231595_1_, int p_i231595_2_, float p_i231595_3_, Item.Properties p_i231595_4_) {
|
|
- super((float)p_i231595_2_, p_i231595_3_, p_i231595_1_, field_234683_c_, p_i231595_4_);
|
|
+ super((float)p_i231595_2_, p_i231595_3_, p_i231595_1_, field_234683_c_, p_i231595_4_.addToolType(net.minecraftforge.common.ToolType.HOE, p_i231595_1_.func_200925_d()));
|
|
}
|
|
|
|
public ActionResultType func_195939_a(ItemUseContext p_195939_1_) {
|
|
World world = p_195939_1_.func_195991_k();
|
|
BlockPos blockpos = p_195939_1_.func_195995_a();
|
|
- if (p_195939_1_.func_196000_l() != Direction.DOWN && world.func_180495_p(blockpos.func_177984_a()).func_196958_f()) {
|
|
- BlockState blockstate = field_195973_b.get(world.func_180495_p(blockpos).func_177230_c());
|
|
+ int hook = net.minecraftforge.event.ForgeEventFactory.onHoeUse(p_195939_1_);
|
|
+ if (hook != 0) return hook > 0 ? ActionResultType.SUCCESS : ActionResultType.FAIL;
|
|
+ if (p_195939_1_.func_196000_l() != Direction.DOWN && world.func_175623_d(blockpos.func_177984_a())) {
|
|
+ BlockState blockstate = world.func_180495_p(blockpos).getToolModifiedState(world, blockpos, p_195939_1_.func_195999_j(), p_195939_1_.func_195996_i(), net.minecraftforge.common.ToolType.HOE);
|
|
if (blockstate != null) {
|
|
PlayerEntity playerentity = p_195939_1_.func_195999_j();
|
|
world.func_184133_a(playerentity, blockpos, SoundEvents.field_187693_cj, SoundCategory.BLOCKS, 1.0F, 1.0F);
|
|
@@ -47,4 +49,9 @@
|
|
|
|
return ActionResultType.PASS;
|
|
}
|
|
+
|
|
+ @javax.annotation.Nullable
|
|
+ public static BlockState getHoeTillingState(BlockState originalState) {
|
|
+ return field_195973_b.get(originalState.func_177230_c());
|
|
+ }
|
|
}
|