aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/api/multitileentity/interfaces/IMultiTileEntity.java
diff options
context:
space:
mode:
authorJason Mitchell <mitchej+github@gmail.com>2024-06-22 15:36:54 +0800
committerJason Mitchell <mitchej+github@gmail.com>2024-07-09 21:38:05 -0700
commit3724fbbcb67ee2566419654e31eb88eb5b7f88f6 (patch)
tree51787dc3993da50edb0bcd55684184fea9ef270e /src/main/java/gregtech/api/multitileentity/interfaces/IMultiTileEntity.java
parent37d49962afac36359fbda8a298e9e904c0c5193a (diff)
downloadGT5-Unofficial-3724fbbcb67ee2566419654e31eb88eb5b7f88f6.tar.gz
GT5-Unofficial-3724fbbcb67ee2566419654e31eb88eb5b7f88f6.tar.bz2
GT5-Unofficial-3724fbbcb67ee2566419654e31eb88eb5b7f88f6.zip
Refactors
Diffstat (limited to 'src/main/java/gregtech/api/multitileentity/interfaces/IMultiTileEntity.java')
-rw-r--r--src/main/java/gregtech/api/multitileentity/interfaces/IMultiTileEntity.java121
1 files changed, 33 insertions, 88 deletions
diff --git a/src/main/java/gregtech/api/multitileentity/interfaces/IMultiTileEntity.java b/src/main/java/gregtech/api/multitileentity/interfaces/IMultiTileEntity.java
index 91803690fc..d504e34c25 100644
--- a/src/main/java/gregtech/api/multitileentity/interfaces/IMultiTileEntity.java
+++ b/src/main/java/gregtech/api/multitileentity/interfaces/IMultiTileEntity.java
@@ -18,13 +18,10 @@ import net.minecraft.world.Explosion;
import net.minecraft.world.World;
import net.minecraftforge.common.util.ForgeDirection;
-import cpw.mods.fml.common.Optional;
-import gregtech.api.enums.Mods;
import gregtech.api.interfaces.tileentity.ICoverable;
import gregtech.api.interfaces.tileentity.IDebugableTileEntity;
import gregtech.api.interfaces.tileentity.ITurnable;
-import gregtech.api.multitileentity.MultiTileEntityBlockInternal;
-import gregtech.api.multitileentity.MultiTileEntityItemInternal;
+import gregtech.api.multitileentity.MultiTileEntityBlockRegistryInternal;
import gregtech.api.multitileentity.MultiTileEntityRegistry;
/*
@@ -172,7 +169,7 @@ public interface IMultiTileEntity extends ICoverable, ITurnable, IDebugableTileE
boolean recolourBlock(ForgeDirection side, byte aColor);
/** Adds to the Creative Tab. return false to prevent it from being added. */
- boolean getSubItems(MultiTileEntityBlockInternal aBlock, Item aItem, CreativeTabs aTab, List<ItemStack> aList,
+ boolean getSubItems(MultiTileEntityBlockRegistryInternal block, Item item, CreativeTabs tab, List<ItemStack> list,
short aID);
ItemStack getPickBlock(MovingObjectPosition aTarget);
@@ -184,110 +181,58 @@ public interface IMultiTileEntity extends ICoverable, ITurnable, IDebugableTileE
boolean onPlaced(ItemStack aStack, EntityPlayer aPlayer, World aWorld, int aX, int aY, int aZ, ForgeDirection side,
float aHitX, float aHitY, float aHitZ);
- // ItemStack getPickBlock(MovingObjectPosition aTarget);
-
- /*
- * Various Sub Interfaces from GT6
- */
-
- interface IMTE_OnNeighborBlockChange extends IMultiTileEntity {
-
- void onNeighborBlockChange(World aWorld, Block aBlock);
- }
-
- interface IMTE_IsProvidingWeakPower extends IMultiTileEntity {
-
- /** Remember that it passes the opposite Side due to the way vanilla works! */
- int isProvidingWeakPower(ForgeDirection oppositeSide);
- }
-
- interface IMTE_IsProvidingStrongPower extends IMultiTileEntity {
-
- /** Remember that it passes the opposite Side due to the way vanilla works! */
- int isProvidingStrongPower(ForgeDirection oppositeSide);
- }
-
- interface IMTE_ShouldCheckWeakPower extends IMultiTileEntity {
-
- boolean shouldCheckWeakPower(ForgeDirection side);
- }
-
- interface IMTE_GetWeakChanges extends IMultiTileEntity {
+ /** return true to prevent the TileEntity from being removed. */
+ boolean onBlockBroken();
- boolean getWeakChanges();
+ default void onNeighborBlockChange(World aWorld, Block aBlock) {
+ /* Do Nothing */
}
- interface IMTE_GetComparatorInputOverride extends IMultiTileEntity {
-
- int getComparatorInputOverride(ForgeDirection side);
- }
-
- interface IMTE_BreakBlock extends IMultiTileEntity {
+ // ItemStack getPickBlock(MovingObjectPosition aTarget);
- /** return true to prevent the TileEntity from being removed. */
- boolean breakBlock();
+ /** Remember that it passes the opposite Side due to the way vanilla works! */
+ default int isProvidingWeakPower(ForgeDirection oppositeSide) {
+ return 0;
}
- interface IMTE_HasMultiBlockMachineRelevantData extends IMultiTileEntity {
-
- /** Return true to mark this Block as a Machine Block for Multiblocks. (Triggers machine update thread) */
- boolean hasMultiBlockMachineRelevantData();
+ default boolean providesStrongPower() {
+ return false;
}
- interface IMTE_GetBlockHardness extends IMultiTileEntity {
-
- float getBlockHardness();
+ /** Remember that it passes the opposite Side due to the way vanilla works! */
+ default int isProvidingStrongPower(ForgeDirection oppositeSide) {
+ return 0;
}
- interface IMTE_GetFoodValues extends IMultiTileEntity {
-
- @Optional.Method(modid = Mods.Names.APPLE_CORE)
- squeek.applecore.api.food.FoodValues getFoodValues(MultiTileEntityItemInternal aItem, ItemStack aStack);
+ default boolean shouldCheckWeakPower(ForgeDirection side) {
+ return false;
}
- interface IMTE_OnlyPlaceableWhenSneaking extends IMultiTileEntity {
-
- /** Return true to prevent placing this Block without Sneaking. */
- boolean onlyPlaceableWhenSneaking();
+ default boolean getWeakChanges() {
+ return false;
}
- interface IMTE_IgnoreEntityCollisionWhenPlacing extends IMultiTileEntity {
-
- /**
- * Return true to ignore the Player standing in the way of placing this Block; useful for things like
- * pipes/wires.
- */
- boolean ignoreEntityCollisionWhenPlacing(ItemStack aStack, EntityPlayer aPlayer, World aWorld, int aX, int aY,
- int aZ, ForgeDirection side, float aHitX, float aHitY, float aHitZ);
+ default boolean hasComparatorInputOverride() {
+ return false;
}
- interface IMTE_CanPlace extends IMultiTileEntity {
-
- /** Return false if this TileEntity cannot be placed at that Location. */
- boolean canPlace(ItemStack aStack, EntityPlayer aPlayer, World aWorld, int aX, int aY, int aZ,
- ForgeDirection side, float aHitX, float aHitY, float aHitZ);
+ default int getComparatorInputOverride(ForgeDirection side) {
+ return 0;
}
- interface IMTE_GetMaxStackSize extends IMultiTileEntity {
-
- /** Gets the Max Stacksize of this Item. */
- byte getMaxStackSize(ItemStack aStack, byte aDefault);
+ default float getBlockHardness() {
+ return 1.0f;
}
- interface IMTE_AddToolTips extends IMultiTileEntity {
-
- /** Adds ToolTips to the Item. */
- void addToolTips(List<String> aList, ItemStack aStack, boolean aF3_H);
+ /** Adds ToolTips to the Item. */
+ default void addToolTips(List<String> aList, ItemStack aStack, boolean aF3_H) {
+ // Do nothing
}
- interface IMTE_HasModes extends IMultiTileEntity {
+ // interface IMTE_HasMultiBlockMachineRelevantData extends IMultiTileEntity {
+ //
+ // /** Return true to mark this Block as a Machine Block for Multiblocks. (Triggers machine update thread) */
+ // boolean hasMultiBlockMachineRelevantData();
+ // }
- int getMode();
-
- void setMode(int mode);
-
- int getAllowedModes();
-
- void setAllowedModes(int allowedModes);
- }
}