diff options
| author | Sphyix <masifede2@gmail.com> | 2021-11-21 12:58:56 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-11-21 12:58:56 +0100 |
| commit | abeecd2da02c7d38cb1c5b6e2fd5517c6f8a994b (patch) | |
| tree | 64c5960fc9a0e9c7a4bb368adfb6fa6e9b5aa071 /src/main/java/gregtech/api | |
| parent | 01c243ee9f58c3f64fc883f931ad9a81813f894f (diff) | |
| parent | 81f0b4801dfb0bd2d2a863e7a60f27af0daba463 (diff) | |
| download | GT5-Unofficial-abeecd2da02c7d38cb1c5b6e2fd5517c6f8a994b.tar.gz GT5-Unofficial-abeecd2da02c7d38cb1c5b6e2fd5517c6f8a994b.tar.bz2 GT5-Unofficial-abeecd2da02c7d38cb1c5b6e2fd5517c6f8a994b.zip | |
Merge branch 'GTNewHorizons:experimental' into experimental
Diffstat (limited to 'src/main/java/gregtech/api')
51 files changed, 3553 insertions, 495 deletions
diff --git a/src/main/java/gregtech/api/GregTech_API.java b/src/main/java/gregtech/api/GregTech_API.java index 2b9e9297e3..ff875c4884 100644 --- a/src/main/java/gregtech/api/GregTech_API.java +++ b/src/main/java/gregtech/api/GregTech_API.java @@ -113,7 +113,7 @@ public class GregTech_API { /** * The List of Cover Behaviors for the Covers */ - public static final Map<GT_ItemStack, GT_CoverBehavior> sCoverBehaviors = new ConcurrentHashMap<>(); + public static final Map<GT_ItemStack, GT_CoverBehaviorBase<?>> sCoverBehaviors = new ConcurrentHashMap<>(); /** * The List of Circuit Behaviors for the Redstone Circuit Block */ @@ -353,6 +353,7 @@ public class GregTech_API { sSoundList.put(106, aTextIC2Lower + ":" + "tools.drill.DrillSoft"); sSoundList.put(107, aTextIC2Lower + ":" + "tools.drill.DrillHard"); sSoundList.put(108, aTextIC2Lower + ":" + "tools.ODScanner"); + sSoundList.put(109, aTextIC2Lower + ":" + "tools.InsulationCutters"); sSoundList.put(200, aTextIC2Lower + ":" + "machines.ExtractorOp"); sSoundList.put(201, aTextIC2Lower + ":" + "machines.MaceratorOp"); @@ -614,6 +615,10 @@ public class GregTech_API { } public static void registerCover(ItemStack aStack, ITexture aCover, GT_CoverBehavior aBehavior) { + registerCover(aStack, aCover, (GT_CoverBehaviorBase<?>) aBehavior); + } + + public static void registerCover(ItemStack aStack, ITexture aCover, GT_CoverBehaviorBase<?> aBehavior) { if (!sCovers.containsKey(new GT_ItemStack(aStack))) sCovers.put(new GT_ItemStack(aStack), aCover == null || !aCover.isValidTexture() ? Textures.BlockIcons.ERROR_RENDERING[0] : aCover); if (aBehavior != null) @@ -621,6 +626,10 @@ public class GregTech_API { } public static void registerCoverBehavior(ItemStack aStack, GT_CoverBehavior aBehavior) { + registerCoverBehavior(aStack, (GT_CoverBehaviorBase<?>) aBehavior); + } + + public static void registerCoverBehavior(ItemStack aStack, GT_CoverBehaviorBase<?> aBehavior) { sCoverBehaviors.put(new GT_ItemStack(aStack), aBehavior == null ? sDefaultBehavior : aBehavior); } @@ -630,6 +639,15 @@ public class GregTech_API { * @param aBehavior can be null */ public static void registerCover(Collection<ItemStack> aStackList, ITexture aCover, GT_CoverBehavior aBehavior) { + registerCover(aStackList, aCover, aBehavior); + } + + /** + * Registers multiple Cover Items. I use that for the OreDict Functionality. + * + * @param aBehavior can be null + */ + public static void registerCover(Collection<ItemStack> aStackList, ITexture aCover, GT_CoverBehaviorBase<?> aBehavior) { if (aCover.isValidTexture()) aStackList.forEach(tStack -> GregTech_API.registerCover(tStack, aCover, aBehavior)); } @@ -637,10 +655,24 @@ public class GregTech_API { /** * returns a Cover behavior, guaranteed to not return null after preload */ + @Deprecated public static GT_CoverBehavior getCoverBehavior(ItemStack aStack) { if (aStack == null || aStack.getItem() == null) return sNoBehavior; - GT_CoverBehavior rCover = sCoverBehaviors.get(new GT_ItemStack(aStack)); + GT_CoverBehaviorBase<?> rCover = sCoverBehaviors.get(new GT_ItemStack(aStack)); + if (!(rCover instanceof GT_CoverBehavior) || rCover == null) + return sDefaultBehavior; + return (GT_CoverBehavior) rCover; + } + + /** + * returns a Cover behavior, guaranteed to not return null after preload + * @return + */ + public static GT_CoverBehaviorBase<?> getCoverBehaviorNew(ItemStack aStack) { + if (aStack == null || aStack.getItem() == null) + return sNoBehavior; + GT_CoverBehaviorBase<?> rCover = sCoverBehaviors.get(new GT_ItemStack(aStack)); if (rCover == null) return sDefaultBehavior; return rCover; @@ -649,6 +681,7 @@ public class GregTech_API { /** * returns a Cover behavior, guaranteed to not return null */ + @Deprecated public static GT_CoverBehavior getCoverBehavior(int aStack) { if (aStack == 0) return sNoBehavior; @@ -656,6 +689,15 @@ public class GregTech_API { } /** + * returns a Cover behavior, guaranteed to not return null + */ + public static GT_CoverBehaviorBase<?> getCoverBehaviorNew(int aStack) { + if (aStack == 0) + return sNoBehavior; + return getCoverBehaviorNew(GT_Utility.intToStack(aStack)); + } + + /** * Register a Wrench to be usable on GregTech Machines. * The Wrench MUST have some kind of Durability unlike certain Buildcraft Wrenches. * <p/> diff --git a/src/main/java/gregtech/api/enums/GT_Values.java b/src/main/java/gregtech/api/enums/GT_Values.java index f30360ca58..6505c34423 100644 --- a/src/main/java/gregtech/api/enums/GT_Values.java +++ b/src/main/java/gregtech/api/enums/GT_Values.java @@ -272,6 +272,10 @@ public class GT_Values { */ public static boolean debugEntityCramming = false; /** + * Debug parameter for {@link gregtech.api.util.GT_ChunkAssociatedData} + */ + public static boolean debugWorldData = false; + /** * Number of ticks between sending sound packets to clients for electric machines. Default is 1.5 seconds. Trying to mitigate lag and FPS drops. */ public static int ticksBetweenSounds = 30; diff --git a/src/main/java/gregtech/api/enums/ItemList.java b/src/main/java/gregtech/api/enums/ItemList.java index 862985faca..8dcf5fe129 100644 --- a/src/main/java/gregtech/api/enums/ItemList.java +++ b/src/main/java/gregtech/api/enums/ItemList.java @@ -354,6 +354,7 @@ public enum ItemList implements IItemContainer { Schematic_2by2, Schematic_3by3, Schematic_Dust, + Circuit_Integrated, Circuit_Board_Basic, Circuit_Board_Advanced, @@ -374,14 +375,12 @@ public enum ItemList implements IItemContainer { Circuit_Ultimate, Circuit_Biowarecomputer, Circuit_Biowaresupercomputer, - Rotor_LV, + + Rotor_LV,//these aren't actually used Rotor_MV, Rotor_HV, Rotor_EV, Rotor_IV, - Rotor_LuV, - Rotor_ZPM, - Rotor_UV, Electric_Motor_LV, Electric_Motor_MV, @@ -393,6 +392,11 @@ public enum ItemList implements IItemContainer { Electric_Motor_UV, Electric_Motor_UHV, Electric_Motor_UEV, + Electric_Motor_UIV, + Electric_Motor_UMV, + Electric_Motor_UXV, + Electric_Motor_OpV, + Electric_Motor_MAX, Electric_Pump_LV, Electric_Pump_MV, @@ -404,12 +408,26 @@ public enum ItemList implements IItemContainer { Electric_Pump_UV, Electric_Pump_UHV, Electric_Pump_UEV, + Electric_Pump_UIV, + Electric_Pump_UMV, + Electric_Pump_UXV, + Electric_Pump_OpV, + Electric_Pump_MAX, Steam_Valve_LV, Steam_Valve_MV, Steam_Valve_HV, Steam_Valve_EV, Steam_Valve_IV, + + FluidRegulator_LV, + FluidRegulator_MV, + FluidRegulator_HV, + FluidRegulator_EV, + FluidRegulator_IV, + FluidRegulator_LuV, + FluidRegulator_ZPM, + FluidRegulator_UV, Conveyor_Module_LV, Conveyor_Module_MV, @@ -421,6 +439,11 @@ public enum ItemList implements IItemContainer { Conveyor_Module_UV, Conveyor_Module_UHV, Conveyor_Module_UEV, + Conveyor_Module_UIV, + Conveyor_Module_UMV, + Conveyor_Module_UXV, + Conveyor_Module_OpV, + Conveyor_Module_MAX, Electric_Piston_LV, Electric_Piston_MV, @@ -432,17 +455,11 @@ public enum ItemList implements IItemContainer { Electric_Piston_UV, Electric_Piston_UHV, Electric_Piston_UEV, - - Field_Generator_LV, - Field_Generator_MV, - Field_Generator_HV, - Field_Generator_EV, - Field_Generator_IV, - Field_Generator_LuV, - Field_Generator_ZPM, - Field_Generator_UV, - Field_Generator_UHV, - Field_Generator_UEV, + Electric_Piston_UIV, + Electric_Piston_UMV, + Electric_Piston_UXV, + Electric_Piston_OpV, + Electric_Piston_MAX, Robot_Arm_LV, Robot_Arm_MV, @@ -454,6 +471,11 @@ public enum ItemList implements IItemContainer { Robot_Arm_UV, Robot_Arm_UHV, Robot_Arm_UEV, + Robot_Arm_UIV, + Robot_Arm_UMV, + Robot_Arm_UXV, + Robot_Arm_OpV, + Robot_Arm_MAX, Emitter_LV, Emitter_MV, @@ -465,6 +487,11 @@ public enum ItemList implements IItemContainer { Emitter_UV, Emitter_UHV, Emitter_UEV, + Emitter_UIV, + Emitter_UMV, + Emitter_UXV, + Emitter_OpV, + Emitter_MAX, Sensor_LV, Sensor_MV, @@ -476,7 +503,28 @@ public enum ItemList implements IItemContainer { Sensor_UV, Sensor_UHV, Sensor_UEV, + Sensor_UIV, + Sensor_UMV, + Sensor_UXV, + Sensor_OpV, + Sensor_MAX, + Field_Generator_LV, + Field_Generator_MV, + Field_Generator_HV, + Field_Generator_EV, + Field_Generator_IV, + Field_Generator_LuV, + Field_Generator_ZPM, + Field_Generator_UV, + Field_Generator_UHV, + Field_Generator_UEV, + Field_Generator_UIV, + Field_Generator_UMV, + Field_Generator_UXV, + Field_Generator_OpV, + Field_Generator_MAX, + Battery_Hull_LV, Battery_Hull_MV, Battery_Hull_HV, @@ -780,6 +828,7 @@ public enum ItemList implements IItemContainer { Casing_Grate, Casing_Vent, Casing_RadiationProof, + Casing_AdvancedRadiationProof, Casing_Firebox_Bronze, Casing_Firebox_Steel, Casing_Firebox_TungstenSteel, @@ -792,6 +841,9 @@ public enum ItemList implements IItemContainer { Casing_Firebox_Titanium, Casing_MiningNeutronium, Casing_MiningBlackPlutonium, + Casing_Advanced_Rhodium_Palladium, + Casing_Advanced_Iridium, + Casing_Magical, Hull_ULV, Hull_LV, @@ -1562,14 +1614,6 @@ public enum ItemList implements IItemContainer { Block_Powderbarrel, GelledToluene, - FluidRegulator_LV, - FluidRegulator_MV, - FluidRegulator_HV, - FluidRegulator_EV, - FluidRegulator_IV, - FluidRegulator_LuV, - FluidRegulator_ZPM, - FluidRegulator_UV, FluidFilter, ItemFilter_Export, ItemFilter_Import, @@ -1584,15 +1628,23 @@ public enum ItemList implements IItemContainer { Block_MSSFUEL, SFMixture, MSFMixture, + Depleted_Naquadah_1, Depleted_Naquadah_2, Depleted_Naquadah_4, NaquadahCell_1, NaquadahCell_2, NaquadahCell_4, + Depleted_MNq_1, + Depleted_MNq_2, + Depleted_MNq_4, + MNqCell_1, + MNqCell_2, + MNqCell_4, + Hatch_AutoMaintenance, - Machine_Multi_Cleanroom, + Circuit_Board_Coated, Circuit_Board_Coated_Basic, Circuit_Board_Phenolic, @@ -1722,6 +1774,7 @@ public enum ItemList implements IItemContainer { Machine_LuV_CircuitAssembler, Machine_ZPM_CircuitAssembler, Machine_UV_CircuitAssembler, + Circuit_Integrated_Good, Machine_IV_LightningRod, Machine_HV_LightningRod, @@ -1738,15 +1791,8 @@ public enum ItemList implements IItemContainer { UV_Coil, UHV_Coil, - Depleted_MNq_1, - Depleted_MNq_2, - Depleted_MNq_4, - - MNqCell_1, - MNqCell_2, - MNqCell_4, - VOLUMETRIC_FLASK; + public static final ItemList[] DYE_ONLY_ITEMS = { Color_00, diff --git a/src/main/java/gregtech/api/enums/Materials.java b/src/main/java/gregtech/api/enums/Materials.java index dee3363245..bb86c7ea4e 100644 --- a/src/main/java/gregtech/api/enums/Materials.java +++ b/src/main/java/gregtech/api/enums/Materials.java @@ -44,7 +44,7 @@ public class Materials implements IColorModulationContainer, ISubTagContainer { /** * Direct Elements */ - public static Materials Aluminium = new Materials( 19, TextureSet.SET_DULL , 10.0F, 128, 2, 1|2 |8 |32|64|128 , 128, 200, 240, 0, "Aluminium" , "Aluminium" , 0, 0, 933, 1700, true, false, 3, 1, 1, Dyes.dyeLightBlue , Element.Al , Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.VOLATUS, 1))); + public static Materials Aluminium = new Materials( 19, TextureSet.SET_DULL , 10.0F, 128, 2, 1|2 |8 |32|64|128 , 128, 200, 240, 0, "Aluminium" , "Aluminium" , 0, 0, 933, 1700, true, false, 3, 1, 1, Dyes.dyeLightBlue , Element.Al , Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.VOLATUS, 1))).disableAutoGeneratedBlastFurnaceRecipes(); public static Materials Americium = new Materials( 103, TextureSet.SET_METALLIC , 1.0F, 0, 3, 1|2 |8 |32 , 200, 200, 200, 0, "Americium" , "Americium" , 0, 0, 1449, 0, false, false, 3, 1, 1, Dyes.dyeLightGray , Element.Am , Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.RADIO, 1))); public static Materials Antimony = new Materials( 58, TextureSet.SET_SHINY , 1.0F, 0, 2, 1|2 |8 |32 , 220, 220, 240, 0, "Antimony" , "Antimony" , 0, 0, 903, 0, false, false, 2, 1, 1, Dyes.dyeLightGray , Element.Sb , Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.AQUA, 1))); public static Materials Argon = new Materials( 24, TextureSet.SET_FLUID , 1.0F, 0, 2, 16|32 , 0, 255, 0, 240, "Argon" , "Argon" , 0, 0, 83, 0, false, true, 5, 1, 1, Dyes.dyeGreen , Element.Ar , Arrays.asList(new TC_AspectStack(TC_Aspects.AER, 2))); @@ -53,35 +53,35 @@ public class Materials implements IColorModulationContainer, ISubTagContainer { public static Materials Beryllium = new Materials( 8, TextureSet.SET_METALLIC , 14.0F, 64, 2, 1|2 |8 |32|64 , 100, 180, 100, 0, "Beryllium" , "Beryllium" , 0, 0, 1560, 0, false, false, 6, 1, 1, Dyes.dyeGreen , Element.Be , Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.LUCRUM, 1))); public static Materials Bismuth = new Materials( 90, TextureSet.SET_METALLIC , 6.0F, 64, 1, 1|2 |8 |32|64|128 , 100, 160, 160, 0, "Bismuth" , "Bismuth" , 0, 0, 544, 0, false, false, 2, 1, 1, Dyes.dyeCyan , Element.Bi , Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.INSTRUMENTUM, 1))); public static Materials Boron = new Materials( 9, TextureSet.SET_DULL , 1.0F, 0, 2, 1|32 , 210, 250, 210, 0, "Boron" , "Boron" , 0, 0, 2349, 0, false, false, 1, 1, 1, Dyes.dyeWhite , Element.B , Arrays.asList(new TC_Aspects.TC_AspectStack(TC_Aspects.VITREUS, 3))); - public static Materials Caesium = new Materials( 62, TextureSet.SET_METALLIC , 1.0F, 0, 2, 1|2 |8 |32 , 255, 255, 255, 0, "Caesium" , "Caesium" , 0, 0, 301, 0, false, false, 4, 1, 1, Dyes._NULL , Element.Cs , Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.RADIO, 1))); + public static Materials Caesium = new Materials( 62, TextureSet.SET_METALLIC , 1.0F, 0, 2, 1|2 |8 |32 , 176, 196, 222, 0, "Caesium" , "Caesium" , 0, 0, 301, 0, false, false, 4, 1, 1, Dyes._NULL , Element.Cs , Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.RADIO, 1))); public static Materials Calcium = new Materials( 26, TextureSet.SET_METALLIC , 1.0F, 0, 2, 1 |32 , 255, 245, 245, 0, "Calcium" , "Calcium" , 0, 0, 1115, 1115, true, false, 4, 1, 1, Dyes.dyePink , Element.Ca , Arrays.asList(new TC_AspectStack(TC_Aspects.SANO, 1), new TC_AspectStack(TC_Aspects.TUTAMEN, 1))); public static Materials Carbon = new Materials( 10, TextureSet.SET_DULL , 1.0F, 64, 2, 1|2 |16|32|64|128 , 20, 20, 20, 0, "Carbon" , "Carbon" , 0, 0, 3800, 0, false, false, 2, 1, 1, Dyes.dyeBlack , Element.C , Arrays.asList(new TC_Aspects.TC_AspectStack(TC_Aspects.VITREUS, 1), new TC_AspectStack(TC_Aspects.IGNIS, 1))); public static Materials Cadmium = new Materials( 55, TextureSet.SET_SHINY , 1.0F, 0, 2, 1 |8 |32 , 50, 50, 60, 0, "Cadmium" , "Cadmium" , 0, 0, 594, 0, false, false, 3, 1, 1, Dyes.dyeGray , Element.Cd , Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 1), new TC_AspectStack(TC_Aspects.POTENTIA, 1), new TC_AspectStack(TC_Aspects.VENENUM, 1))); - public static Materials Cerium = new Materials( 65, TextureSet.SET_METALLIC , 1.0F, 0, 2, 1|2 |8 |32 , 255, 255, 255, 0, "Cerium" , "Cerium" , 0, 0, 1068, 1068, true, false, 4, 1, 1, Dyes._NULL , Element.Ce , Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.RADIO, 1))); + public static Materials Cerium = new Materials( 65, TextureSet.SET_METALLIC , 1.0F, 0, 2, 1|2 |8 |32 , 123, 212, 144, 0, "Cerium" , "Cerium" , 0, 0, 1068, 1068, true, false, 4, 1, 1, Dyes._NULL , Element.Ce , Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.RADIO, 1))); public static Materials Chlorine = new Materials( 23, TextureSet.SET_FLUID , 1.0F, 0, 2, 16|32 , 255, 255, 255, 0, "Chlorine" , "Chlorine" , 0, 0, 171, 0, false, false, 2, 1, 1, Dyes.dyeCyan , Element.Cl , Arrays.asList(new TC_AspectStack(TC_Aspects.AQUA, 2), new TC_AspectStack(TC_Aspects.PANNUS, 1))); public static Materials Chrome = new Materials( 30, TextureSet.SET_SHINY , 11.0F, 256, 3, 1|2 |8 |32|64|128 , 255, 230, 230, 0, "Chrome" , "Chrome" , 0, 0, 2180, 1700, true, false, 5, 1, 1, Dyes.dyePink , Element.Cr , Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.MACHINA, 1))); public static Materials Cobalt = new Materials( 33, TextureSet.SET_METALLIC , 8.0F, 512, 3, 1|2 |8 |32|64|128 , 80, 80, 250, 0, "Cobalt" , "Cobalt" , 0, 0, 1768, 1700, true, false, 3, 1, 1, Dyes.dyeBlue , Element.Co , Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.INSTRUMENTUM, 1))).disableAutoGeneratedBlastFurnaceRecipes(); public static Materials Copper = new Materials( 35, TextureSet.SET_SHINY , 1.0F, 0, 1, 1|2 |8 |32 |128 , 255, 100, 0, 0, "Copper" , "Copper" , 0, 0, 1357, 0, false, false, 3, 1, 1, Dyes.dyeOrange , Element.Cu , Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.PERMUTATIO, 1))); public static Materials Deuterium = new Materials( 2, TextureSet.SET_FLUID , 1.0F, 0, 2, 16|32 , 255, 255, 0, 240, "Deuterium" , "Deuterium" , 0, 0, 14, 0, false, true, 10, 1, 1, Dyes.dyeYellow , Element.D , Arrays.asList(new TC_AspectStack(TC_Aspects.AQUA, 3))); - public static Materials Dysprosium = new Materials( 73, TextureSet.SET_METALLIC , 1.0F, 0, 2, 1|2 |8 |32 , 255, 255, 255, 0, "Dysprosium" , "Dysprosium" , 0, 0, 1680, 1680, true, false, 4, 1, 1, Dyes._NULL , Element.Dy , Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 3))); + public static Materials Dysprosium = new Materials( 73, TextureSet.SET_METALLIC , 1.0F, 0, 2, 1|2 |8 |32 , 105, 209, 80, 0, "Dysprosium" , "Dysprosium" , 0, 0, 1680, 1680, true, false, 4, 1, 1, Dyes._NULL , Element.Dy , Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 3))); public static Materials Empty = new Materials( 0, TextureSet.SET_NONE , 1.0F, 0, 2, 256/*Only when needed*/ , 255, 255, 255, 255, "Empty" , "Empty" , 0, 0, -1, 0, false, true, 1, |
