From eacdf1e10f02be6f42957bbb065fec0345e3b64a Mon Sep 17 00:00:00 2001 From: bartimaeusnek <33183715+bartimaeusnek@users.noreply.github.com> Date: Thu, 24 Dec 2020 18:46:40 +0100 Subject: Heating Coil Logic Overhaul --- .../java/gregtech/api/enums/HeatingCoilLevel.java | 64 ++++++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 src/main/java/gregtech/api/enums/HeatingCoilLevel.java (limited to 'src/main/java/gregtech/api/enums') diff --git a/src/main/java/gregtech/api/enums/HeatingCoilLevel.java b/src/main/java/gregtech/api/enums/HeatingCoilLevel.java new file mode 100644 index 0000000000..7b1b3f7334 --- /dev/null +++ b/src/main/java/gregtech/api/enums/HeatingCoilLevel.java @@ -0,0 +1,64 @@ +package gregtech.api.enums; + +public enum HeatingCoilLevel { + None ( 0L), + // ULV ( 901L), //Not implemented + LV ( 1_801L), //Cupronickel + MV ( 2_701L), //KANTHAL + HV ( 3_601L), //NICHROME + EV ( 4_501L), //TUNGSTENSTEEL + IV ( 5_401L), //HSSG + // LuV ( 6_301L), //Not implemented + ZPM ( 7_201L), //NAQUADAH + UV ( 9_001L), //NAQUADAHALLOY + UHV ( 9_901L), //ELECTRUMFLUX + UEV (10_801L), //AWAKENEDDRACONIUM + UIV (11_701L), + + //Not Implemented yet + UMV (12_601L), + UXV (13_501L), + OpV (14_401L), + MAX (15_301L), + ; + + private final long HEAT; + + HeatingCoilLevel(long heat) { + this.HEAT = heat; + } + /** + * @return the coil heat, used for recipes in the Electronic Blast Furnace for example + */ + public long getHeat() { + return HEAT; + } + + /** + * @return the coil tier, used for discount in the Pyrolyse Ofen for example + */ + public byte getTier() { + return (byte) (this.ordinal() - 1); + } + + /** + * @return the coil Level, used for Parallels in the Multi Furnace for example + */ + public byte getLevel() { + return (byte) Math.max(16, 2 << (this.ordinal() -1)); + } + + /** + * @return the coil Discount, used for discount in the Multi Furnace for example + */ + public byte getCostDiscount() { + return (byte) Math.min(1, 2 << (this.ordinal() -1 -4)); //-1 bcs. of none, -4 = offset + } + + public static HeatingCoilLevel getFromTier(byte tier){ + if (tier < 0 || tier > HeatingCoilLevel.values().length -1) + return HeatingCoilLevel.None; + + return HeatingCoilLevel.values()[tier+1]; + } +} -- cgit From 259b55e31b9db9079d4797e4b179737208e40695 Mon Sep 17 00:00:00 2001 From: Jason Mitchell Date: Sat, 26 Dec 2020 15:50:50 -0800 Subject: Adds long distance Item & Fluid pipelines and pipes. Inspired/ported from GT6 under LGPL. --- src/main/java/gregtech/api/enums/ItemList.java | 6 ++++++ src/main/java/gregtech/api/enums/Textures.java | 8 ++++++++ 2 files changed, 14 insertions(+) (limited to 'src/main/java/gregtech/api/enums') diff --git a/src/main/java/gregtech/api/enums/ItemList.java b/src/main/java/gregtech/api/enums/ItemList.java index 420c371c40..55ea5cfa13 100644 --- a/src/main/java/gregtech/api/enums/ItemList.java +++ b/src/main/java/gregtech/api/enums/ItemList.java @@ -1401,6 +1401,12 @@ public enum ItemList implements IItemContainer { Super_Chest_HV, Super_Chest_EV, Super_Chest_IV, + + Long_Distance_Pipeline_Fluid, + Long_Distance_Pipeline_Item, + + Long_Distance_Pipeline_Fluid_Pipe, + Long_Distance_Pipeline_Item_Pipe, NULL, Cover_RedstoneTransmitterExternal, diff --git a/src/main/java/gregtech/api/enums/Textures.java b/src/main/java/gregtech/api/enums/Textures.java index e0d0ce6abe..213f9bbc14 100644 --- a/src/main/java/gregtech/api/enums/Textures.java +++ b/src/main/java/gregtech/api/enums/Textures.java @@ -45,6 +45,14 @@ public class Textures { OVERLAY_SCHEST, OVERLAY_STANK, + + OVERLAY_PIPELINE_FLUID_BACK, + OVERLAY_PIPELINE_FLUID_FRONT, + OVERLAY_PIPELINE_FLUID_SIDE, + + OVERLAY_PIPELINE_ITEM_BACK, + OVERLAY_PIPELINE_ITEM_FRONT, + OVERLAY_PIPELINE_ITEM_SIDE, MACHINE_CASING_TANK_1, MACHINE_CASING_TANK_2, -- cgit From 82edef8ca76f8f594bf10137cbe6831b15b2ccf1 Mon Sep 17 00:00:00 2001 From: Jason Mitchell Date: Sat, 26 Dec 2020 17:16:01 -0800 Subject: Add ~~stolen~~ borrowed textures for long distance pipes --- src/main/java/gregtech/api/enums/Textures.java | 3 +++ 1 file changed, 3 insertions(+) (limited to 'src/main/java/gregtech/api/enums') diff --git a/src/main/java/gregtech/api/enums/Textures.java b/src/main/java/gregtech/api/enums/Textures.java index 213f9bbc14..18203faed1 100644 --- a/src/main/java/gregtech/api/enums/Textures.java +++ b/src/main/java/gregtech/api/enums/Textures.java @@ -53,6 +53,9 @@ public class Textures { OVERLAY_PIPELINE_ITEM_BACK, OVERLAY_PIPELINE_ITEM_FRONT, OVERLAY_PIPELINE_ITEM_SIDE, + + LONG_DISTANCE_PIPE_FLUID, + LONG_DISTANCE_PIPE_ITEM, MACHINE_CASING_TANK_1, MACHINE_CASING_TANK_2, -- cgit From 22f3d1c43df7d08e4a7815cff5dffb2b02e5bdf0 Mon Sep 17 00:00:00 2001 From: DreamMasterXXL Date: Sun, 27 Dec 2020 13:17:46 +0100 Subject: fix (cherry picked from commit c36d2276a0a192cfcdee8e965770fcf04d2ef08f) --- src/main/java/gregtech/api/enums/ItemList.java | 3 --- 1 file changed, 3 deletions(-) (limited to 'src/main/java/gregtech/api/enums') diff --git a/src/main/java/gregtech/api/enums/ItemList.java b/src/main/java/gregtech/api/enums/ItemList.java index 55ea5cfa13..5336e93068 100644 --- a/src/main/java/gregtech/api/enums/ItemList.java +++ b/src/main/java/gregtech/api/enums/ItemList.java @@ -1221,9 +1221,6 @@ public enum ItemList implements IItemContainer { Machine_HV_Massfab, Machine_EV_Massfab, Machine_IV_Massfab, - Machine_LuV_Massfab, - Machine_ZPM_Massfab, - Machine_UV_Massfab, Machine_LV_Amplifab, Machine_MV_Amplifab, -- cgit From e141a558bbf5fa37c75d1420691fcf969e5759c8 Mon Sep 17 00:00:00 2001 From: bartimaeusnek <33183715+bartimaeusnek@users.noreply.github.com> Date: Mon, 28 Dec 2020 04:28:06 +0100 Subject: Refactor + Added 2 more coils + Improved Tooltips --- .../java/gregtech/api/enums/HeatingCoilLevel.java | 59 ++++++++++++---------- src/main/java/gregtech/api/enums/ItemList.java | 2 + src/main/java/gregtech/api/enums/Textures.java | 2 + 3 files changed, 35 insertions(+), 28 deletions(-) (limited to 'src/main/java/gregtech/api/enums') diff --git a/src/main/java/gregtech/api/enums/HeatingCoilLevel.java b/src/main/java/gregtech/api/enums/HeatingCoilLevel.java index 7b1b3f7334..56c09dccbe 100644 --- a/src/main/java/gregtech/api/enums/HeatingCoilLevel.java +++ b/src/main/java/gregtech/api/enums/HeatingCoilLevel.java @@ -1,64 +1,67 @@ package gregtech.api.enums; public enum HeatingCoilLevel { - None ( 0L), - // ULV ( 901L), //Not implemented - LV ( 1_801L), //Cupronickel - MV ( 2_701L), //KANTHAL - HV ( 3_601L), //NICHROME - EV ( 4_501L), //TUNGSTENSTEEL - IV ( 5_401L), //HSSG - // LuV ( 6_301L), //Not implemented - ZPM ( 7_201L), //NAQUADAH - UV ( 9_001L), //NAQUADAHALLOY - UHV ( 9_901L), //ELECTRUMFLUX - UEV (10_801L), //AWAKENEDDRACONIUM - UIV (11_701L), - + None, // 0 + ULV, //Not implemented 901 + LV, //Cupronickel 1801 + MV, //KANTHAL 2701 + HV, //NICHROME 3601 + EV, //TUNGSTENSTEEL 4501 + IV, //HSSG 5401 + LuV, //HSSS 6301 + ZPM, //NAQUADAH 7201 + UV, //NAQUADAHALLOY 8101 + UHV, //TRINIUM 9001 + UEV, //ELECTRUMFLUX 9901 + UIV, //AWAKENEDDRACONIUM 10801 //Not Implemented yet - UMV (12_601L), - UXV (13_501L), - OpV (14_401L), - MAX (15_301L), + UMV, + UXV, + OpV, + MAX, ; - private final long HEAT; - - HeatingCoilLevel(long heat) { - this.HEAT = heat; + /** + * @return the coil heat, used for recipes in the Electronic Blast Furnace for example + */ + public String getTierName() { + if (this.ordinal() < 1 || (this.ordinal()-1) >= GT_Values.VN.length) + return "ERROR!"; + return GT_Values.VN[this.ordinal() - 1]; } + /** * @return the coil heat, used for recipes in the Electronic Blast Furnace for example */ public long getHeat() { - return HEAT; + return this == None ? 0 : 1L + (900L * this.ordinal()); } /** * @return the coil tier, used for discount in the Pyrolyse Ofen for example */ public byte getTier() { - return (byte) (this.ordinal() - 1); + return (byte) (this.ordinal() - 2); } /** * @return the coil Level, used for Parallels in the Multi Furnace for example */ public byte getLevel() { - return (byte) Math.max(16, 2 << (this.ordinal() -1)); + return (byte) Math.max(16, 2 << (this.ordinal() - 2)); } /** * @return the coil Discount, used for discount in the Multi Furnace for example */ public byte getCostDiscount() { - return (byte) Math.min(1, 2 << (this.ordinal() -1 -4)); //-1 bcs. of none, -4 = offset + return (byte) Math.min(1, 2 << (this.ordinal() - 1 - 6)); //-1 bcs. of none, -4 = offset } public static HeatingCoilLevel getFromTier(byte tier){ if (tier < 0 || tier > HeatingCoilLevel.values().length -1) return HeatingCoilLevel.None; - return HeatingCoilLevel.values()[tier+1]; + return HeatingCoilLevel.values()[tier+2]; } -} +} \ No newline at end of file diff --git a/src/main/java/gregtech/api/enums/ItemList.java b/src/main/java/gregtech/api/enums/ItemList.java index 420c371c40..8fb41a2923 100644 --- a/src/main/java/gregtech/api/enums/ItemList.java +++ b/src/main/java/gregtech/api/enums/ItemList.java @@ -1440,7 +1440,9 @@ public enum ItemList implements IItemContainer { Casing_Coil_Nichrome, Casing_Coil_TungstenSteel, Casing_Coil_HSSG, + Casing_Coil_HSSS, Casing_Coil_Naquadah, + Casing_Coil_Trinium, Casing_Coil_NaquadahAlloy, Casing_Coil_ElectrumFlux, Casing_Coil_AwakenedDraconium, diff --git a/src/main/java/gregtech/api/enums/Textures.java b/src/main/java/gregtech/api/enums/Textures.java index e0d0ce6abe..8f78784caf 100644 --- a/src/main/java/gregtech/api/enums/Textures.java +++ b/src/main/java/gregtech/api/enums/Textures.java @@ -283,6 +283,8 @@ public class Textures { MACHINE_COIL_NAQUADAHALLOY, MACHINE_COIL_ELECTRUMFLUX, MACHINE_COIL_AWAKENEDDRACONIUM, + MACHINE_COIL_HSSS, + MACHINE_COIL_TRINIUM, BOILER_SOLAR, BOILER_FRONT, -- cgit From be14472f02fe9244a990629c930ec78e4caa1183 Mon Sep 17 00:00:00 2001 From: bartimaeusnek <33183715+bartimaeusnek@users.noreply.github.com> Date: Mon, 28 Dec 2020 15:27:09 +0100 Subject: Added Tier Colors --- src/main/java/gregtech/api/enums/GT_Values.java | 11 +++++++++++ src/main/java/gregtech/api/enums/HeatingCoilLevel.java | 6 ++++-- 2 files changed, 15 insertions(+), 2 deletions(-) (limited to 'src/main/java/gregtech/api/enums') diff --git a/src/main/java/gregtech/api/enums/GT_Values.java b/src/main/java/gregtech/api/enums/GT_Values.java index 66b2e8a08f..8545f42bea 100644 --- a/src/main/java/gregtech/api/enums/GT_Values.java +++ b/src/main/java/gregtech/api/enums/GT_Values.java @@ -4,6 +4,7 @@ import gregtech.api.interfaces.internal.IGT_Mod; import gregtech.api.interfaces.internal.IGT_RecipeAdder; import gregtech.api.net.IGT_NetworkHandler; import net.minecraft.item.ItemStack; +import net.minecraft.util.EnumChatFormatting; import net.minecraft.world.World; import net.minecraftforge.fluids.FluidStack; import net.minecraftforge.oredict.OreDictionary; @@ -126,6 +127,16 @@ public class GT_Values { "Ultimate High Voltage", "Ultimate Extreme Voltage", "Ultimate Insane Voltage", "Ultimate Mega Voltage", "Ultimate Extended Mega Voltage", "Overpowered Voltage", "Maximum Voltage"}; + + public static final String[] TIER_COLORS = + new String[]{ + EnumChatFormatting.RED.toString(), EnumChatFormatting.GRAY.toString(), EnumChatFormatting.AQUA.toString(), + EnumChatFormatting.GOLD.toString(), EnumChatFormatting.DARK_PURPLE.toString(), EnumChatFormatting.DARK_BLUE.toString(), + EnumChatFormatting.LIGHT_PURPLE.toString(), EnumChatFormatting.WHITE.toString(), EnumChatFormatting.DARK_AQUA.toString(), + EnumChatFormatting.DARK_RED.toString(), EnumChatFormatting.GREEN.toString(), EnumChatFormatting.DARK_GREEN.toString(), + EnumChatFormatting.YELLOW.toString(), EnumChatFormatting.UNDERLINE.toString(), EnumChatFormatting.BOLD.toString(), + EnumChatFormatting.OBFUSCATED.toString()}; + /** * This way it is possible to have a Call Hierarchy of NullPointers in ItemStack based Functions, and also because most of the time I don't know what kind of Data Type the "null" stands for */ diff --git a/src/main/java/gregtech/api/enums/HeatingCoilLevel.java b/src/main/java/gregtech/api/enums/HeatingCoilLevel.java index 56c09dccbe..db94a3fe62 100644 --- a/src/main/java/gregtech/api/enums/HeatingCoilLevel.java +++ b/src/main/java/gregtech/api/enums/HeatingCoilLevel.java @@ -1,5 +1,7 @@ package gregtech.api.enums; +import net.minecraft.util.EnumChatFormatting; + public enum HeatingCoilLevel { None, // 0 ULV, //Not implemented 901 @@ -22,12 +24,12 @@ public enum HeatingCoilLevel { ; /** - * @return the coil heat, used for recipes in the Electronic Blast Furnace for example + * @return the Coils Tier Name */ public String getTierName() { if (this.ordinal() < 1 || (this.ordinal()-1) >= GT_Values.VN.length) return "ERROR!"; - return GT_Values.VN[this.ordinal() - 1]; + return GT_Values.TIER_COLORS[this.ordinal() - 1] + GT_Values.VOLTAGE_NAMES[this.ordinal() - 1] + EnumChatFormatting.RESET; } /** -- cgit From b3dee829ce94149719485a5ea045ffa88582936b Mon Sep 17 00:00:00 2001 From: bartimaeusnek <33183715+bartimaeusnek@users.noreply.github.com> Date: Tue, 29 Dec 2020 13:38:10 +0100 Subject: Fixed Min/Max switcheroo --- src/main/java/gregtech/api/enums/HeatingCoilLevel.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/main/java/gregtech/api/enums') diff --git a/src/main/java/gregtech/api/enums/HeatingCoilLevel.java b/src/main/java/gregtech/api/enums/HeatingCoilLevel.java index db94a3fe62..f4b28ede2b 100644 --- a/src/main/java/gregtech/api/enums/HeatingCoilLevel.java +++ b/src/main/java/gregtech/api/enums/HeatingCoilLevel.java @@ -50,14 +50,14 @@ public enum HeatingCoilLevel { * @return the coil Level, used for Parallels in the Multi Furnace for example */ public byte getLevel() { - return (byte) Math.max(16, 2 << (this.ordinal() - 2)); + return (byte) Math.min(16, 2 << (this.ordinal() - 2)); } /** * @return the coil Discount, used for discount in the Multi Furnace for example */ public byte getCostDiscount() { - return (byte) Math.min(1, 2 << (this.ordinal() - 1 - 6)); //-1 bcs. of none, -4 = offset + return (byte) Math.max(1, 2 << (this.ordinal() - 1 - 6)); //-1 bcs. of none, -4 = offset } public static HeatingCoilLevel getFromTier(byte tier){ -- cgit