From 85c804fa112fd1f19c91e45d150a787cfbf0f7a8 Mon Sep 17 00:00:00 2001 From: Shawn Buckley Date: Sun, 18 Oct 2015 23:04:39 -0400 Subject: Move source directory --- .../api/interfaces/IColorModulationContainer.java | 5 - main/java/gregtech/api/interfaces/ICondition.java | 104 ------ .../gregtech/api/interfaces/IDamagableItem.java | 7 - .../gregtech/api/interfaces/IDebugableBlock.java | 26 -- .../java/gregtech/api/interfaces/IDescribable.java | 11 - main/java/gregtech/api/interfaces/IFoodStat.java | 21 -- .../gregtech/api/interfaces/IIconContainer.java | 21 -- .../gregtech/api/interfaces/IItemBehaviour.java | 30 -- .../gregtech/api/interfaces/IItemContainer.java | 24 -- .../api/interfaces/IOreRecipeRegistrator.java | 15 - .../gregtech/api/interfaces/IProjectileItem.java | 16 - .../api/interfaces/IRedstoneCircuitBlock.java | 66 ---- .../gregtech/api/interfaces/ISubTagContainer.java | 20 - main/java/gregtech/api/interfaces/ITexture.java | 15 - main/java/gregtech/api/interfaces/IToolStats.java | 147 -------- .../api/interfaces/internal/IBCTileEntity.java | 8 - .../interfaces/internal/IGT_CraftingRecipe.java | 7 - .../gregtech/api/interfaces/internal/IGT_Mod.java | 34 -- .../api/interfaces/internal/IGT_RecipeAdder.java | 412 --------------------- .../api/interfaces/internal/IIC2TileEntity.java | 13 - .../api/interfaces/internal/IThaumcraftCompat.java | 43 --- .../api/interfaces/internal/IUETileEntity.java | 6 - .../interfaces/metatileentity/IMetaTileEntity.java | 383 ------------------- .../metatileentity/IMetaTileEntityCable.java | 9 - .../metatileentity/IMetaTileEntityItemPipe.java | 96 ----- .../tileentity/IBasicEnergyContainer.java | 99 ----- .../interfaces/tileentity/IColoredTileEntity.java | 14 - .../api/interfaces/tileentity/ICoverable.java | 35 -- .../api/interfaces/tileentity/IDigitalChest.java | 29 -- .../interfaces/tileentity/IEnergyConductor.java | 40 -- .../interfaces/tileentity/IEnergyConnected.java | 89 ----- .../tileentity/IExperimentalEnergyTileEntity.java | 86 ----- .../api/interfaces/tileentity/IFibreConnected.java | 31 -- .../tileentity/IGearEnergyTileEntity.java | 16 - .../tileentity/IGregTechDeviceInformation.java | 20 - .../interfaces/tileentity/IGregTechTileEntity.java | 124 ------- .../api/interfaces/tileentity/IHasInventory.java | 33 -- .../tileentity/IHasWorldObjectAndCoords.java | 132 ------- .../tileentity/IMachineBlockUpdateable.java | 16 - .../interfaces/tileentity/IMachineProgress.java | 69 ---- .../tileentity/IPipeRenderedTileEntity.java | 9 - .../interfaces/tileentity/IRedstoneEmitter.java | 37 -- .../interfaces/tileentity/IRedstoneReceiver.java | 29 -- .../interfaces/tileentity/IRedstoneTileEntity.java | 17 - .../interfaces/tileentity/ITexturedTileEntity.java | 10 - .../api/interfaces/tileentity/ITurnable.java | 33 -- .../interfaces/tileentity/IUpgradableMachine.java | 42 --- 47 files changed, 2549 deletions(-) delete mode 100644 main/java/gregtech/api/interfaces/IColorModulationContainer.java delete mode 100644 main/java/gregtech/api/interfaces/ICondition.java delete mode 100644 main/java/gregtech/api/interfaces/IDamagableItem.java delete mode 100644 main/java/gregtech/api/interfaces/IDebugableBlock.java delete mode 100644 main/java/gregtech/api/interfaces/IDescribable.java delete mode 100644 main/java/gregtech/api/interfaces/IFoodStat.java delete mode 100644 main/java/gregtech/api/interfaces/IIconContainer.java delete mode 100644 main/java/gregtech/api/interfaces/IItemBehaviour.java delete mode 100644 main/java/gregtech/api/interfaces/IItemContainer.java delete mode 100644 main/java/gregtech/api/interfaces/IOreRecipeRegistrator.java delete mode 100644 main/java/gregtech/api/interfaces/IProjectileItem.java delete mode 100644 main/java/gregtech/api/interfaces/IRedstoneCircuitBlock.java delete mode 100644 main/java/gregtech/api/interfaces/ISubTagContainer.java delete mode 100644 main/java/gregtech/api/interfaces/ITexture.java delete mode 100644 main/java/gregtech/api/interfaces/IToolStats.java delete mode 100644 main/java/gregtech/api/interfaces/internal/IBCTileEntity.java delete mode 100644 main/java/gregtech/api/interfaces/internal/IGT_CraftingRecipe.java delete mode 100644 main/java/gregtech/api/interfaces/internal/IGT_Mod.java delete mode 100644 main/java/gregtech/api/interfaces/internal/IGT_RecipeAdder.java delete mode 100644 main/java/gregtech/api/interfaces/internal/IIC2TileEntity.java delete mode 100644 main/java/gregtech/api/interfaces/internal/IThaumcraftCompat.java delete mode 100644 main/java/gregtech/api/interfaces/internal/IUETileEntity.java delete mode 100644 main/java/gregtech/api/interfaces/metatileentity/IMetaTileEntity.java delete mode 100644 main/java/gregtech/api/interfaces/metatileentity/IMetaTileEntityCable.java delete mode 100644 main/java/gregtech/api/interfaces/metatileentity/IMetaTileEntityItemPipe.java delete mode 100644 main/java/gregtech/api/interfaces/tileentity/IBasicEnergyContainer.java delete mode 100644 main/java/gregtech/api/interfaces/tileentity/IColoredTileEntity.java delete mode 100644 main/java/gregtech/api/interfaces/tileentity/ICoverable.java delete mode 100644 main/java/gregtech/api/interfaces/tileentity/IDigitalChest.java delete mode 100644 main/java/gregtech/api/interfaces/tileentity/IEnergyConductor.java delete mode 100644 main/java/gregtech/api/interfaces/tileentity/IEnergyConnected.java delete mode 100644 main/java/gregtech/api/interfaces/tileentity/IExperimentalEnergyTileEntity.java delete mode 100644 main/java/gregtech/api/interfaces/tileentity/IFibreConnected.java delete mode 100644 main/java/gregtech/api/interfaces/tileentity/IGearEnergyTileEntity.java delete mode 100644 main/java/gregtech/api/interfaces/tileentity/IGregTechDeviceInformation.java delete mode 100644 main/java/gregtech/api/interfaces/tileentity/IGregTechTileEntity.java delete mode 100644 main/java/gregtech/api/interfaces/tileentity/IHasInventory.java delete mode 100644 main/java/gregtech/api/interfaces/tileentity/IHasWorldObjectAndCoords.java delete mode 100644 main/java/gregtech/api/interfaces/tileentity/IMachineBlockUpdateable.java delete mode 100644 main/java/gregtech/api/interfaces/tileentity/IMachineProgress.java delete mode 100644 main/java/gregtech/api/interfaces/tileentity/IPipeRenderedTileEntity.java delete mode 100644 main/java/gregtech/api/interfaces/tileentity/IRedstoneEmitter.java delete mode 100644 main/java/gregtech/api/interfaces/tileentity/IRedstoneReceiver.java delete mode 100644 main/java/gregtech/api/interfaces/tileentity/IRedstoneTileEntity.java delete mode 100644 main/java/gregtech/api/interfaces/tileentity/ITexturedTileEntity.java delete mode 100644 main/java/gregtech/api/interfaces/tileentity/ITurnable.java delete mode 100644 main/java/gregtech/api/interfaces/tileentity/IUpgradableMachine.java (limited to 'main/java/gregtech/api/interfaces') diff --git a/main/java/gregtech/api/interfaces/IColorModulationContainer.java b/main/java/gregtech/api/interfaces/IColorModulationContainer.java deleted file mode 100644 index b1151cf808..0000000000 --- a/main/java/gregtech/api/interfaces/IColorModulationContainer.java +++ /dev/null @@ -1,5 +0,0 @@ -package gregtech.api.interfaces; - -public interface IColorModulationContainer { - public short[] getRGBA(); -} diff --git a/main/java/gregtech/api/interfaces/ICondition.java b/main/java/gregtech/api/interfaces/ICondition.java deleted file mode 100644 index 507315ee91..0000000000 --- a/main/java/gregtech/api/interfaces/ICondition.java +++ /dev/null @@ -1,104 +0,0 @@ -package gregtech.api.interfaces; - -public interface ICondition { - public boolean isTrue(O aObject); - - // Utility Classes for adding relations between Conditions. - - public static class Not implements ICondition { - private final ICondition mCondition; - - public Not(ICondition aCondition) { - mCondition = aCondition; - } - - @Override - public boolean isTrue(O aObject) { - return !mCondition.isTrue(aObject); - } - } - - public static class Or implements ICondition { - private final ICondition[] mConditions; - - public Or(ICondition... aConditions) { - mConditions = aConditions; - } - - @Override - public boolean isTrue(O aObject) { - for (ICondition tCondition : mConditions) if (tCondition.isTrue(aObject)) return true; - return false; - } - } - - public static class Nor implements ICondition { - private final ICondition[] mConditions; - - public Nor(ICondition... aConditions) { - mConditions = aConditions; - } - - @Override - public boolean isTrue(O aObject) { - for (ICondition tCondition : mConditions) if (tCondition.isTrue(aObject)) return false; - return true; - } - } - - public static class And implements ICondition { - private final ICondition[] mConditions; - - public And(ICondition... aConditions) { - mConditions = aConditions; - } - - @Override - public boolean isTrue(O aObject) { - for (ICondition tCondition : mConditions) if (!tCondition.isTrue(aObject)) return false; - return true; - } - } - - public static class Nand implements ICondition { - private final ICondition[] mConditions; - - public Nand(ICondition... aConditions) { - mConditions = aConditions; - } - - @Override - public boolean isTrue(O aObject) { - for (ICondition tCondition : mConditions) if (!tCondition.isTrue(aObject)) return true; - return false; - } - } - - public static class Xor implements ICondition { - private final ICondition mCondition1, mCondition2; - - public Xor(ICondition aCondition1, ICondition aCondition2) { - mCondition1 = aCondition1; - mCondition2 = aCondition2; - } - - @Override - public boolean isTrue(O aObject) { - return mCondition1.isTrue(aObject) != mCondition2.isTrue(aObject); - } - } - - public static class Equal implements ICondition { - private final ICondition mCondition1, mCondition2; - - public Equal(ICondition aCondition1, ICondition aCondition2) { - mCondition1 = aCondition1; - mCondition2 = aCondition2; - } - - @Override - public boolean isTrue(O aObject) { - return mCondition1.isTrue(aObject) == mCondition2.isTrue(aObject); - } - } -} \ No newline at end of file diff --git a/main/java/gregtech/api/interfaces/IDamagableItem.java b/main/java/gregtech/api/interfaces/IDamagableItem.java deleted file mode 100644 index f47c65f545..0000000000 --- a/main/java/gregtech/api/interfaces/IDamagableItem.java +++ /dev/null @@ -1,7 +0,0 @@ -package gregtech.api.interfaces; - -import net.minecraft.item.ItemStack; - -public interface IDamagableItem { - public boolean doDamageToItem(ItemStack aStack, int aVanillaDamage); -} \ No newline at end of file diff --git a/main/java/gregtech/api/interfaces/IDebugableBlock.java b/main/java/gregtech/api/interfaces/IDebugableBlock.java deleted file mode 100644 index ce95982018..0000000000 --- a/main/java/gregtech/api/interfaces/IDebugableBlock.java +++ /dev/null @@ -1,26 +0,0 @@ -package gregtech.api.interfaces; - -import java.util.ArrayList; - -import net.minecraft.entity.player.EntityPlayer; - -/** - * You are allowed to include this File in your Download, as i will not change it. - */ -public interface IDebugableBlock { - /** - * Returns a Debug Message, for a generic DebugItem - * Blocks have to implement this interface NOT TileEntities! - * @param aPlayer the Player, who rightclicked with his Debug Item - * @param aX Block-Coordinate - * @param aY Block-Coordinate - * @param aZ Block-Coordinate - * @param aLogLevel the Log Level of the Debug Item. - * 0 = Obvious - * 1 = Visible for the regular Scanner - * 2 = Only visible to more advanced Scanners - * 3 = Debug ONLY - * @return a String-Array containing the DebugInfo, every Index is a separate line (0 = first Line) - */ - public ArrayList getDebugInfo(EntityPlayer aPlayer, int aX, int aY, int aZ, int aLogLevel); -} \ No newline at end of file diff --git a/main/java/gregtech/api/interfaces/IDescribable.java b/main/java/gregtech/api/interfaces/IDescribable.java deleted file mode 100644 index 7ccf1a6627..0000000000 --- a/main/java/gregtech/api/interfaces/IDescribable.java +++ /dev/null @@ -1,11 +0,0 @@ -package gregtech.api.interfaces; - -/** - * To get simple things like a ToolTip Description - */ -public interface IDescribable { - /** - * The Tooltip Text - */ - public String[] getDescription(); -} diff --git a/main/java/gregtech/api/interfaces/IFoodStat.java b/main/java/gregtech/api/interfaces/IFoodStat.java deleted file mode 100644 index cb01e102c6..0000000000 --- a/main/java/gregtech/api/interfaces/IFoodStat.java +++ /dev/null @@ -1,21 +0,0 @@ -package gregtech.api.interfaces; - -import gregtech.api.items.GT_MetaBase_Item; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.EnumAction; -import net.minecraft.item.ItemStack; - -public interface IFoodStat { - /** Warning the "aPlayer" Parameter may be null! */ - public int getFoodLevel(GT_MetaBase_Item aItem, ItemStack aStack, EntityPlayer aPlayer); - /** Warning the "aPlayer" Parameter may be null! */ - public float getSaturation(GT_MetaBase_Item aItem, ItemStack aStack, EntityPlayer aPlayer); - /** Warning the "aPlayer" Parameter may be null! */ - public boolean alwaysEdible(GT_MetaBase_Item aItem, ItemStack aStack, EntityPlayer aPlayer); - /** Warning the "aPlayer" Parameter may be null! */ - public boolean isRotten(GT_MetaBase_Item aItem, ItemStack aStack, EntityPlayer aPlayer); - /** Warning the "aPlayer" Parameter may be null! */ - public EnumAction getFoodAction(GT_MetaBase_Item aItem, ItemStack aStack); - - public void onEaten(GT_MetaBase_Item aItem, ItemStack aStack, EntityPlayer aPlayer); -} \ No newline at end of file diff --git a/main/java/gregtech/api/interfaces/IIconContainer.java b/main/java/gregtech/api/interfaces/IIconContainer.java deleted file mode 100644 index dc9a845f06..0000000000 --- a/main/java/gregtech/api/interfaces/IIconContainer.java +++ /dev/null @@ -1,21 +0,0 @@ -package gregtech.api.interfaces; - -import net.minecraft.util.IIcon; -import net.minecraft.util.ResourceLocation; - -public interface IIconContainer { - /** - * @return A regular Icon. - */ - public IIcon getIcon(); - - /** - * @return Icon of the Overlay (or null if there is no Icon) - */ - public IIcon getOverlayIcon(); - - /** - * @return the Default Texture File for this Icon. - */ - public ResourceLocation getTextureFile(); -} diff --git a/main/java/gregtech/api/interfaces/IItemBehaviour.java b/main/java/gregtech/api/interfaces/IItemBehaviour.java deleted file mode 100644 index 1f28b6a696..0000000000 --- a/main/java/gregtech/api/interfaces/IItemBehaviour.java +++ /dev/null @@ -1,30 +0,0 @@ -package gregtech.api.interfaces; - -import gregtech.api.enums.SubTag; -import gregtech.api.items.GT_MetaBase_Item; - -import java.util.List; - -import net.minecraft.dispenser.IBlockSource; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.entity.projectile.EntityArrow; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.world.World; - -public interface IItemBehaviour { - public boolean onLeftClickEntity(E aItem, ItemStack aStack, EntityPlayer aPlayer, Entity aEntity); - public boolean onItemUse(E aItem, ItemStack aStack, EntityPlayer aPlayer, World aWorld, int aX, int aY, int aZ, int aSide, float hitX, float hitY, float hitZ); - public boolean onItemUseFirst(E aItem, ItemStack aStack, EntityPlayer aPlayer, World aWorld, int aX, int aY, int aZ, int aSide, float hitX, float hitY, float hitZ); - public ItemStack onItemRightClick(E aItem, ItemStack aStack, World aWorld, EntityPlayer aPlayer); - public List getAdditionalToolTips(E aItem, List aList, ItemStack aStack); - public void onUpdate(E aItem, ItemStack aStack, World aWorld, Entity aPlayer, int aTimer, boolean aIsInHand); - public boolean isItemStackUsable(E aItem, ItemStack aStack); - public boolean canDispense(E aItem, IBlockSource aSource, ItemStack aStack); - public ItemStack onDispense(E aItem, IBlockSource aSource, ItemStack aStack); - public boolean hasProjectile(GT_MetaBase_Item aItem, SubTag aProjectileType, ItemStack aStack); - public EntityArrow getProjectile(E aItem, SubTag aProjectileType, ItemStack aStack, World aWorld, double aX, double aY, double aZ); - public EntityArrow getProjectile(E aItem, SubTag aProjectileType, ItemStack aStack, World aWorld, EntityLivingBase aEntity, float aSpeed); -} \ No newline at end of file diff --git a/main/java/gregtech/api/interfaces/IItemContainer.java b/main/java/gregtech/api/interfaces/IItemContainer.java deleted file mode 100644 index e61553ce7d..0000000000 --- a/main/java/gregtech/api/interfaces/IItemContainer.java +++ /dev/null @@ -1,24 +0,0 @@ -package gregtech.api.interfaces; - -import net.minecraft.block.Block; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; - -public interface IItemContainer { - public Item getItem(); - public Block getBlock(); - public boolean isStackEqual(Object aStack); - public boolean isStackEqual(Object aStack, boolean aWildcard, boolean aIgnoreNBT); - public ItemStack get(long aAmount, Object... aReplacements); - public ItemStack getWildcard(long aAmount, Object... aReplacements); - public ItemStack getUndamaged(long aAmount, Object... aReplacements); - public ItemStack getAlmostBroken(long aAmount, Object... aReplacements); - public ItemStack getWithDamage(long aAmount, long aMetaValue, Object... aReplacements); - public IItemContainer set(Item aItem); - public IItemContainer set(ItemStack aStack); - public IItemContainer registerOre(Object... aOreNames); - public IItemContainer registerWildcardAsOre(Object... aOreNames); - public ItemStack getWithCharge(long aAmount, int aEnergy, Object... aReplacements); - public ItemStack getWithName(long aAmount, String aDisplayName, Object... aReplacements); - public boolean hasBeenSet(); -} \ No newline at end of file diff --git a/main/java/gregtech/api/interfaces/IOreRecipeRegistrator.java b/main/java/gregtech/api/interfaces/IOreRecipeRegistrator.java deleted file mode 100644 index 4535c4d6c8..0000000000 --- a/main/java/gregtech/api/interfaces/IOreRecipeRegistrator.java +++ /dev/null @@ -1,15 +0,0 @@ -package gregtech.api.interfaces; - -import gregtech.api.enums.Materials; -import gregtech.api.enums.OrePrefixes; -import net.minecraft.item.ItemStack; - -public interface IOreRecipeRegistrator { - /** - * Contains a Code Fragment, used in the OrePrefix to register Recipes. Better than using a switch/case, like I did before. - * @param aPrefix always != null - * @param aMaterial always != null, and can be == _NULL if the Prefix is Self Referencing or not Material based! - * @param aStack always != null - */ - public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDictName, String aModName, ItemStack aStack); -} \ No newline at end of file diff --git a/main/java/gregtech/api/interfaces/IProjectileItem.java b/main/java/gregtech/api/interfaces/IProjectileItem.java deleted file mode 100644 index 0b06a65373..0000000000 --- a/main/java/gregtech/api/interfaces/IProjectileItem.java +++ /dev/null @@ -1,16 +0,0 @@ -package gregtech.api.interfaces; - -import gregtech.api.enums.SubTag; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.projectile.EntityArrow; -import net.minecraft.item.ItemStack; -import net.minecraft.world.World; - -public interface IProjectileItem { - /** @return if this Item has an Arrow Entity */ - public boolean hasProjectile(SubTag aProjectileType, ItemStack aStack); - /** @return an Arrow Entity to be spawned. If null then this is not an Arrow. Note: Other Projectiles still extend EntityArrow */ - public EntityArrow getProjectile(SubTag aProjectileType, ItemStack aStack, World aWorld, double aX, double aY, double aZ); - /** @return an Arrow Entity to be spawned. If null then this is not an Arrow. Note: Other Projectiles still extend EntityArrow */ - public EntityArrow getProjectile(SubTag aProjectileType, ItemStack aStack, World aWorld, EntityLivingBase aEntity, float aSpeed); -} \ No newline at end of file diff --git a/main/java/gregtech/api/interfaces/IRedstoneCircuitBlock.java b/main/java/gregtech/api/interfaces/IRedstoneCircuitBlock.java deleted file mode 100644 index 13c63b7555..0000000000 --- a/main/java/gregtech/api/interfaces/IRedstoneCircuitBlock.java +++ /dev/null @@ -1,66 +0,0 @@ -package gregtech.api.interfaces; - -import gregtech.api.interfaces.tileentity.ICoverable; -import gregtech.api.util.GT_CoverBehavior; -import net.minecraft.block.Block; -import net.minecraft.tileentity.TileEntity; - -/** - * Implemented by the MetaTileEntity of the Redstone Circuit Block - */ -public interface IRedstoneCircuitBlock { - /** - * The Output Direction the Circuit Block is Facing - */ - public byte getOutputFacing(); - - /** - * sets Output Redstone State at Side - */ - public boolean setRedstone(byte aStrength, byte aSide); - - /** - * returns Output Redstone State at Side - * Note that setRedstone checks if there is a Difference between the old and the new Setting before consuming any Energy - */ - public byte getOutputRedstone(byte aSide); - - /** - * returns Input Redstone Signal at Side - */ - public byte getInputRedstone(byte aSide); - - /** - * If this Side is Covered up and therefor not doing any Redstone - */ - public GT_CoverBehavior getCover(byte aSide); - - public int getCoverID(byte aSide); - - public int getCoverVariable(byte aSide); - - /** - * returns whatever Block-ID is adjacent to the Redstone Circuit Block - */ - public Block getBlockAtSide(byte aSide); - - /** - * returns whatever Meta-Value is adjacent to the Redstone Circuit Block - */ - public byte getMetaIDAtSide(byte aSide); - - /** - * returns whatever TileEntity is adjacent to the Redstone Circuit Block - */ - public TileEntity getTileEntityAtSide(byte aSide); - - /** - * returns whatever TileEntity is used by the Redstone Circuit Block - */ - public ICoverable getOwnTileEntity(); - - /** - * returns worldObj.rand.nextInt(aRange) - */ - public int getRandom(int aRange); -} diff --git a/main/java/gregtech/api/interfaces/ISubTagContainer.java b/main/java/gregtech/api/interfaces/ISubTagContainer.java deleted file mode 100644 index ae7d59ec1d..0000000000 --- a/main/java/gregtech/api/interfaces/ISubTagContainer.java +++ /dev/null @@ -1,20 +0,0 @@ -package gregtech.api.interfaces; - -import gregtech.api.enums.SubTag; - -public interface ISubTagContainer { - /** - * @return if the Tag is inside the List. - */ - public boolean contains(SubTag aTag); - - /** - * @return The ISubTagContainer you called this Function on, for convenience. - */ - public ISubTagContainer add(SubTag... aTags); - - /** - * @return if the Tag was there before it has been removed. - */ - public boolean remove(SubTag aTag); -} \ No newline at end of file diff --git a/main/java/gregtech/api/interfaces/ITexture.java b/main/java/gregtech/api/interfaces/ITexture.java deleted file mode 100644 index 534a738c45..0000000000 --- a/main/java/gregtech/api/interfaces/ITexture.java +++ /dev/null @@ -1,15 +0,0 @@ -package gregtech.api.interfaces; - -import net.minecraft.block.Block; -import net.minecraft.client.renderer.RenderBlocks; - -public interface ITexture { - public void renderXPos(RenderBlocks aRenderer, Block aBlock, int aX, int aY, int aZ); - public void renderXNeg(RenderBlocks aRenderer, Block aBlock, int aX, int aY, int aZ); - public void renderYPos(RenderBlocks aRenderer, Block aBlock, int aX, int aY, int aZ); - public void renderYNeg(RenderBlocks aRenderer, Block aBlock, int aX, int aY, int aZ); - public void renderZPos(RenderBlocks aRenderer, Block aBlock, int aX, int aY, int aZ); - public void renderZNeg(RenderBlocks aRenderer, Block aBlock, int aX, int aY, int aZ); - - public boolean isValidTexture(); -} \ No newline at end of file diff --git a/main/java/gregtech/api/interfaces/IToolStats.java b/main/java/gregtech/api/interfaces/IToolStats.java deleted file mode 100644 index 9f894bfac8..0000000000 --- a/main/java/gregtech/api/interfaces/IToolStats.java +++ /dev/null @@ -1,147 +0,0 @@ -package gregtech.api.interfaces; - -import gregtech.api.items.GT_MetaGenerated_Tool; - -import java.util.List; - -import net.minecraft.block.Block; -import net.minecraft.enchantment.Enchantment; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.ItemStack; -import net.minecraft.util.DamageSource; -import net.minecraftforge.event.world.BlockEvent; - -/** - * The Stats for GT Tools. Not including any Material Modifiers. - * - * And this is supposed to not have any ItemStack Parameters as these are generic Stats. - */ -public interface IToolStats { - /** - * Called when aPlayer crafts this Tool - */ - public void onToolCrafted(ItemStack aStack, EntityPlayer aPlayer); - - /** - * Called when this gets added to a Tool Item - */ - public void onStatsAddedToTool(GT_MetaGenerated_Tool aItem, int aID); - - /** - * @return Damage the Tool receives when breaking a Block. 100 is one Damage Point (or 100 EU). - */ - public int getToolDamagePerBlockBreak(); - - /** - * @return Damage the Tool receives when converting the drops of a Block. 100 is one Damage Point (or 100 EU). - */ - public int getToolDamagePerDropConversion(); - - /** - * @return Damage the Tool receives when being used as Container Item. 100 is one use, however it is usually 8 times more than normal. - */ - public int getToolDamagePerContainerCraft(); - - /** - * @return Damage the Tool receives when being used as Weapon, 200 is the normal Value, 100 for actual Weapons. - */ - public int getToolDamagePerEntityAttack(); - - /** - * @return Basic Quality of the Tool, 0 is normal. If increased, it will increase the general quality of all Tools of this Type. Decreasing is also possible. - */ - public int getBaseQuality(); - - /** - * @return The Damage Bonus for this Type of Tool against Mobs. 1.0F is normal punch. - */ - public float getBaseDamage(); - - /** - * @return This gets the Hurt Resistance time for Entities getting hit. (always does 1 as minimum) - */ - public int getHurtResistanceTime(int aOriginalHurtResistance, Entity aEntity); - - /** - * @return This is a multiplier for the Tool Speed. 1.0F = no special Speed. - */ - public float getSpeedMultiplier(); - - /** - * @return This is a multiplier for the Tool Speed. 1.0F = no special Durability. - */ - public float getMaxDurabilityMultiplier(); - - public DamageSource getDamageSource(EntityLivingBase aPlayer, Entity aEntity); - - public String getMiningSound(); - public String getCraftingSound(); - public String getEntityHitSound(); - public String getBreakingSound(); - - public Enchantment[] getEnchantments(ItemStack aStack); - public int[] getEnchantmentLevels(ItemStack aStack); - - /** - * @return If this Tool can be used for blocking Damage like a Sword. - */ - public boolean canBlock(); - - /** - * @return If this Tool can be used as an RC Crowbar. - */ - public boolean isCrowbar(); - - /** - * @return If this Tool can be used as an RC Crowbar. - */ - public boolean isGrafter(); - - /** - * @return If this Tool can be used as Weapon i.e. if that is the main purpose. - */ - public boolean isWeapon(); - - /** - * @return If this Tool is a Ranged Weapon. Return false at isWeapon unless you have a Blade attached to your Bow/Gun or something - */ - public boolean isRangedWeapon(); - - /** - * @return If this Tool can be used as Weapon i.e. if that is the main purpose. - */ - public boolean isMiningTool(); - - /** - * aBlock.getHarvestTool(aMetaData) can return the following Values for example. - * "axe", "pickaxe", "sword", "shovel", "hoe", "grafter", "saw", "wrench", "crowbar", "file", "hammer", "plow", "plunger", "scoop", "screwdriver", "sense", "scythe", "softhammer", "cutter", "plasmatorch" - * @return If this is a minable Block. Tool Quality checks (like Diamond Tier or something) are separate from this check. - */ - public boolean isMinableBlock(Block aBlock, byte aMetaData); - - /** - * This lets you modify the Drop List, when this type of Tool has been used. - * @return the Amount of modified Items. - */ - public int convertBlockDrops(List aDrops, ItemStack aStack, EntityPlayer aPlayer, Block aBlock, int aX, int aY, int aZ, byte aMetaData, int aFortune, boolean aSilkTouch, BlockEvent.HarvestDropsEvent aEvent); - - /** - * @return Returns a broken Version of the Item. - */ - public ItemStack getBrokenItem(ItemStack aStack); - - /** - * @return the Damage actually done to the Mob. - */ - public float getNormalDamageAgainstEntity(float aOriginalDamage, Entity aEntity, ItemStack aStack, EntityPlayer aPlayer); - - /** - * @return the Damage actually done to the Mob. - */ - public float getMagicDamageAgainstEntity(float aOriginalDamage, Entity aEntity, ItemStack aStack, EntityPlayer aPlayer); - - public IIconContainer getIcon(boolean aIsToolHead, ItemStack aStack); - public short[] getRGBa(boolean aIsToolHead, ItemStack aStack); -} \ No newline at end of file diff --git a/main/java/gregtech/api/interfaces/internal/IBCTileEntity.java b/main/java/gregtech/api/interfaces/internal/IBCTileEntity.java deleted file mode 100644 index 3d471731ff..0000000000 --- a/main/java/gregtech/api/interfaces/internal/IBCTileEntity.java +++ /dev/null @@ -1,8 +0,0 @@ -package gregtech.api.interfaces.internal; - -/** - * A simple compound Interface for generic BuildCraft Code. - */ -public interface IBCTileEntity /*extends IPowerReceptor*/ { - // -} \ No newline at end of file diff --git a/main/java/gregtech/api/interfaces/internal/IGT_CraftingRecipe.java b/main/java/gregtech/api/interfaces/internal/IGT_CraftingRecipe.java deleted file mode 100644 index a886cf67ac..0000000000 --- a/main/java/gregtech/api/interfaces/internal/IGT_CraftingRecipe.java +++ /dev/null @@ -1,7 +0,0 @@ -package gregtech.api.interfaces.internal; - -import net.minecraft.item.crafting.IRecipe; - -public interface IGT_CraftingRecipe extends IRecipe { - public boolean isRemovable(); -} diff --git a/main/java/gregtech/api/interfaces/internal/IGT_Mod.java b/main/java/gregtech/api/interfaces/internal/IGT_Mod.java deleted file mode 100644 index f64d120ec8..0000000000 --- a/main/java/gregtech/api/interfaces/internal/IGT_Mod.java +++ /dev/null @@ -1,34 +0,0 @@ -package gregtech.api.interfaces.internal; - -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.ItemStack; -import net.minecraft.world.World; - -/** - * Interface used by the Mods Main Class to reference to internals. - * - * Don't even think about including this File in your Mod. - */ -public interface IGT_Mod { - /** This means that Server specific Basefiles are definitely existing! Not if the World is actually server side or not! */ - public boolean isServerSide(); - /** This means that Client specific Basefiles are definitely existing! Not if the World is actually client side or not! */ - public boolean isClientSide(); - /** This means that Bukkit specific Basefiles are definitely existing! Not if the World is actually bukkit server or not! */ - public boolean isBukkitSide(); - /** works only ClientSide otherwise returns null */ - public EntityPlayer getThePlayer(); - - //---------- Internal Usage Only ---------- - - /** - * works only ClientSide otherwise returns 0 - * @return the Index of the added Armor - */ - public int addArmor(String aArmorPrefix); - - /** - * Plays the Sonictron Sound for the ItemStack on the Client Side - */ - public void doSonictronSound(ItemStack aStack, World aWorld, double aX, double aY, double aZ); -} \ No newline at end of file diff --git a/main/java/gregtech/api/interfaces/internal/IGT_RecipeAdder.java b/main/java/gregtech/api/interfaces/internal/IGT_RecipeAdder.java deleted file mode 100644 index ce72d93374..0000000000 --- a/main/java/gregtech/api/interfaces/internal/IGT_RecipeAdder.java +++ /dev/null @@ -1,412 +0,0 @@ -package gregtech.api.interfaces.internal; - -import net.minecraft.item.ItemStack; -import net.minecraftforge.fluids.Fluid; -import net.minecraftforge.fluids.FluidStack; - -public interface IGT_RecipeAdder { - /** - * Adds a FusionreactorRecipe - * Does not work anymore! - */ - @Deprecated - public boolean addFusionReactorRecipe(ItemStack aInput1, ItemStack aInput2, ItemStack aOutput1, int aFusionDurationInTicks, int aFusionEnergyPerTick, int aEnergyNeededForStartingFusion); - - /** - * Adds a FusionreactorRecipe - * @param aInput1 = first Input (not null, and respects StackSize) - * @param aInput2 = second Input (not null, and respects StackSize) - * @param aOutput = Output of the Fusion (can be null, and respects StackSize) - * @param aFusionDurationInTicks = How many ticks the Fusion lasts (must be > 0) - * @param aFusionEnergyPerTick = The EU generated per Tick (can even be negative!) - * @param aEnergyNeededForStartingFusion = EU needed for heating the Reactor up (must be >= 0) - * @return true if the Recipe got added, otherwise false. - */ - public boolean addFusionReactorRecipe(FluidStack aInput1, FluidStack aInput2, FluidStack aOutput1, int aFusionDurationInTicks, int aFusionEnergyPerTick, int aEnergyNeededForStartingFusion); - - /** - * Adds a Centrifuge Recipe - * @param aInput1 must be != null - * @param aCellInput this is for the needed Cells, > 0 for Tincellcount, < 0 for negative Fuelcancount, == 0 for nothing - * @param aOutput1 must be != null - * @param aOutput2 can be null - * @param aOutput3 can be null - * @param aOutput4 can be null - * @param aDuration must be > 0 - */ - public boolean addCentrifugeRecipe(ItemStack aInput1, int aInput2, ItemStack aOutput1, ItemStack aOutput2, ItemStack aOutput3, ItemStack aOutput4, ItemStack aOutput5, ItemStack aOutput6, int aDuration); - - /** - * Adds a Centrifuge Recipe - * @param aInput1 must be != null - * @param aOutput1 must be != null - * @param aOutput2 can be null - * @param aOutput3 can be null - * @param aOutput4 can be null - * @param aDuration must be > 0 - */ - public boolean addCentrifugeRecipe(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput1, ItemStack aOutput2, ItemStack aOutput3, ItemStack aOutput4, ItemStack aOutput5, ItemStack aOutput6, int[] aChances, int aDuration, int aEUt); - - /** - * Adds a Electrolyzer Recipe - * @param aInput1 must be != null - * @param aCellInput this is for the needed Cells, > 0 for Tincellcount, < 0 for negative Fuelcancount, == 0 for nothing - * @param aOutput1 must be != null - * @param aOutput2 can be null - * @param aOutput3 can be null - * @param aOutput4 can be null - * @param aDuration must be > 0 - * @param aEUt should be > 0 - */ - public boolean addElectrolyzerRecipe(ItemStack aInput1, int aInput2, ItemStack aOutput1, ItemStack aOutput2, ItemStack aOutput3, ItemStack aOutput4, ItemStack aOutput5, ItemStack aOutput6, int aDuration, int aEUt); - - /** - * Adds a Electrolyzer Recipe - * @param aInput1 must be != null - * @param aCellInput this is for the needed Cells, > 0 for Tincellcount, < 0 for negative Fuelcancount, == 0 for nothing - * @param aOutput1 must be != null - * @param aOutput2 can be null - * @param aOutput3 can be null - * @param aOutput4 can be null - * @param aDuration must be > 0 - * @param aEUt should be > 0 - */ - public boolean addElectrolyzerRecipe(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput1, ItemStack aOutput2, ItemStack aOutput3, ItemStack aOutput4, ItemStack aOutput5, ItemStack aOutput6, int[] aChances, int aDuration, int aEUt); - - /** - * Adds a Chemical Recipe - * @param aInput1 must be != null - * @param aInput2 must be != null - * @param aOutput1 must be != null - * @param aDuration must be > 0 - */ - public boolean addChemicalRecipe(ItemStack aInput1, ItemStack aInput2, ItemStack aOutput, int aDuration); - - /** - * Adds a Chemical Recipe - * @param aInput1 must be != null - * @param aInput2 must be != null - * @param aOutput1 must be != null - * @param aDuration must be > 0 - */ - public boolean addChemicalRecipe(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput, int aDuration); - - /** - * Adds a Blast Furnace Recipe - * @param aInput1 must be != null - * @param aInput2 can be null - * @param aOutput1 must be != null - * @param aOutput2 can be null - * @param aDuration must be > 0 - * @param aEUt should be > 0 - * @param aLevel should be > 0 is the minimum Heat Level needed for this Recipe - */ - @Deprecated - public boolean addBlastRecipe(ItemStack aInput1, ItemStack aInput2, ItemStack aOutput1, ItemStack aOutput2, int aDuration, int aEUt, int aLevel); - - /** - * Adds a Blast Furnace Recipe - * @param aInput1 must be != null - * @param aInput2 can be null - * @param aOutput1 must be != null - * @param aOutput2 can be null - * @param aDuration must be > 0 - * @param aEUt should be > 0 - * @param aLevel should be > 0 is the minimum Heat Level needed for this Recipe - */ - public boolean addBlastRecipe(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput1, ItemStack aOutput2, int aDuration, int aEUt, int aLevel); - - /** - * Adds a Canning Machine Recipe - * @param aInput1 must be != null - * @param aOutput1 must be != null - * @param aDuration must be > 0, 100 ticks is standard. - * @param aEUt should be > 0, 1 EU/t is standard. - */ - public boolean addCannerRecipe(ItemStack aInput1, ItemStack aInput2, ItemStack aOutput1, ItemStack aOutput2, int aDuration, int aEUt); - - /** - * Adds an Alloy Smelter Recipe - * @param aInput1 must be != null - * @param aInput2 can be null - * @param aOutput1 must be != null - * @param aOutput2 can be null - * @param aDuration must be > 0 - * @param aEUt should be > 0 - */ - public boolean addAlloySmelterRecipe(ItemStack aInput1, ItemStack aInput2, ItemStack aOutput1, int aDuration, int aEUt); - - /** - * Adds a CNC-Machine Recipe - * @param aInput1 must be != null - * @param aOutput1 must be != null - * @param aDuration must be > 0 - * @param aEUt should be > 0 - */ - public boolean addCNCRecipe(ItemStack aInput1, ItemStack aOutput1, int aDuration, int aEUt); - - /** - * Adds a Circuit Assembler Recipe - * @param aInput1 must be != null - * @param aOutput1 must be != null - * @param aDuration must be > 0 - * @param aEUt should be > 0 - */ - public boolean addAssemblerRecipe(ItemStack aInput1, ItemStack aInput2, ItemStack aOutput1, int aDuration, int aEUt); - - /** - * Adds a Circuit Assembler Recipe - * @param aInput1 must be != null - * @param aOutput1 must be != null - * @param aDuration must be > 0 - * @param aEUt should be > 0 - */ - public boolean addAssemblerRecipe(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, ItemStack aOutput1, int aDuration, int aEUt); - - /** - * Adds a Forge Hammer Recipe - * @param aInput1 must be != null - * @param aOutput1 must be != null - * @param aDuration must be > 0 - * @param aEUt should be > 0 - */ - public boolean addForgeHammerRecipe(ItemStack aInput1, ItemStack aOutput1, int aDuration, int aEUt); - - /** - * Adds a Wiremill Recipe - * @param aInput1 must be != null - * @param aOutput1 must be != null - * @param aDuration must be > 0 - * @param aEUt should be > 0 - */ - public boolean addWiremillRecipe(ItemStack aInput, ItemStack aOutput, int aDuration, int aEUt); - - /** - * Adds a Polariser Recipe - * @param aInput1 must be != null - * @param aOutput1 must be != null - * @param aDuration must be > 0 - * @param aEUt should be > 0 - */ - public boolean addPolarizerRecipe(ItemStack aInput, ItemStack aOutput, int aDuration, int aEUt); - - /** - * Adds a Plate Bending Machine Recipe - * @param aInput1 must be != null - * @param aOutput1 must be != null - * @param aDuration must be > 0 - * @param aEUt should be > 0 - */ - public boolean addBenderRecipe(ItemStack aInput, ItemStack aOutput, int aDuration, int aEUt); - - /** - * Adds a Extruder Machine Recipe - * @param aInput1 must be != null - * @param aShape must be != null, Set the stackSize to 0 if you don't want to let it consume this Item. - * @param aOutput1 must be != null - * @param aDuration must be > 0 - * @param aEUt should be > 0 - */ - public boolean addExtruderRecipe(ItemStack aInput, ItemStack aShape, ItemStack aOutput, int aDuration, int aEUt); - - /** - * Adds a Slicer Machine Recipe - * @param aInput1 must be != null - * @param aShape must be != null, Set the stackSize to 0 if you don't want to let it consume this Item. - * @param aOutput1 must be != null - * @param aDuration must be > 0 - * @param aEUt should be > 0 - */ - public boolean addSlicerRecipe(ItemStack aInput, ItemStack aShape, ItemStack aOutput, int aDuration, int aEUt); - - /** - * Adds an Implosion Compressor Recipe - * @param aInput1 must be != null - * @param aInput2 amount of ITNT, should be > 0 - * @param aOutput1 must be != null - * @param aOutput2 can be null - */ - public boolean addImplosionRecipe(ItemStack aInput1, int aInput2, ItemStack aOutput1, ItemStack aOutput2); - - /** - * Adds a Grinder Recipe - * @param aInput1 must be != null - * @param aInput2 id for the Cell needed for this Recipe - * @param aOutput1 must be != null - * @param aOutput2 can be null - * @param aOutput3 can be null - * @param aOutput4 can be null - */ - public boolean addGrinderRecipe(ItemStack aInput1, ItemStack aInput2, ItemStack aOutput1, ItemStack aOutput2, ItemStack aOutput3, ItemStack aOutput4); - - /** - * Adds a Distillation Tower Recipe - * @param aInput1 must be != null - * @param aOutputs must be != null 1-5 Fluids - * @param aOutput2 can be null - */ - public boolean addDistillationTowerRecipe(FluidStack aInput, FluidStack[] aOutputs, ItemStack aOutput2, int aDuration, int aEUt); - - - public boolean addSimpleArcFurnaceRecipe(ItemStack aInput, FluidStack aFluidInput, ItemStack[] aOutputs, int[] aChances, int aDuration, int aEUt); - - public boolean addPlasmaArcFurnaceRecipe(ItemStack aInput, FluidStack aFluidInput, ItemStack[] aOutputs, int[] aChances, int aDuration, int aEUt); - - public boolean addPlasmaArcFurnaceRecipe(ItemStack aInput, FluidStack aFluidInput, ItemStack[] aOutputs,FluidStack aFluidPutput, int[] aChances, int aDuration, int aEUt); - - - - - - - /** - * Adds a Distillation Tower Recipe - */ - public boolean addDistillationRecipe(ItemStack aInput1, int aInput2, ItemStack aOutput1, ItemStack aOutput2, ItemStack aOutput3, ItemStack aOutput4, int aDuration, int aEUt); - - /** - * Adds a Lathe Machine Recipe - */ - public boolean addLatheRecipe(ItemStack aInput1, ItemStack aOutput1, ItemStack aOutput2, int aDuration, int aEUt); - - /** - * Adds a Cutter Recipe - */ - public boolean addCutterRecipe(ItemStack aInput, FluidStack aLubricant, ItemStack aOutput1, ItemStack aOutput2, int aDuration, int aEUt); - - /** - * Adds Cutter Recipes with default Lubricants - */ - public boolean addCutterRecipe(ItemStack aInput, ItemStack aOutput1, ItemStack aOutput2, int aDuration, int aEUt); - - /** - * Adds a Boxing Recipe - */ - public boolean addBoxingRecipe(ItemStack aContainedItem, ItemStack aEmptyBox, ItemStack aFullBox, int aDuration, int aEUt); - - /** - * Adds an Unboxing Recipe - */ - public boolean addUnboxingRecipe(ItemStack aFullBox, ItemStack aContainedItem, ItemStack aEmptyBox, int aDuration, int aEUt); - - /** - * Adds a Vacuum Freezer Recipe - * @param aInput1 must be != null - * @param aOutput1 must be != null - * @param aDuration must be > 0 - */ - public boolean addVacuumFreezerRecipe(ItemStack aInput1, ItemStack aOutput1, int aDuration); - - /** - * Adds a Fuel for My Generators - * @param aInput1 must be != null - * @param aOutput1 can be null - * @param aEU EU per MilliBucket. If no Liquid Form of this Container is available, then it will give you EU*1000 per Item. - * @param aType 0 = Diesel; 1 = Gas Turbine; 2 = Thermal; 3 = Dense Fluid; 4 = Plasma; 5 = Magic; And if something is unclear or missing, then look at the GT_Recipe-Class - */ - public boolean addFuel(ItemStack aInput1, ItemStack aOutput1, int aEU, int aType); - - /** - * Adds an Amplifier Recipe for the Amplifabricator - */ - public boolean addAmplifier(ItemStack aAmplifierItem, int aDuration, int aAmplifierAmountOutputted); - - /** - * Adds a Recipe for the Brewing Machine (intentionally limited to Fluid IDs) - */ - public boolean addBrewingRecipe(ItemStack aIngredient, Fluid aInput, Fluid aOutput, boolean aHidden); - - /** - * Adds a Recipe for the Fermenter - */ - public boolean addFermentingRecipe(FluidStack aInput, FluidStack aOutput, int aDuration, boolean aHidden); - - /** - * Adds a Recipe for the Fluid Heater - */ - public boolean addFluidHeaterRecipe(ItemStack aCircuit, FluidStack aInput, FluidStack aOutput, int aDuration, int aEUt); - - /** - * Adds a Recipe for the Distillery - */ - public boolean addDistilleryRecipe(ItemStack aCircuit, FluidStack aInput, FluidStack aOutput, int aDuration, int aEUt, boolean aHidden); - - /** - * Adds a Recipe for the Fluid Solidifier - */ - public boolean addFluidSolidifierRecipe(ItemStack aMold, FluidStack aInput, ItemStack aOutput, int aDuration, int aEUt); - - /** - * Adds a Recipe for Fluid Smelting - */ - public boolean addFluidSmelterRecipe(ItemStack aInput, ItemStack aRemains, FluidStack aOutput, int aChance, int aDuration, int aEUt); - - /** - * Adds a Recipe for Fluid Extraction - */ - public boolean addFluidExtractionRecipe(ItemStack aInput, ItemStack aRemains, FluidStack aOutput, int aChance, int aDuration, int aEUt); - - /** - * Adds a Recipe for the Fluid Canner - */ - public boolean addFluidCannerRecipe(ItemStack aInput, ItemStack aOutput, FluidStack aFluidInput, FluidStack aFluidOutput); - - /** - * Adds a Recipe for the Chemical Bath - */ - public boolean addChemicalBathRecipe(ItemStack aInput, FluidStack aBathingFluid, ItemStack aOutput1, ItemStack aOutput2, ItemStack aOutput3, int[] aChances, int aDuration, int aEUt); - - /** - * Adds a Recipe for the Electromagnetic Separator - */ - public boolean addElectromagneticSeparatorRecipe(ItemStack aInput, ItemStack aOutput1, ItemStack aOutput2, ItemStack aOutput3, int[] aChances, int aDuration, int aEUt); - - /** - * Adds a Recipe for the Printer - */ - public boolean addPrinterRecipe(ItemStack aInput, FluidStack aFluid, ItemStack aSpecialSlot, ItemStack aOutput, int aDuration, int aEUt); - - /** - * Adds a Recipe for the Autoclave - */ - public boolean addAutoclaveRecipe(ItemStack aInput, FluidStack aFluid, ItemStack aOutput, int aChance, int aDuration, int aEUt); - - /** - * Adds a Recipe for the Mixer - */ - public boolean addMixerRecipe(ItemStack aInput1, ItemStack aInput2, ItemStack aInput3, ItemStack aInput4, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput, int aDuration, int aEUt); - - /** - * Adds a Recipe for the Laser Engraver - */ - public boolean addLaserEngraverRecipe(ItemStack aItemToEngrave, ItemStack aLens, ItemStack aEngravedItem, int aDuration, int aEUt); - - /** - * Adds a Recipe for the Forming Press - */ - public boolean addFormingPressRecipe(ItemStack aItemToImprint, ItemStack aForm, ItemStack aImprintedItem, int aDuration, int aEUt); - - /** - * Adds a Recipe for the Sifter. (up to 9 Outputs) - */ - public boolean addSifterRecipe(ItemStack aItemToSift, ItemStack[] aSiftedItems, int[] aChances, int aDuration, int aEUt); - - /** - * Adds a Recipe for the Arc Furnace. (up to 4 Outputs) - */ - public boolean addArcFurnaceRecipe(ItemStack aInput, ItemStack[] aOutputs, int[] aChances, int aDuration, int aEUt); - - /** - * Adds a Recipe for the GT Pulveriser. (up to 4 Outputs) - */ - public boolean addPulveriserRecipe(ItemStack aInput, ItemStack[] aOutputs, int[] aChances, int aDuration, int aEUt); - - /** - * Adds a Sound to the Sonictron9001 - * you should NOT call this in the preInit-Phase! - * @param aItemStack = The Item you want to display for this Sound - * @param aSoundName = The Name of the Sound in the resources/newsound-folder like Vanillasounds - * @return true if the Sound got added, otherwise false. - */ - public boolean addSonictronSound(ItemStack aItemStack, String aSoundName); -} diff --git a/main/java/gregtech/api/interfaces/internal/IIC2TileEntity.java b/main/java/gregtech/api/interfaces/internal/IIC2TileEntity.java deleted file mode 100644 index 736cbf67d7..0000000000 --- a/main/java/gregtech/api/interfaces/internal/IIC2TileEntity.java +++ /dev/null @@ -1,13 +0,0 @@ -package gregtech.api.interfaces.internal; - -import gregtech.api.interfaces.tileentity.IHasWorldObjectAndCoords; -import ic2.api.energy.tile.IEnergySink; -import ic2.api.energy.tile.IEnergySource; -import ic2.api.tile.IEnergyStorage; - -/** - * A simple compound Interface for generic EnergyTileEntities. I don't want to have imports of the IC2-API in my main-code - */ -public interface IIC2TileEntity extends IEnergyStorage, IEnergySink, IEnergySource, IHasWorldObjectAndCoords { - // -} \ No newline at end of file diff --git a/main/java/gregtech/api/interfaces/internal/IThaumcraftCompat.java b/main/java/gregtech/api/interfaces/internal/IThaumcraftCompat.java deleted file mode 100644 index 0b48d43db9..0000000000 --- a/main/java/gregtech/api/interfaces/internal/IThaumcraftCompat.java +++ /dev/null @@ -1,43 +0,0 @@ -package gregtech.api.interfaces.internal; - -import gregtech.api.enums.TC_Aspects; -import gregtech.api.enums.TC_Aspects.TC_AspectStack; - -import java.util.List; - -import net.minecraft.block.Block; -import net.minecraft.item.ItemStack; - -public interface IThaumcraftCompat { - public static final int RESEARCH_TYPE_NORMAL = 0, RESEARCH_TYPE_SECONDARY = 1, RESEARCH_TYPE_FREE = 2, RESEARCH_TYPE_HIDDEN = 4, RESEARCH_TYPE_VIRTUAL = 8, RESEARCH_TYPE_ROUND = 16, RESEARCH_TYPE_SPECIAL = 32, RESEARCH_TYPE_AUTOUNLOCK = 64; - - /** The Research Keys of GT */ - public static final String - IRON_TO_STEEL = "GT_IRON_TO_STEEL" - , FILL_WATER_BUCKET = "GT_FILL_WATER_BUCKET" - , WOOD_TO_CHARCOAL = "GT_WOOD_TO_CHARCOAL" - , TRANSZINC = "GT_TRANSZINC" - , TRANSNICKEL = "GT_TRANSNICKEL" - , TRANSCOBALT = "GT_TRANSCOBALT" - , TRANSBISMUTH = "GT_TRANSBISMUTH" - , TRANSANTIMONY = "GT_TRANSANTIMONY" - , TRANSCUPRONICKEL = "GT_TRANSCUPRONICKEL" - , TRANSBATTERYALLOY = "GT_TRANSBATTERYALLOY" - , TRANSSOLDERINGALLOY = "GT_TRANSSOLDERINGALLOY" - , TRANSBRASS = "GT_TRANSBRASS" - , TRANSBRONZE = "GT_TRANSBRONZE" - , TRANSINVAR = "GT_TRANSINVAR" - , TRANSELECTRUM = "GT_TRANSELECTRUM" - , TRANSALUMINIUM = "GT_TRANSALUMINIUM" - , CRYSTALLISATION = "GT_CRYSTALLISATION" - , ADVANCEDENTROPICPROCESSING = "GT_ADVANCEDENTROPICPROCESSING" - , ADVANCEDMETALLURGY = "GT_ADVANCEDMETALLURGY" - ; - - public boolean registerPortholeBlacklistedBlock(Block aBlock); - public boolean registerThaumcraftAspectsToItem(ItemStack aStack, List aAspects, boolean aAdditive); - public boolean registerThaumcraftAspectsToItem(ItemStack aStack, List aAspects, String aOreDict); - public Object addCrucibleRecipe(String aResearch, Object aInput, ItemStack aOutput, List aAspects); - public Object addInfusionRecipe(String aResearch, ItemStack aMainInput,ItemStack[] aSideInputs, ItemStack aOutput,int aInstability, List aAspects); - public Object addResearch(String aResearch, String aName, String aText, String[] aParentResearches, String aCategory, ItemStack aIcon, int aComplexity, int aType, int aX, int aY, List aAspects, ItemStack[] aResearchTriggers, Object[] aPages); -} \ No newline at end of file diff --git a/main/java/gregtech/api/interfaces/internal/IUETileEntity.java b/main/java/gregtech/api/interfaces/internal/IUETileEntity.java deleted file mode 100644 index 945c6792f8..0000000000 --- a/main/java/gregtech/api/interfaces/internal/IUETileEntity.java +++ /dev/null @@ -1,6 +0,0 @@ -package gregtech.api.interfaces.internal; - - -public interface IUETileEntity /*extends IElectrical*/ { - // -} \ No newline at end of file diff --git a/main/java/gregtech/api/interfaces/metatileentity/IMetaTileEntity.java b/main/java/gregtech/api/interfaces/metatileentity/IMetaTileEntity.java deleted file mode 100644 index 7b7d36ea6f..0000000000 --- a/main/java/gregtech/api/interfaces/metatileentity/IMetaTileEntity.java +++ /dev/null @@ -1,383 +0,0 @@ -package gregtech.api.interfaces.metatileentity; - -import gregtech.api.interfaces.ITexture; -import gregtech.api.interfaces.tileentity.IGearEnergyTileEntity; -import gregtech.api.interfaces.tileentity.IGregTechTileEntity; -import gregtech.api.objects.GT_ItemStack; -import gregtech.api.util.GT_Config; - -import java.io.File; -import java.util.ArrayList; -import java.util.List; - -import net.minecraft.block.Block; -import net.minecraft.client.renderer.RenderBlocks; -import net.minecraft.client.renderer.texture.IIconRegister; -import net.minecraft.entity.Entity; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.entity.player.InventoryPlayer; -import net.minecraft.inventory.ISidedInventory; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.util.AxisAlignedBB; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; -import net.minecraftforge.fluids.IFluidHandler; -import net.minecraftforge.fluids.IFluidTank; -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; - -/** - * Warning, this Interface has just been made to be able to add multiple kinds of MetaTileEntities (Cables, Pipes, Transformers, but not the regular Blocks) - * - * Don't implement this yourself and expect it to work. Extend @MetaTileEntity itself. - */ -public interface IMetaTileEntity extends ISidedInventory, IFluidTank, IFluidHandler, IGearEnergyTileEntity { - /** - * This determines the BaseMetaTileEntity belonging to this MetaTileEntity by using the Meta ID of the Block itself. - * - * 0 = BaseMetaTileEntity, Wrench lvl 0 to dismantle - * 1 = BaseMetaTileEntity, Wrench lvl 1 to dismantle - * 2 = BaseMetaTileEntity, Wrench lvl 2 to dismantle - * 3 = BaseMetaTileEntity, Wrench lvl 3 to dismantle - * 4 = BaseMetaPipeEntity, Wrench lvl 0 to dismantle - * 5 = BaseMetaPipeEntity, Wrench lvl 1 to dismantle - * 6 = BaseMetaPipeEntity, Wrench lvl 2 to dismantle - * 7 = BaseMetaPipeEntity, Wrench lvl 3 to dismantle - * 8 = BaseMetaPipeEntity, Cutter lvl 0 to dismantle - * 9 = BaseMetaPipeEntity, Cutter lvl 1 to dismantle - * 10 = BaseMetaPipeEntity, Cutter lvl 2 to dismantle - * 11 = BaseMetaPipeEntity, Cutter lvl 3 to dismantle - * 12 = BaseMetaPipeEntity, Axe lvl 0 to dismantle - * 13 = BaseMetaPipeEntity, Axe lvl 1 to dismantle - * 14 = BaseMetaPipeEntity, Axe lvl 2 to dismantle - * 15 = BaseMetaPipeEntity, Axe lvl 3 to dismantle - */ - public byte getTileEntityBaseType(); - - /** - * @param aTileEntity is just because the internal Variable "mBaseMetaTileEntity" is set after this Call. - * @return a newly created and ready MetaTileEntity - */ - public IMetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity); - - /** - * @return an ItemStack representing this MetaTileEntity. - */ - public ItemStack getStackForm(long aAmount); - - /** - * Sets the BaseMetaTileEntity of this - */ - public void setBaseMetaTileEntity(IGregTechTileEntity aBaseMetaTileEntity); - - /** - * new getter for the BaseMetaTileEntity, which restricts usage to certain Functions. - */ - public IGregTechTileEntity getBaseMetaTileEntity(); - - /** - * when placing a Machine in World, to initialize default Modes. aNBT can be null! - */ - public void initDefaultModes(NBTTagCompound aNBT); - - /** - * ^= writeToNBT - */ - public void saveNBTData(NBTTagCompound aNBT); - - /** - * ^= readFromNBT - */ - public void loadNBTData(NBTTagCompound aNBT); - - /** - * Adds the NBT-Information to the ItemStack, when being dismanteled properly - * Used to store Machine specific Upgrade Data. - */ - public void setItemNBT(NBTTagCompound aNBT); - - /** - * Called in the registered MetaTileEntity when the Server starts, to reset static variables - */ - public void onServerStart(); - - /** - * Called in the registered MetaTileEntity when the Server ticks a World the first time, to load things from the World Save - */ - public void onWorldLoad(File aSaveDirectory); - - /** - * Called in the registered MetaTileEntity when the Server stops, to save the Game. - */ - public void onWorldSave(File aSaveDirectory); - - /** - * Called to set Configuration values for this MetaTileEntity. - * Use aConfig.get(ConfigCategories.machineconfig, "MetaTileEntityName.Ability", DEFAULT_VALUE); to set the Values. - */ - public void onConfigLoad(GT_Config aConfig); - - /** - * If a Cover of that Type can be placed on this Side. - * Also Called when the Facing of the Block Changes and a Cover is on said Side. - */ - public boolean allowCoverOnSide(byte aSide, GT_ItemStack aStack); - - /** - * When a Player rightclicks the Facing with a Screwdriver. - */ - public void onScrewdriverRightClick(byte aSide, EntityPlayer aPlayer, float aX, float aY, float aZ); - - /** - * When a Player rightclicks the Facing with a Wrench. - */ - public boolean onWrenchRightClick(byte aSide, byte aWrenchingSide, EntityPlayer aPlayer, float aX, float aY, float aZ); - - /** - * Called right before this Machine explodes - */ - public void onExplosion(); - - /** - * The First processed Tick which was passed to this MetaTileEntity - */ - public void onFirstTick(IGregTechTileEntity aBaseMetaTileEntity); - - /** - * The Tick before all the generic handling happens, what gives a slightly faster reaction speed. - * Don't use this if you really don't need to. @onPostTick is better suited for ticks. - * This happens still after the Cover handling. - */ - public void onPreTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick); - - /** - * The Tick after all the generic handling happened. - * Recommended to use this like updateEntity. - */ - public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick); - - /** - * Called when this MetaTileEntity gets (intentionally) disconnected from the BaseMetaTileEntity. - * Doesn't get called when this thing is moved by Frames or similar hacks. - */ - public void inValidate(); - - /** - * Called when the BaseMetaTileEntity gets invalidated, what happens right before the @inValidate above gets called - */ - public void onRemoval(); - - /** - * @param aFacing - * @return if aFacing would be a valid Facing for this Device. Used for wrenching. - */ - public boolean isFacingValid(byte aFacing); - - /** - * @return the Server Side Container - */ - public Object getServerGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity); - - /** - * @return the Client Side GUI Container - */ - public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity); - - /** - * From new ISidedInventory - */ - public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack); - - /** - * From new ISidedInventory - */ - public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack); - - /** - * @return if aIndex is a valid Slot. false for things like HoloSlots. Is used for determining if an Item is dropped upon Block destruction and for Inventory Access Management - */ - public boolean isValidSlot(int aIndex); - - /** - * @return if aIndex can be set to Zero stackSize, when being removed. - */ - public boolean setStackToZeroInsteadOfNull(int aIndex); - - /** - * If this Side can connect to inputting pipes - */ - public boolean isLiquidInput(byte aSide); - - /** - * If this Side can connect to outputting pipes - */ - public boolean isLiquidOutput(byte aSide); - - /** - * Just an Accessor for the Name variable. - */ - public String getMetaName(); - - /** - * @return true if the Machine can be accessed - */ - public boolean isAccessAllowed(EntityPlayer aPlayer); - - /** - * When a Machine Update occurs - */ - public void onMachineBlockUpdate(); - - /** - * a Player rightclicks the Machine - * Sneaky rightclicks are not getting passed to this! - * @return - */ - public boolean onRightclick(IGregTechTileEntity aBaseMetaTileEntity, EntityPlayer aPlayer, byte aSide, float aX, float aY, float aZ); - - /** - * a Player leftclicks the Machine - * Sneaky leftclicks are getting passed to this unlike with the rightclicks. - */ - public void onLeftclick(IGregTechTileEntity aBaseMetaTileEntity, EntityPlayer aPlayer); - - /** - * Called Clientside with the Data got from @getUpdateData - */ - public void onValueUpdate(byte aValue); - - /** - * return a small bit of Data, like a secondary Facing for example with this Function, for the Client. - * The BaseMetaTileEntity detects changes to this Value and will then send an Update. - * This is only for Information, which is visible as Texture to the outside. - * - * If you just want to have an Active/Redstone State then set the Active State inside the BaseMetaTileEntity instead. - */ - public byte getUpdateData(); - - /** - * For the rare case you need this Function - */ - public void receiveClientEvent(byte aEventID, byte aValue); - - /** - * Called to actually play the Sound. - * Do not insert Client/Server checks. That is already done for you. - * Do not use @playSoundEffect, Minecraft doesn't like that at all. Use @playSound instead. - */ - public void doSound(byte aIndex, double aX, double aY, double aZ); - public void startSoundLoop(byte aIndex, double aX, double aY, double aZ); - public void stopSoundLoop(byte aValue, double aX, double aY, double aZ); - - /** - * Sends the Event for the Sound Triggers, only usable Server Side! - */ - public void sendSound(byte aIndex); - - /** - * Sends the Event for the Sound Triggers, only usable Server Side! - */ - public void sendLoopStart(byte aIndex); - - /** - * Sends the Event for the Sound Triggers, only usable Server Side! - */ - public void sendLoopEnd(byte aIndex); - - /** - * Called when the Machine explodes, override Explosion Code here. - * @param aExplosionPower - */ - public void doExplosion(long aExplosionPower); - - /** - * If this is just a simple Machine, which can be wrenched at 100% - */ - public boolean isSimpleMachine(); - - /** - * If there should be a Lag Warning if something laggy happens during this Tick. - * - * The Advanced Pump uses this to not cause the Lag Message, while it scans for all close Fluids. - * The Item Pipes and Retrievers neither send this Message, when scanning for Pipes. - */ - public boolean doTickProfilingMessageDuringThisTick(); - - /** - * returns the DebugLog - */ - public ArrayList getSpecialDebugInfo(IGregTechTileEntity aBaseMetaTileEntity, EntityPlayer aPlayer, int aLogLevel, ArrayList aList); - - /** - * get a small Description - */ - public String[] getDescription(); - - /** - * In case the Output Voltage varies. - */ - public String getSpecialVoltageToolTip(); - - /** - * Icon of the Texture. If this returns null then it falls back to getTextureIndex. - * - * @param aSide is the Side of the Block - * @param aFacing is the direction the Block is facing (or a Bitmask of all Connections in case of Pipes) - * @param aColorIndex The Minecraft Color the Block is having - * @param aActive if the Machine is currently active (use this instead of calling mBaseMetaTileEntity.mActive!!!). Note: In case of Pipes this means if this Side is connected to something or not. - * @param aRedstone if the Machine is currently outputting a RedstoneSignal (use this instead of calling mBaseMetaTileEntity.mRedstone!!!) - */ - public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolea