diff options
Diffstat (limited to 'src/main/java/gregtech/api/interfaces')
36 files changed, 984 insertions, 300 deletions
diff --git a/src/main/java/gregtech/api/interfaces/IBlockContainer.java b/src/main/java/gregtech/api/interfaces/IBlockContainer.java index 7949ae90ce..89bda5de12 100644 --- a/src/main/java/gregtech/api/interfaces/IBlockContainer.java +++ b/src/main/java/gregtech/api/interfaces/IBlockContainer.java @@ -4,5 +4,6 @@ import net.minecraft.block.Block; public interface IBlockContainer { Block getBlock(); + byte getMeta(); } diff --git a/src/main/java/gregtech/api/interfaces/IDebugableBlock.java b/src/main/java/gregtech/api/interfaces/IDebugableBlock.java index 35ca68336e..063f713fe4 100644 --- a/src/main/java/gregtech/api/interfaces/IDebugableBlock.java +++ b/src/main/java/gregtech/api/interfaces/IDebugableBlock.java @@ -1,8 +1,7 @@ package gregtech.api.interfaces; -import net.minecraft.entity.player.EntityPlayer; - 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. diff --git a/src/main/java/gregtech/api/interfaces/IGlobalWirelessEnergy.java b/src/main/java/gregtech/api/interfaces/IGlobalWirelessEnergy.java index cec499c5d3..cc825f9d1a 100644 --- a/src/main/java/gregtech/api/interfaces/IGlobalWirelessEnergy.java +++ b/src/main/java/gregtech/api/interfaces/IGlobalWirelessEnergy.java @@ -1,8 +1,5 @@ package gregtech.api.interfaces; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.world.World; - import java.io.File; import java.io.IOException; import java.math.BigInteger; @@ -13,6 +10,8 @@ import java.util.HashMap; import java.util.List; import java.util.UUID; import java.util.stream.Collectors; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.world.World; // If you are adding very late-game content feel free to tap into this interface. // The eventual goal is to bypass laser/dynamo stuff and have energy deposited directly from ultra-endgame @@ -50,22 +49,22 @@ public interface IGlobalWirelessEnergy { default void saveGlobalEnergyInfo(String world_name) { // Replace chars because of bug in forge that doesn't understand MC converts . to _ upon world creation. - world_name = world_name.replace('.','_'); + world_name = world_name.replace('.', '_'); createStorageIfNotExist(world_name); saveGlobalEnergyMap(world_name); saveGlobalEnergyName(world_name); saveGlobalEnergyTeam(world_name); - } default void saveGlobalEnergyMap(String world_name) { try { - List<String> lines = GlobalEnergy.entrySet() - .stream() - .map(entry -> entry.getKey() + ":" + entry.getValue()) - .collect(Collectors.toList()); + List<String> lines = GlobalEnergy.entrySet().stream() + .map(entry -> entry.getKey() + ":" + entry.getValue()) + .collect(Collectors.toList()); - Path path = Paths.get("./saves/" + world_name + "/" + GlobalEnergyFolderName + "/" + GlobalEnergyMapFileName + ".txt").toAbsolutePath(); + Path path = Paths.get("./saves/" + world_name + "/" + GlobalEnergyFolderName + "/" + GlobalEnergyMapFileName + + ".txt") + .toAbsolutePath(); Files.write(path, lines); } catch (IOException e) { @@ -75,12 +74,13 @@ public interface IGlobalWirelessEnergy { default void saveGlobalEnergyName(String world_name) { try { - List<String> lines = GlobalEnergyName.entrySet() - .stream() - .map(entry -> entry.getKey() + ":" + entry.getValue()) - .collect(Collectors.toList()); + List<String> lines = GlobalEnergyName.entrySet().stream() + .map(entry -> entry.getKey() + ":" + entry.getValue()) + .collect(Collectors.toList()); - Path path = Paths.get("./saves/" + world_name + "/" + GlobalEnergyFolderName + "/" + GlobalEnergyNameFileName + ".txt").toAbsolutePath(); + Path path = Paths.get("./saves/" + world_name + "/" + GlobalEnergyFolderName + "/" + + GlobalEnergyNameFileName + ".txt") + .toAbsolutePath(); Files.write(path, lines); } catch (IOException e) { @@ -90,12 +90,13 @@ public interface IGlobalWirelessEnergy { default void saveGlobalEnergyTeam(String world_name) { try { - List<String> lines = GlobalEnergyTeam.entrySet() - .stream() - .map(entry -> entry.getKey() + ":" + entry.getValue()) - .collect(Collectors.toList()); + List<String> lines = GlobalEnergyTeam.entrySet().stream() + .map(entry -> entry.getKey() + ":" + entry.getValue()) + .collect(Collectors.toList()); - Path path = Paths.get("./saves/" + world_name + "/" + GlobalEnergyFolderName + "/" + GlobalEnergyTeamFileName + ".txt").toAbsolutePath(); + Path path = Paths.get("./saves/" + world_name + "/" + GlobalEnergyFolderName + "/" + + GlobalEnergyTeamFileName + ".txt") + .toAbsolutePath(); Files.write(path, lines); } catch (IOException e) { @@ -107,7 +108,7 @@ public interface IGlobalWirelessEnergy { default void loadGlobalEnergyInfo(World world) { // Replace chars because of bug in forge that doesn't understand MC converts . to _ upon world creation. - String world_name = world.getWorldInfo().getWorldName().replace('.','_'); + String world_name = world.getWorldInfo().getWorldName().replace('.', '_'); PrivateGlobalEnergy.WorldName = world_name; createStorageIfNotExist(world_name); loadGlobalEnergyMap(world); @@ -117,10 +118,12 @@ public interface IGlobalWirelessEnergy { default void loadGlobalEnergyMap(World world) { try { - Path path = Paths.get("./saves/" + world.getWorldInfo().getWorldName() + "/" + GlobalEnergyFolderName + "/" + GlobalEnergyMapFileName + ".txt").toAbsolutePath(); + Path path = Paths.get("./saves/" + world.getWorldInfo().getWorldName() + "/" + GlobalEnergyFolderName + "/" + + GlobalEnergyMapFileName + ".txt") + .toAbsolutePath(); String[] data; - for(String line : Files.readAllLines(path)) { + for (String line : Files.readAllLines(path)) { data = line.split(":"); String UUID = data[0]; @@ -135,11 +138,12 @@ public interface IGlobalWirelessEnergy { default void loadGlobalEnergyName(World world) { try { - Path path = Paths.get("./saves/" + world.getWorldInfo().getWorldName() + "/" - + GlobalEnergyFolderName + "/" + GlobalEnergyNameFileName + ".txt").toAbsolutePath(); + Path path = Paths.get("./saves/" + world.getWorldInfo().getWorldName() + "/" + GlobalEnergyFolderName + "/" + + GlobalEnergyNameFileName + ".txt") + .toAbsolutePath(); String[] data; - for(String line : Files.readAllLines(path)) { + for (String line : Files.readAllLines(path)) { data = line.split(":"); GlobalEnergyName.put(data[0], data[1]); @@ -151,11 +155,12 @@ public interface IGlobalWirelessEnergy { default void loadGlobalEnergyTeam(World world) { try { - Path path = Paths.get("./saves/" + world.getWorldInfo().getWorldName() + "/" - + GlobalEnergyFolderName + "/" + GlobalEnergyTeamFileName + ".txt").toAbsolutePath(); + Path path = Paths.get("./saves/" + world.getWorldInfo().getWorldName() + "/" + GlobalEnergyFolderName + "/" + + GlobalEnergyTeamFileName + ".txt") + .toAbsolutePath(); String[] data; - for(String line : Files.readAllLines(path)) { + for (String line : Files.readAllLines(path)) { data = line.split(":"); GlobalEnergyName.put(data[0], data[1]); @@ -168,7 +173,8 @@ public interface IGlobalWirelessEnergy { // ------------------ default void createStorageIfNotExist(String world_name) { - Path folder_path = Paths.get("./saves/" + world_name + "/" + GlobalEnergyFolderName).toAbsolutePath(); + Path folder_path = Paths.get("./saves/" + world_name + "/" + GlobalEnergyFolderName) + .toAbsolutePath(); // Create folder for storing global energy network info. try { @@ -188,7 +194,6 @@ public interface IGlobalWirelessEnergy { } catch (IOException e) { e.printStackTrace(); } - } // Adds a user to the energy map if they do not already exist. Otherwise, do nothing. Will also check if the user @@ -299,7 +304,6 @@ public interface IGlobalWirelessEnergy { GlobalEnergyName.clear(); GlobalEnergyTeam.clear(); } - } class PrivateGlobalEnergy { diff --git a/src/main/java/gregtech/api/interfaces/IGuiIcon.java b/src/main/java/gregtech/api/interfaces/IGuiIcon.java index 2167270e6c..3204c35b4e 100644 --- a/src/main/java/gregtech/api/interfaces/IGuiIcon.java +++ b/src/main/java/gregtech/api/interfaces/IGuiIcon.java @@ -5,9 +5,14 @@ package gregtech.api.interfaces; */ public interface IGuiIcon { int getX(); + int getY(); + int getWidth(); + int getHeight(); + int getTexId(); + IGuiIcon getOverlay(); } diff --git a/src/main/java/gregtech/api/interfaces/IGuiScreen.java b/src/main/java/gregtech/api/interfaces/IGuiScreen.java index 5f1ae9cd2b..2f12781a77 100644 --- a/src/main/java/gregtech/api/interfaces/IGuiScreen.java +++ b/src/main/java/gregtech/api/interfaces/IGuiScreen.java @@ -5,12 +5,13 @@ import net.minecraft.client.gui.FontRenderer; import net.minecraft.client.gui.GuiButton; import net.minecraft.client.renderer.entity.RenderItem; - public interface IGuiScreen { interface IGuiElement { void onInit(); + default void onRemoved() {} + void draw(int mouseX, int mouseY, float parTicks); } @@ -19,18 +20,24 @@ public interface IGuiScreen { boolean removeToolTip(GT_GuiTooltip toolTip); GuiButton getSelectedButton(); + void clearSelectedButton(); + void buttonClicked(GuiButton button); int getGuiLeft(); + int getGuiTop(); int getXSize(); + int getYSize(); void addElement(IGuiElement element); + boolean removeElement(IGuiElement element); RenderItem getItemRenderer(); + FontRenderer getFontRenderer(); } diff --git a/src/main/java/gregtech/api/interfaces/IHatchElement.java b/src/main/java/gregtech/api/interfaces/IHatchElement.java index 22dbbdf013..e1f68963e0 100644 --- a/src/main/java/gregtech/api/interfaces/IHatchElement.java +++ b/src/main/java/gregtech/api/interfaces/IHatchElement.java @@ -6,7 +6,6 @@ import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.util.GT_StructureUtility; import gregtech.api.util.IGT_HatchAdder; - import java.util.Arrays; import java.util.Collections; import java.util.List; @@ -56,22 +55,23 @@ public interface IHatchElement<T> { default <T2 extends T> IStructureElement<T2> newAny(int aCasingIndex, int aDot) { if (aCasingIndex < 0 || aDot < 0) throw new IllegalArgumentException(); return GT_StructureUtility.<T2>buildHatchAdder() - .anyOf(this) - .casingIndex(aCasingIndex) - .dot(aDot) - .continueIfSuccess() - .build(); + .anyOf(this) + .casingIndex(aCasingIndex) + .dot(aDot) + .continueIfSuccess() + .build(); } - default <T2 extends T> IStructureElement<T2> newAny(int aCasingIndex, int aDot, BiPredicate<? super T2, ? super IGregTechTileEntity> aShouldSkip) { + default <T2 extends T> IStructureElement<T2> newAny( + int aCasingIndex, int aDot, BiPredicate<? super T2, ? super IGregTechTileEntity> aShouldSkip) { if (aCasingIndex < 0 || aDot < 0 || aShouldSkip == null) throw new IllegalArgumentException(); return GT_StructureUtility.<T2>buildHatchAdder() - .anyOf(this) - .casingIndex(aCasingIndex) - .dot(aDot) - .shouldSkip(aShouldSkip) - .continueIfSuccess() - .build(); + .anyOf(this) + .casingIndex(aCasingIndex) + .dot(aDot) + .shouldSkip(aShouldSkip) + .continueIfSuccess() + .build(); } default <T2 extends T> IHatchElement<T2> or(IHatchElement<? super T2> fallback) { @@ -93,9 +93,9 @@ class HatchElementEither<T> implements IHatchElement<T> { public List<? extends Class<? extends IMetaTileEntity>> mteClasses() { if (mMteClasses == null) mMteClasses = ImmutableList.<Class<? extends IMetaTileEntity>>builder() - .addAll(first.mteClasses()) - .addAll(second.mteClasses()) - .build(); + .addAll(first.mteClasses()) + .addAll(second.mteClasses()) + .build(); return mMteClasses; } @@ -106,8 +106,7 @@ class HatchElementEither<T> implements IHatchElement<T> { @Override public String name() { - if (name == null) - name = first.name() + " or " + second.name(); + if (name == null) name = first.name() + " or " + second.name(); return name; } @@ -124,7 +123,12 @@ class HatchElement<T> implements IHatchElement<T> { private final IHatchElement<? super T> mBacking; private final ToLongFunction<? super T> mCount; - public HatchElement(List<Class<? extends IMetaTileEntity>> aMteClasses, IGT_HatchAdder<? super T> aAdder, String aName, ToLongFunction<? super T> aCount, IHatchElement<? super T> aBacking) { + public HatchElement( + List<Class<? extends IMetaTileEntity>> aMteClasses, + IGT_HatchAdder<? super T> aAdder, + String aName, + ToLongFunction<? super T> aCount, + IHatchElement<? super T> aBacking) { this.mClasses = aMteClasses; this.mAdder = aAdder; this.mName = aName; diff --git a/src/main/java/gregtech/api/interfaces/IHeatingCoil.java b/src/main/java/gregtech/api/interfaces/IHeatingCoil.java index c8ceccf941..f30145165b 100644 --- a/src/main/java/gregtech/api/interfaces/IHeatingCoil.java +++ b/src/main/java/gregtech/api/interfaces/IHeatingCoil.java @@ -1,18 +1,18 @@ package gregtech.api.interfaces; import gregtech.api.enums.HeatingCoilLevel; -import net.minecraft.item.ItemStack; - import java.util.function.Consumer; +import net.minecraft.item.ItemStack; public interface IHeatingCoil { HeatingCoilLevel getCoilHeat(int meta); + default HeatingCoilLevel getCoilHeat(ItemStack stack) { return getCoilHeat(stack.getItemDamage()); } void setOnCoilCheck(Consumer<IHeatingCoil> callback); + Consumer<IHeatingCoil> getOnCoilCheck(); } - diff --git a/src/main/java/gregtech/api/interfaces/IIconContainer.java b/src/main/java/gregtech/api/interfaces/IIconContainer.java index 4682955603..8090ce7cb9 100644 --- a/src/main/java/gregtech/api/interfaces/IIconContainer.java +++ b/src/main/java/gregtech/api/interfaces/IIconContainer.java @@ -1,12 +1,12 @@ package gregtech.api.interfaces; +import static gregtech.api.enums.GT_Values.UNCOLORED_RBGA; + import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.util.IIcon; import net.minecraft.util.ResourceLocation; -import static gregtech.api.enums.GT_Values.UNCOLORED_RBGA; - public interface IIconContainer { /** * @return A regular Icon. @@ -26,7 +26,8 @@ public interface IIconContainer { @SideOnly(Side.CLIENT) default int getIconPasses() { return 1; - }; + } + ; /** * @return the Default Texture File for this Icon. @@ -35,13 +36,12 @@ public interface IIconContainer { ResourceLocation getTextureFile(); @SideOnly(Side.CLIENT) - default public short[] getIconColor(int aRenderPass) { + public default short[] getIconColor(int aRenderPass) { return UNCOLORED_RBGA; } @SideOnly(Side.CLIENT) - default public boolean isUsingColorModulation(int aRenderPass) { + public default boolean isUsingColorModulation(int aRenderPass) { return aRenderPass == 0; } - } diff --git a/src/main/java/gregtech/api/interfaces/IItemBehaviour.java b/src/main/java/gregtech/api/interfaces/IItemBehaviour.java index 85916ae0d7..9a513c2af5 100644 --- a/src/main/java/gregtech/api/interfaces/IItemBehaviour.java +++ b/src/main/java/gregtech/api/interfaces/IItemBehaviour.java @@ -2,6 +2,7 @@ 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; @@ -11,14 +12,34 @@ import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.world.World; -import java.util.List; - public interface IItemBehaviour<E extends Item> { boolean onLeftClickEntity(E aItem, ItemStack aStack, EntityPlayer aPlayer, Entity aEntity); - boolean onItemUse(E aItem, ItemStack aStack, EntityPlayer aPlayer, World aWorld, int aX, int aY, int aZ, int aSide, float hitX, float hitY, float hitZ); - - boolean onItemUseFirst(E aItem, ItemStack aStack, EntityPlayer aPlayer, World aWorld, int aX, int aY, int aZ, int aSide, float hitX, float hitY, float hitZ); + boolean onItemUse( + E aItem, + ItemStack aStack, + EntityPlayer aPlayer, + World aWorld, + int aX, + int aY, + int aZ, + int aSide, + float hitX, + float hitY, + float hitZ); + + boolean onItemUseFirst( + E aItem, + ItemStack aStack, + EntityPlayer aPlayer, + World aWorld, + int aX, + int aY, + int aZ, + int aSide, + float hitX, + float hitY, + float hitZ); ItemStack onItemRightClick(E aItem, ItemStack aStack, World aWorld, EntityPlayer aPlayer); @@ -34,7 +55,9 @@ public interface IItemBehaviour<E extends Item> { boolean hasProjectile(GT_MetaBase_Item aItem, SubTag aProjectileType, ItemStack aStack); - EntityArrow getProjectile(E aItem, SubTag aProjectileType, ItemStack aStack, World aWorld, double aX, double aY, double aZ); + EntityArrow getProjectile( + E aItem, SubTag aProjectileType, ItemStack aStack, World aWorld, double aX, double aY, double aZ); - EntityArrow getProjectile(E aItem, SubTag aProjectileType, ItemStack aStack, World aWorld, EntityLivingBase aEntity, float aSpeed); + EntityArrow getProjectile( + E aItem, SubTag aProjectileType, ItemStack aStack, World aWorld, EntityLivingBase aEntity, float aSpeed); } diff --git a/src/main/java/gregtech/api/interfaces/INetworkUpdatableItem.java b/src/main/java/gregtech/api/interfaces/INetworkUpdatableItem.java index 2e102e937c..de251017a1 100644 --- a/src/main/java/gregtech/api/interfaces/INetworkUpdatableItem.java +++ b/src/main/java/gregtech/api/interfaces/INetworkUpdatableItem.java @@ -11,13 +11,13 @@ import net.minecraft.nbt.NBTTagCompound; * Usual NBT tag size limit applies. */ public interface INetworkUpdatableItem { - /** - * Receive update from client. Runs on server thread. - * @param stack Stack being updated - * @param player player holding the stack - * @param tag received data - * @return true if this stack should be kept inside the player inventory. - * false if this stack should vanish (i.e. slot content set to null) - */ - boolean receive(ItemStack stack, EntityPlayerMP player, NBTTagCompound tag); + /** + * Receive update from client. Runs on server thread. + * @param stack Stack being updated + * @param player player holding the stack + * @param tag received data + * @return true if this stack should be kept inside the player inventory. + * false if this stack should vanish (i.e. slot content set to null) + */ + boolean receive(ItemStack stack, EntityPlayerMP player, NBTTagCompound tag); } diff --git a/src/main/java/gregtech/api/interfaces/IProjectileItem.java b/src/main/java/gregtech/api/interfaces/IProjectileItem.java index 913339ef05..9441e2991b 100644 --- a/src/main/java/gregtech/api/interfaces/IProjectileItem.java +++ b/src/main/java/gregtech/api/interfaces/IProjectileItem.java @@ -20,5 +20,6 @@ public interface IProjectileItem { /** * @return an Arrow Entity to be spawned. If null then this is not an Arrow. Note: Other Projectiles still extend EntityArrow */ - EntityArrow getProjectile(SubTag aProjectileType, ItemStack aStack, World aWorld, EntityLivingBase aEntity, float aSpeed); + EntityArrow getProjectile( + SubTag aProjectileType, ItemStack aStack, World aWorld, EntityLivingBase aEntity, float aSpeed); } diff --git a/src/main/java/gregtech/api/interfaces/ITexture.java b/src/main/java/gregtech/api/interfaces/ITexture.java index b05f31d14f..e2445a8204 100644 --- a/src/main/java/gregtech/api/interfaces/ITexture.java +++ b/src/main/java/gregtech/api/interfaces/ITexture.java @@ -18,7 +18,7 @@ public interface ITexture { void renderZNeg(RenderBlocks aRenderer, Block aBlock, int aX, int aY, int aZ); boolean isValidTexture(); - + /** * @return {@code true} if this texture is from the old package */ diff --git a/src/main/java/gregtech/api/interfaces/IToolStats.java b/src/main/java/gregtech/api/interfaces/IToolStats.java index a96e12c1ce..b2e170445c 100644 --- a/src/main/java/gregtech/api/interfaces/IToolStats.java +++ b/src/main/java/gregtech/api/interfaces/IToolStats.java @@ -1,6 +1,7 @@ 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; @@ -11,8 +12,6 @@ import net.minecraft.util.DamageSource; import net.minecraft.world.World; import net.minecraftforge.event.world.BlockEvent; -import java.util.List; - /** * The Stats for GT Tools. Not including any Material Modifiers. * <p/> @@ -138,7 +137,18 @@ public interface IToolStats { * * @return the Amount of modified Items. */ - int convertBlockDrops(List<ItemStack> aDrops, ItemStack aStack, EntityPlayer aPlayer, Block aBlock, int aX, int aY, int aZ, byte aMetaData, int aFortune, boolean aSilkTouch, BlockEvent.HarvestDropsEvent aEvent); + int convertBlockDrops( + List<ItemStack> 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. @@ -159,5 +169,6 @@ public interface IToolStats { short[] getRGBa(boolean aIsToolHead, ItemStack aStack); - float getMiningSpeed(Block aBlock, byte aMetaData, float aDefault, EntityPlayer aPlayer, World worldObj, int aX, int aY, int aZ); + float getMiningSpeed( + Block aBlock, byte aMetaData, float aDefault, EntityPlayer aPlayer, World worldObj, int aX, int aY, int aZ); } diff --git a/src/main/java/gregtech/api/interfaces/internal/IGT_Mod.java b/src/main/java/gregtech/api/interfaces/internal/IGT_Mod.java index 22947b746d..19e7a56aad 100644 --- a/src/main/java/gregtech/api/interfaces/internal/IGT_Mod.java +++ b/src/main/java/gregtech/api/interfaces/internal/IGT_Mod.java @@ -30,7 +30,7 @@ public interface IGT_Mod { */ EntityPlayer getThePlayer(); - //---------- Internal Usage Only ---------- + // ---------- Internal Usage Only ---------- /** * works only ClientSide otherwise returns 0 diff --git a/src/main/java/gregtech/api/interfaces/internal/IGT_RecipeAdder.java b/src/main/java/gregtech/api/interfaces/internal/IGT_RecipeAdder.java index add54205ee..d29dc96316 100644 --- a/src/main/java/gregtech/api/interfaces/internal/IGT_Rec |
