From 86f1765b171f4cc6f163b8027d1330f4e5094e2d Mon Sep 17 00:00:00 2001 From: Alexdoru <57050655+Alexdoru@users.noreply.github.com> Date: Sat, 28 Sep 2024 13:25:01 +0200 Subject: Remove more reflection + reorganize mixin accessors packages (#3260) Co-authored-by: Martin Robertz Co-authored-by: boubou19 --- .../gregtech/mixin/interfaces/IBlockStemAccesor.java | 8 -------- src/main/java/gregtech/mixin/interfaces/PotionExt.java | 7 ------- .../interfaces/accessors/EntityPlayerMPAccessor.java | 7 +++++++ .../mixin/interfaces/accessors/IBlockStemAccessor.java | 8 ++++++++ .../interfaces/accessors/IRecipeMutableAccess.java | 18 ++++++++++++++++++ .../mixin/interfaces/accessors/PotionAccessor.java | 7 +++++++ .../interfaces/accessors/ShapedOreRecipeAccessor.java | 9 +++++++++ 7 files changed, 49 insertions(+), 15 deletions(-) delete mode 100644 src/main/java/gregtech/mixin/interfaces/IBlockStemAccesor.java delete mode 100644 src/main/java/gregtech/mixin/interfaces/PotionExt.java create mode 100644 src/main/java/gregtech/mixin/interfaces/accessors/EntityPlayerMPAccessor.java create mode 100644 src/main/java/gregtech/mixin/interfaces/accessors/IBlockStemAccessor.java create mode 100644 src/main/java/gregtech/mixin/interfaces/accessors/IRecipeMutableAccess.java create mode 100644 src/main/java/gregtech/mixin/interfaces/accessors/PotionAccessor.java create mode 100644 src/main/java/gregtech/mixin/interfaces/accessors/ShapedOreRecipeAccessor.java (limited to 'src/main/java/gregtech/mixin/interfaces') diff --git a/src/main/java/gregtech/mixin/interfaces/IBlockStemAccesor.java b/src/main/java/gregtech/mixin/interfaces/IBlockStemAccesor.java deleted file mode 100644 index 089479f8ad..0000000000 --- a/src/main/java/gregtech/mixin/interfaces/IBlockStemAccesor.java +++ /dev/null @@ -1,8 +0,0 @@ -package gregtech.mixin.interfaces; - -import net.minecraft.block.Block; - -public interface IBlockStemAccesor { - - Block getCropBlock(); -} diff --git a/src/main/java/gregtech/mixin/interfaces/PotionExt.java b/src/main/java/gregtech/mixin/interfaces/PotionExt.java deleted file mode 100644 index 11ae365e5a..0000000000 --- a/src/main/java/gregtech/mixin/interfaces/PotionExt.java +++ /dev/null @@ -1,7 +0,0 @@ -package gregtech.mixin.interfaces; - -public interface PotionExt { - - boolean gt5u$isBadEffect(); - -} diff --git a/src/main/java/gregtech/mixin/interfaces/accessors/EntityPlayerMPAccessor.java b/src/main/java/gregtech/mixin/interfaces/accessors/EntityPlayerMPAccessor.java new file mode 100644 index 0000000000..826c5d1474 --- /dev/null +++ b/src/main/java/gregtech/mixin/interfaces/accessors/EntityPlayerMPAccessor.java @@ -0,0 +1,7 @@ +package gregtech.mixin.interfaces.accessors; + +public interface EntityPlayerMPAccessor { + + String gt5u$getTranslator(); + +} diff --git a/src/main/java/gregtech/mixin/interfaces/accessors/IBlockStemAccessor.java b/src/main/java/gregtech/mixin/interfaces/accessors/IBlockStemAccessor.java new file mode 100644 index 0000000000..da3efa582d --- /dev/null +++ b/src/main/java/gregtech/mixin/interfaces/accessors/IBlockStemAccessor.java @@ -0,0 +1,8 @@ +package gregtech.mixin.interfaces.accessors; + +import net.minecraft.block.Block; + +public interface IBlockStemAccessor { + + Block gt5u$getCropBlock(); +} diff --git a/src/main/java/gregtech/mixin/interfaces/accessors/IRecipeMutableAccess.java b/src/main/java/gregtech/mixin/interfaces/accessors/IRecipeMutableAccess.java new file mode 100644 index 0000000000..778e021205 --- /dev/null +++ b/src/main/java/gregtech/mixin/interfaces/accessors/IRecipeMutableAccess.java @@ -0,0 +1,18 @@ +package gregtech.mixin.interfaces.accessors; + +import net.minecraft.item.ItemStack; + +/** + * Mixed-in interface for recipe classes in Forge and Vanilla that allows mutating the input and output items. + */ +public interface IRecipeMutableAccess { + + /** @return Gets the current output item of the recipe */ + ItemStack gt5u$getRecipeOutputItem(); + + /** Sets a new output item on the recipe */ + void gt5u$setRecipeOutputItem(ItemStack newItem); + + /** @return The raw list or array of recipe inputs, the exact type depends on the underlying recipe type. */ + Object gt5u$getRecipeInputs(); +} diff --git a/src/main/java/gregtech/mixin/interfaces/accessors/PotionAccessor.java b/src/main/java/gregtech/mixin/interfaces/accessors/PotionAccessor.java new file mode 100644 index 0000000000..48794c256a --- /dev/null +++ b/src/main/java/gregtech/mixin/interfaces/accessors/PotionAccessor.java @@ -0,0 +1,7 @@ +package gregtech.mixin.interfaces.accessors; + +public interface PotionAccessor { + + boolean gt5u$isBadEffect(); + +} diff --git a/src/main/java/gregtech/mixin/interfaces/accessors/ShapedOreRecipeAccessor.java b/src/main/java/gregtech/mixin/interfaces/accessors/ShapedOreRecipeAccessor.java new file mode 100644 index 0000000000..9d2980e434 --- /dev/null +++ b/src/main/java/gregtech/mixin/interfaces/accessors/ShapedOreRecipeAccessor.java @@ -0,0 +1,9 @@ +package gregtech.mixin.interfaces.accessors; + +public interface ShapedOreRecipeAccessor { + + int gt5u$getWidth(); + + int gt5u$getHeight(); + +} -- cgit