From 6b3f2f46fa9c6d870f058ca54b647ab6cf1dca08 Mon Sep 17 00:00:00 2001 From: sciwhiz12 Date: Sat, 11 Jul 2020 01:49:42 +0800 Subject: [PATCH] Remove hooks into beacon base/payments. Vanilla uses tags now for extensibility. (#6948) --- .../container/BeaconContainer.java.patch | 18 ------------------ .../tileentity/BeaconTileEntity.java.patch | 9 --------- .../data/forge/tags/items/beacon_payment.json | 9 --------- .../java/net/minecraftforge/common/Tags.java | 1 - .../common/data/ForgeItemTagsProvider.java | 1 - .../common/extensions/IForgeBlock.java | 16 ---------------- .../common/extensions/IForgeBlockState.java | 13 ------------- .../common/extensions/IForgeItem.java | 11 ----------- .../common/extensions/IForgeItemStack.java | 10 ---------- 9 files changed, 88 deletions(-) delete mode 100644 src/generated/resources/data/forge/tags/items/beacon_payment.json diff --git a/patches/minecraft/net/minecraft/inventory/container/BeaconContainer.java.patch b/patches/minecraft/net/minecraft/inventory/container/BeaconContainer.java.patch index 087497df5..858330d98 100644 --- a/patches/minecraft/net/minecraft/inventory/container/BeaconContainer.java.patch +++ b/patches/minecraft/net/minecraft/inventory/container/BeaconContainer.java.patch @@ -1,14 +1,5 @@ --- a/net/minecraft/inventory/container/BeaconContainer.java +++ b/net/minecraft/inventory/container/BeaconContainer.java -@@ -17,7 +17,7 @@ - public class BeaconContainer extends Container { - private final IInventory field_82866_e = new Inventory(1) { - public boolean func_94041_b(int p_94041_1_, ItemStack p_94041_2_) { -- return p_94041_2_.func_77973_b().func_206844_a(ItemTags.field_232908_Z_); -+ return p_94041_2_.isBeaconPayment(); - } - - public int func_70297_j_() { @@ -87,10 +87,8 @@ } @@ -22,12 +13,3 @@ } else if (p_82846_2_ >= 1 && p_82846_2_ < 28) { if (!this.func_75135_a(itemstack1, 28, 37, false)) { return ItemStack.field_190927_a; -@@ -156,7 +154,7 @@ - } - - public boolean func_75214_a(ItemStack p_75214_1_) { -- return p_75214_1_.func_77973_b().func_206844_a(ItemTags.field_232908_Z_); -+ return p_75214_1_.isBeaconPayment(); - } - - public int func_75219_a() { diff --git a/patches/minecraft/net/minecraft/tileentity/BeaconTileEntity.java.patch b/patches/minecraft/net/minecraft/tileentity/BeaconTileEntity.java.patch index 2ef969f53..82c10c29f 100644 --- a/patches/minecraft/net/minecraft/tileentity/BeaconTileEntity.java.patch +++ b/patches/minecraft/net/minecraft/tileentity/BeaconTileEntity.java.patch @@ -11,12 +11,3 @@ if (this.field_213934_g.size() <= 1) { beacontileentity$beamsegment = new BeaconTileEntity.BeamSegment(afloat); this.field_213934_g.add(beacontileentity$beamsegment); -@@ -184,7 +184,7 @@ - - for(int k = p_213927_1_ - i; k <= p_213927_1_ + i && flag; ++k) { - for(int l = p_213927_3_ - i; l <= p_213927_3_ + i; ++l) { -- if (!this.field_145850_b.func_180495_p(new BlockPos(k, j, l)).func_235714_a_(BlockTags.field_232875_ap_)) { -+ if (!this.field_145850_b.func_180495_p(new BlockPos(k, j, l)).isBeaconBase(this.field_145850_b, new BlockPos(k, j, l), func_174877_v())) { - flag = false; - break; - } diff --git a/src/generated/resources/data/forge/tags/items/beacon_payment.json b/src/generated/resources/data/forge/tags/items/beacon_payment.json deleted file mode 100644 index 4736b7991..000000000 --- a/src/generated/resources/data/forge/tags/items/beacon_payment.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "replace": false, - "values": [ - "minecraft:emerald", - "minecraft:diamond", - "minecraft:gold_ingot", - "minecraft:iron_ingot" - ] -} \ No newline at end of file diff --git a/src/main/java/net/minecraftforge/common/Tags.java b/src/main/java/net/minecraftforge/common/Tags.java index 8d451e3ab..f53976278 100644 --- a/src/main/java/net/minecraftforge/common/Tags.java +++ b/src/main/java/net/minecraftforge/common/Tags.java @@ -133,7 +133,6 @@ public class Tags public static class Items { public static final ITag.INamedTag ARROWS = tag("arrows"); - public static final ITag.INamedTag BEACON_PAYMENT = tag("beacon_payment"); public static final ITag.INamedTag BONES = tag("bones"); public static final ITag.INamedTag BOOKSHELVES = tag("bookshelves"); public static final ITag.INamedTag CHESTS = tag("chests"); diff --git a/src/main/java/net/minecraftforge/common/data/ForgeItemTagsProvider.java b/src/main/java/net/minecraftforge/common/data/ForgeItemTagsProvider.java index bc3d53401..259557f50 100644 --- a/src/main/java/net/minecraftforge/common/data/ForgeItemTagsProvider.java +++ b/src/main/java/net/minecraftforge/common/data/ForgeItemTagsProvider.java @@ -55,7 +55,6 @@ public class ForgeItemTagsProvider extends ItemTagsProvider filter = this.tagToBuilder.entrySet().stream().map(e -> e.getKey()).collect(Collectors.toSet()); func_240522_a_(Tags.Items.ARROWS).func_240534_a_(Items.ARROW, Items.TIPPED_ARROW, Items.SPECTRAL_ARROW); - func_240522_a_(Tags.Items.BEACON_PAYMENT).func_240534_a_(Items.EMERALD, Items.DIAMOND, Items.GOLD_INGOT, Items.IRON_INGOT); func_240522_a_(Tags.Items.BONES).func_240534_a_(Items.BONE); func_240522_a_(Tags.Items.BOOKSHELVES).func_240534_a_(Items.BOOKSHELF); func_240521_a_(Tags.Blocks.CHESTS, Tags.Items.CHESTS); diff --git a/src/main/java/net/minecraftforge/common/extensions/IForgeBlock.java b/src/main/java/net/minecraftforge/common/extensions/IForgeBlock.java index e2ed59645..6820873bf 100644 --- a/src/main/java/net/minecraftforge/common/extensions/IForgeBlock.java +++ b/src/main/java/net/minecraftforge/common/extensions/IForgeBlock.java @@ -489,22 +489,6 @@ public interface IForgeBlock return false; } - /** - * Determines if this block can be used as the base of a beacon. - * - * @param world The current world - * @param pos Block position in world - * @param beacon Beacon position in world - * @return True, to support the beacon, and make it active with this block. - */ - default boolean isBeaconBase(BlockState state, IWorldReader world, BlockPos pos, BlockPos beacon) - { - return state.getBlock() == Blocks.IRON_BLOCK || - state.getBlock() == Blocks.GOLD_BLOCK || - state.getBlock() == Blocks.DIAMOND_BLOCK || - state.getBlock() == Blocks.EMERALD_BLOCK; - } - /** * Determines if this block can be used as the frame of a conduit. * diff --git a/src/main/java/net/minecraftforge/common/extensions/IForgeBlockState.java b/src/main/java/net/minecraftforge/common/extensions/IForgeBlockState.java index c0ac4c162..81b2a0078 100644 --- a/src/main/java/net/minecraftforge/common/extensions/IForgeBlockState.java +++ b/src/main/java/net/minecraftforge/common/extensions/IForgeBlockState.java @@ -408,19 +408,6 @@ public interface IForgeBlockState return getBlockState().getBlock().isFertile(getBlockState(), world, pos); } - /** - * Determines if this block can be used as the base of a beacon. - * - * @param world The current world - * @param pos Block position in world - * @param beacon Beacon position in world - * @return True, to support the beacon, and make it active with this block. - */ - default boolean isBeaconBase(IWorldReader world, BlockPos pos, BlockPos beacon) - { - return getBlockState().getBlock().isBeaconBase(getBlockState(), world, pos, beacon); - } - /** * Determines if this block can be used as the frame of a conduit. * diff --git a/src/main/java/net/minecraftforge/common/extensions/IForgeItem.java b/src/main/java/net/minecraftforge/common/extensions/IForgeItem.java index 16696f4e1..13e974cb2 100644 --- a/src/main/java/net/minecraftforge/common/extensions/IForgeItem.java +++ b/src/main/java/net/minecraftforge/common/extensions/IForgeItem.java @@ -639,17 +639,6 @@ public interface IForgeItem return enchantment.type.canEnchantItem(stack.getItem()); } - /** - * Whether this Item can be used as a payment to activate the vanilla beacon. - * - * @param stack the ItemStack - * @return true if this Item can be used - */ - default boolean isBeaconPayment(ItemStack stack) - { - return Tags.Items.BEACON_PAYMENT.func_230235_a_(stack.getItem()); - } - /** * Determine if the player switching between these two item stacks * diff --git a/src/main/java/net/minecraftforge/common/extensions/IForgeItemStack.java b/src/main/java/net/minecraftforge/common/extensions/IForgeItemStack.java index 9d475c88c..1f6091952 100644 --- a/src/main/java/net/minecraftforge/common/extensions/IForgeItemStack.java +++ b/src/main/java/net/minecraftforge/common/extensions/IForgeItemStack.java @@ -304,16 +304,6 @@ public interface IForgeItemStack extends ICapabilitySerializable getStack().getItem().onHorseArmorTick(getStack(), world, horse); } - /** - * Whether this Item can be used as a payment to activate the vanilla beacon. - * - * @return true if this Item can be used - */ - default boolean isBeaconPayment() - { - return getStack().getItem().isBeaconPayment(getStack()); - } - /** * Determines if the specific ItemStack can be placed in the specified armor * slot, for the entity.