aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/com/elisis/gtnhlanth/common/register
diff options
context:
space:
mode:
authorRaven Szewczyk <git@eigenraven.me>2024-07-20 15:35:26 +0100
committerGitHub <noreply@github.com>2024-07-20 21:35:26 +0700
commit8b077c28bea7bcc046be1e4b8485d69b4c245a43 (patch)
tree8601728fda54a11c894fa0a5533672ca40023af8 /src/main/java/com/elisis/gtnhlanth/common/register
parenta33bca92fbf9ec0a1d7f42f5a1a08b807739007c (diff)
downloadGT5-Unofficial-8b077c28bea7bcc046be1e4b8485d69b4c245a43.tar.gz
GT5-Unofficial-8b077c28bea7bcc046be1e4b8485d69b4c245a43.tar.bz2
GT5-Unofficial-8b077c28bea7bcc046be1e4b8485d69b4c245a43.zip
Beamline (#2619)
* Beamline * Remove hardcoded dreamcraft items and spotless * Remove logs and fix auto structure check * Remove logs and fix auto structure check * Fix typo and synchrotron high MF scaling * sa (cherry picked from commit b2796d95538a1b683b4a98bf6cb0f8fe21404fbd) * Add multi textures, add structuredesc info, remove test TC input, add synchrotron/input/output recipes * Spotless * Prevent mob spawning on casings * Fix LINAC glass requirement, make synchrotron structure less ugly, add last recipe * Spotless * Add placeholder particle textures * Add some mask recipes I missed * Spotless apply for branch lanth-beamline for #2619 (#2630) spotlessApply Co-authored-by: GitHub GTNH Actions <> * Add further error messages to LINAC and Synchrotron, fix MM & LaB6 recipes * Spotless apply for branch lanth-beamline for #2619 (#2648) spotlessApply Co-authored-by: GitHub GTNH Actions <> * Minor changes, add more multi error messages & 9x U-238 SC recipe * Spotless apply for branch lanth-beamline for #2619 (#2651) spotlessApply Co-authored-by: GitHub GTNH Actions <> * Missed a change * Spotless apply for branch lanth-beamline for #2619 (#2652) spotlessApply Co-authored-by: GitHub GTNH Actions <> * Update beamline desc * Remove comments, move coolant fluid check to Util class * Spotless * Spotless apply for branch lanth-beamline for #2619 (#2666) spotlessApply Co-authored-by: GitHub GTNH Actions <> * Fix Mu-Metal recipe output amount, tool stats for MM & LaB6 * Spotless * Fix multi hatch textures * Spotless apply for branch lanth-beamline for #2619 (#2676) spotlessApply Co-authored-by: GitHub GTNH Actions <> * Increase Synchrotron output rate eut & antenna tier scaling, in general improve output rates, buff all TC recipes' processing time * Fix misleading BL tooltip * update * remove import * Buff higher-tier wafer recipes for each IC, from a 4x to 3x increase of recipe amount per two wafer tier increases * Remove RA1 calls in beamline (#2716) * Spotless apply for branch lanth-beamline for #2619 (#2717) spotlessApply Co-authored-by: GitHub GTNH Actions <> * fix * Spotless apply for branch lanth-beamline for #2619 (#2733) spotlessApply Co-authored-by: GitHub GTNH Actions <> --------- Co-authored-by: unknown <gtandemmodding@gmail.com> Co-authored-by: Elisis <jarrad.thomson@gmail.com> Co-authored-by: Martin Robertz <dream-master@gmx.net> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Diffstat (limited to 'src/main/java/com/elisis/gtnhlanth/common/register')
-rw-r--r--src/main/java/com/elisis/gtnhlanth/common/register/LanthItemList.java157
-rw-r--r--src/main/java/com/elisis/gtnhlanth/common/register/WerkstoffMaterialPool.java174
2 files changed, 316 insertions, 15 deletions
diff --git a/src/main/java/com/elisis/gtnhlanth/common/register/LanthItemList.java b/src/main/java/com/elisis/gtnhlanth/common/register/LanthItemList.java
index 69aa026e47..1b799ac84a 100644
--- a/src/main/java/com/elisis/gtnhlanth/common/register/LanthItemList.java
+++ b/src/main/java/com/elisis/gtnhlanth/common/register/LanthItemList.java
@@ -1,19 +1,168 @@
package com.elisis.gtnhlanth.common.register;
+import java.util.HashMap;
+
+import net.minecraft.block.Block;
+import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
+import com.elisis.gtnhlanth.common.beamline.TileBeamline;
+import com.elisis.gtnhlanth.common.block.AntennaCasing;
+import com.elisis.gtnhlanth.common.block.Casing;
+import com.elisis.gtnhlanth.common.block.ShieldedAccGlass;
+import com.elisis.gtnhlanth.common.hatch.TileBusInputFocus;
+import com.elisis.gtnhlanth.common.hatch.TileHatchInputBeamline;
+import com.elisis.gtnhlanth.common.hatch.TileHatchOutputBeamline;
+import com.elisis.gtnhlanth.common.item.LanthItem;
+import com.elisis.gtnhlanth.common.item.MaskList;
+import com.elisis.gtnhlanth.common.item.ParticleItem;
+import com.elisis.gtnhlanth.common.item.PhotolithographicMask;
import com.elisis.gtnhlanth.common.tileentity.Digester;
import com.elisis.gtnhlanth.common.tileentity.DissolutionTank;
+import com.elisis.gtnhlanth.common.tileentity.LINAC;
+import com.elisis.gtnhlanth.common.tileentity.SourceChamber;
+import com.elisis.gtnhlanth.common.tileentity.Synchrotron;
+import com.elisis.gtnhlanth.common.tileentity.TargetChamber;
+
+import cpw.mods.fml.common.registry.GameRegistry;
+import gregtech.api.util.GT_LanguageManager;
public final class LanthItemList {
public static ItemStack DIGESTER;
public static ItemStack DISSOLUTION_TANK;
- public static void register() {
+ public static ItemStack LINAC;
+ public static ItemStack SOURCE_CHAMBER;
+
+ public static ItemStack SYNCHROTRON;
+
+ public static ItemStack TARGET_CHAMBER;
+
+ public static ItemStack BEAMLINE_PIPE;
+
+ public static ItemStack LUV_BEAMLINE_INPUT_HATCH;
+ public static ItemStack LUV_BEAMLINE_OUTPUT_HATCH;
+
+ public static ItemStack BEAMLINE_FOCUS_INPUT_BUS;
+
+ public static Item CAPILLARY_EXCHANGE = new LanthItem("capillary_exchange");
+
+ public static Item MM_LATTICE = new LanthItem("mm_lattice");
+
+ public static Item IRON_COATED_QUARTZ = new LanthItem("iron_quartz_plate");
+
+ public static Item SUBSTRATE_PRECURSOR = new LanthItem("substrate_precursor");
+
+ public static Item MASK_SUBSTRATE = new LanthItem("mask_substrate");
+
+ public static Item MASKED_MASK = new LanthItem("masked_mask_substrate");
+
+ public static Item ETCHED_MASK_1 = new LanthItem("etched_mask1");
+
+ public static Item SILICON_NITRIDE_MEMBRANE = new LanthItem("nitride_gold_membrane");
+
+ public static Item PARTICLE_ITEM = new ParticleItem().setUnlocalizedName("particle");
+
+ public static final Block SHIELDED_ACCELERATOR_CASING = new Casing("shielded_accelerator");
+ public static final Block SHIELDED_ACCELERATOR_GLASS = new ShieldedAccGlass();
+
+ public static final Block ELECTRODE_CASING = new Casing("electrode");
+
+ public static final Block COOLANT_DELIVERY_CASING = new Casing("coolant_delivery");
+
+ // public static final Block ANTENNA_CASING_T1 = new Casing("antenna_t1");
+ public static final Block ANTENNA_CASING_T1 = new AntennaCasing(1);
+ public static final Block ANTENNA_CASING_T2 = new AntennaCasing(2);
+
+ public static final Block FOCUS_MANIPULATION_CASING = new Casing("focus_manipulator");
+ public static final Block FOCUS_HOLDER = new Casing("focus_holder");
+
+ public static final Block TARGET_RECEPTACLE_CASING = new Casing("target_receptacle");
+ public static final Block TARGET_HOLDER = new Casing("target_holder");
+
+ public static HashMap<MaskList, Item> maskMap = new HashMap<>();
+
+ public static void registerGTMTE() {
+
+ DIGESTER = new Digester(10500, "Digester", "Digester").getStackForm(1L);
+ DISSOLUTION_TANK = new DissolutionTank(10501, "Dissolution Tank", "Dissolution Tank").getStackForm(1L);
+
+ BEAMLINE_PIPE = new TileBeamline(10502, "Beamline Pipe", "Beamline Pipe").getStackForm(1L);
+ LUV_BEAMLINE_INPUT_HATCH = new TileHatchInputBeamline(
+ 10503,
+ "LuV Beamline Input Hatch",
+ "LuV Beamline Input Hatch",
+ 6).getStackForm(1L);
+ LUV_BEAMLINE_OUTPUT_HATCH = new TileHatchOutputBeamline(
+ 10504,
+ "LuV Beamline Output Hatch",
+ "LuV Beamline Output Hatch",
+ 6).getStackForm(1L);
+
+ BEAMLINE_FOCUS_INPUT_BUS = new TileBusInputFocus(10509, "Focus Input Bus", "Focus Input Bus").getStackForm(1L);
+
+ LINAC = new LINAC(10505, "Linear Accelerator", "Linear Accelerator").getStackForm(1L);
+
+ SOURCE_CHAMBER = new SourceChamber(10506, "Source Chamber", "Source Chamber").getStackForm(1L);
+
+ SYNCHROTRON = new Synchrotron(10507, "Synchrotron", "Synchrotron").getStackForm(1L);
+
+ TARGET_CHAMBER = new TargetChamber(10508, "Target Chamber", "Target Chamber").getStackForm(1L);
+ }
+
+ public static void registerTypical() {
+
+ GameRegistry.registerItem(CAPILLARY_EXCHANGE, CAPILLARY_EXCHANGE.getUnlocalizedName());
+
+ GameRegistry.registerItem(MM_LATTICE, MM_LATTICE.getUnlocalizedName());
+
+ GameRegistry.registerItem(IRON_COATED_QUARTZ, IRON_COATED_QUARTZ.getUnlocalizedName());
+
+ GameRegistry.registerItem(MASK_SUBSTRATE, MASK_SUBSTRATE.getUnlocalizedName());
+
+ GameRegistry.registerItem(ETCHED_MASK_1, ETCHED_MASK_1.getUnlocalizedName());
+
+ GameRegistry.registerItem(SUBSTRATE_PRECURSOR, SUBSTRATE_PRECURSOR.getUnlocalizedName());
+
+ GameRegistry.registerItem(MASKED_MASK, MASKED_MASK.getUnlocalizedName());
+
+ GameRegistry.registerItem(PARTICLE_ITEM, "particle");
+
+ GameRegistry.registerBlock(SHIELDED_ACCELERATOR_CASING, SHIELDED_ACCELERATOR_CASING.getUnlocalizedName());
+
+ GameRegistry.registerBlock(ELECTRODE_CASING, ELECTRODE_CASING.getUnlocalizedName());
+
+ GameRegistry.registerBlock(COOLANT_DELIVERY_CASING, COOLANT_DELIVERY_CASING.getUnlocalizedName());
+
+ GameRegistry.registerBlock(SHIELDED_ACCELERATOR_GLASS, SHIELDED_ACCELERATOR_GLASS.getUnlocalizedName());
+
+ GameRegistry.registerBlock(ANTENNA_CASING_T1, ANTENNA_CASING_T1.getUnlocalizedName());
+
+ GameRegistry.registerBlock(ANTENNA_CASING_T2, ANTENNA_CASING_T2.getUnlocalizedName());
+
+ GameRegistry.registerBlock(FOCUS_MANIPULATION_CASING, FOCUS_MANIPULATION_CASING.getUnlocalizedName());
+
+ GameRegistry.registerBlock(FOCUS_HOLDER, FOCUS_HOLDER.getUnlocalizedName());
+
+ GameRegistry.registerBlock(TARGET_RECEPTACLE_CASING, TARGET_RECEPTACLE_CASING.getUnlocalizedName());
+
+ GameRegistry.registerBlock(TARGET_HOLDER, TARGET_HOLDER.getUnlocalizedName());
+
+ for (MaskList mask : MaskList.values()) {
+
+ String english = mask.getEnglishName();
+
+ String descSpectrum = mask.getSpectrum();
+
+ PhotolithographicMask maskItem = new PhotolithographicMask(mask.getName(), mask.getDamage(), descSpectrum);
+ GameRegistry.registerItem(maskItem, maskItem.getUnlocalizedName());
+
+ GT_LanguageManager.addStringLocalization(maskItem.getUnlocalizedName() + ".name", "Mask (" + english + ")");
+
+ maskMap.put(mask, maskItem);
+
+ }
- LanthItemList.DIGESTER = new Digester(10500, "Digester", "Digester").getStackForm(1L);
- LanthItemList.DISSOLUTION_TANK = new DissolutionTank(10501, "Dissolution Tank", "Dissolution Tank")
- .getStackForm(1L);
}
}
diff --git a/src/main/java/com/elisis/gtnhlanth/common/register/WerkstoffMaterialPool.java b/src/main/java/com/elisis/gtnhlanth/common/register/WerkstoffMaterialPool.java
index 1e45c94a0e..af7f909bdf 100644
--- a/src/main/java/com/elisis/gtnhlanth/common/register/WerkstoffMaterialPool.java
+++ b/src/main/java/com/elisis/gtnhlanth/common/register/WerkstoffMaterialPool.java
@@ -1,6 +1,7 @@
package com.elisis.gtnhlanth.common.register;
import static com.github.bartimaeusnek.bartworks.util.BW_Util.subscriptNumbers;
+import static com.github.bartimaeusnek.bartworks.util.BW_Util.superscriptNumbers;
import java.util.Arrays;
@@ -13,9 +14,12 @@ import gregtech.api.enums.TextureSet;
@SuppressWarnings({ "unchecked" })
public class WerkstoffMaterialPool implements Runnable {
+ // Current highest ID = 11_499
+
private static final int offsetID = 11_000;
private static final int offsetID2 = 11_100;
private static final int offsetID3 = 11_300;
+ private static final int offsetID3b = 11_350;
private static final int offsetID4 = 11_400;
private static final int offsetID5 = 11_460;
@@ -41,7 +45,7 @@ public class WerkstoffMaterialPool implements Runnable {
// hafnium
// synthesis
offsetID,
- TextureSet.SET_DULL);
+ TextureSet.SET_METALLIC);
public static final Werkstoff LowPurityHafnium = new Werkstoff(
new short[] { 240, 223, 208 },
@@ -50,8 +54,7 @@ public class WerkstoffMaterialPool implements Runnable {
new Werkstoff.Stats(),
Werkstoff.Types.COMPOUND,
new Werkstoff.GenerationFeatures().disable()
- .onlyDust(), // Perhaps use hafnia liquid in elemental hafnium
- // synthesis
+ .onlyDust(),
offsetID + 1,
TextureSet.SET_DULL);
@@ -62,8 +65,7 @@ public class WerkstoffMaterialPool implements Runnable {
new Werkstoff.Stats(),
Werkstoff.Types.COMPOUND,
new Werkstoff.GenerationFeatures().disable()
- .onlyDust(), // Perhaps use hafnia liquid in elemental hafnium
- // synthesis
+ .onlyDust(),
offsetID + 2,
TextureSet.SET_DULL);
@@ -116,13 +118,13 @@ public class WerkstoffMaterialPool implements Runnable {
"Zirconium",
subscriptNumbers("Zr"),
new Werkstoff.Stats().setBlastFurnace(true),
- Werkstoff.Types.COMPOUND,
+ Werkstoff.Types.ELEMENT,
new Werkstoff.GenerationFeatures().disable()
.onlyDust()
- .addMetalItems()
- .enforceUnification(),
+ .addMetalItems(),
+ // .enforceUnification(),
offsetID + 7,
- TextureSet.SET_DULL);
+ TextureSet.SET_METALLIC);
public static final Werkstoff Zirconia = new Werkstoff(
new short[] { 177, 152, 101 },
@@ -133,7 +135,7 @@ public class WerkstoffMaterialPool implements Runnable {
new Werkstoff.GenerationFeatures().disable()
.onlyDust(),
offsetID + 8,
- TextureSet.SET_DULL);
+ TextureSet.SET_SHINY);
public static final Werkstoff ZirconiumTetrachloride = new Werkstoff(
new short[] { 179, 164, 151 },
@@ -1047,6 +1049,17 @@ public class WerkstoffMaterialPool implements Runnable {
offsetID3 + 16,
TextureSet.SET_FLUID);
+ public static final Werkstoff MolybdenumTrioxide = new Werkstoff(
+ new short[] { 236, 255, 248 },
+ "Molybdenum Trioxide",
+ subscriptNumbers("MoO3"),
+ new Werkstoff.Stats(),
+ Werkstoff.Types.COMPOUND,
+ new Werkstoff.GenerationFeatures().disable()
+ .onlyDust(),
+ offsetID3 + 17,
+ TextureSet.SET_DULL);
+
// TODO Samarium Processing Line Material regist
public static final Werkstoff MuddySamariumRareEarthSolution = new Werkstoff(
@@ -1893,8 +1906,147 @@ public class WerkstoffMaterialPool implements Runnable {
// new Pair<>(Oxygen, 3),
// new Pair<>(Hydrogen, 35));
- public static void runInit() {
+ public static final Werkstoff Permalloy = new Werkstoff(
+ new short[] { 195, 230, 225 },
+ "Permalloy",
+ subscriptNumbers("Ni4FeMo"),
+ new Werkstoff.Stats().setCentrifuge(true),
+ Werkstoff.Types.MIXTURE,
+ new Werkstoff.GenerationFeatures().disable()
+ .onlyDust()
+ .addMetalItems()
+ .addMixerRecipes((short) 3)
+ .enforceUnification(),
+ offsetID3b,
+ TextureSet.SET_DULL,
+ new Pair<>(Materials.Nickel, 4),
+ new Pair<>(Materials.Iron, 1),
+ new Pair<>(Materials.Molybdenum, 1));
+
+ public static final Werkstoff MuMetal = new Werkstoff(
+ new short[] { 210, 230, 225 },
+ "Mu-metal",
+ subscriptNumbers("?NiFeCuCrMo?"),
+ new Werkstoff.Stats().setBlastFurnace(true)
+ .setCentrifuge(true)
+ .setMass(180)
+ .setSpeedOverride(3),
+ Werkstoff.Types.MIXTURE,
+ new Werkstoff.GenerationFeatures().disable()
+ .onlyDust()
+ .addMetalItems()
+ .addMultipleIngotMetalWorkingItems()
+ .addCraftingMetalWorkingItems()
+ .enforceUnification(),
+ offsetID3b + 1,
+ TextureSet.SET_METALLIC,
+ new Pair<>(WerkstoffMaterialPool.Permalloy, 9),
+ new Pair<>(Materials.Copper, 1),
+ new Pair<>(Materials.Chrome, 1));
+ public static final Werkstoff Thorium234 = new Werkstoff(
+ new short[] { 0, 40, 0 },
+ "Thorium 234",
+ superscriptNumbers("Th234"),
+ new Werkstoff.Stats().setBlastFurnace(true)
+ .setRadioactive(true),
+ Werkstoff.Types.ISOTOPE,
+ new Werkstoff.GenerationFeatures().disable()
+ .onlyDust(),
+ offsetID3b + 2,
+ TextureSet.SET_DULL);
+
+ public static final Werkstoff SiliconNitride = new Werkstoff(
+ new short[] { 132, 140, 120 },
+ "Silicon Nitride",
+ subscriptNumbers("Si3N4"),
+ new Werkstoff.Stats(),
+ Werkstoff.Types.COMPOUND,
+ new Werkstoff.GenerationFeatures().disable()
+ .onlyDust()
+ .addMetalItems()
+ .enforceUnification(),
+ offsetID3b + 3,
+ TextureSet.SET_DULL);
+
+ public static final Werkstoff Fluoroform = new Werkstoff(
+ new short[] { 0, 0, 0 },
+ "Fluoroform",
+ subscriptNumbers("CHF3"),
+ new Werkstoff.Stats().setElektrolysis(true),
+ Werkstoff.Types.COMPOUND,
+ new Werkstoff.GenerationFeatures().disable()
+ .addCells(),
+ offsetID3b + 4,
+ TextureSet.SET_FLUID,
+ new Pair<>(Materials.Carbon, 1),
+ new Pair<>(Materials.Hydrogen, 1),
+ new Pair<>(Materials.Fluorine, 3));
+
+ public static final Werkstoff FluoroformOxygenMix = new Werkstoff(
+ new short[] { 0, 0, 0 },
+ "Reactive-Ion Etching Mixture",
+ subscriptNumbers("CHF3/O2"),
+ new Werkstoff.Stats().setCentrifuge(true),
+ Werkstoff.Types.MIXTURE,
+ new Werkstoff.GenerationFeatures().disable()
+ .addCells(),
+ offsetID3b + 5,
+ TextureSet.SET_FLUID);
+
+ public static final Werkstoff BoronTrioxide = new Werkstoff(
+ new short[] { 238, 222, 209 },
+ "Boron Trioxide",
+ subscriptNumbers("B2O3"),
+ new Werkstoff.Stats().setElektrolysis(true),
+ Werkstoff.Types.COMPOUND,
+ new Werkstoff.GenerationFeatures().disable()
+ .onlyDust(),
+ offsetID3b + 6,
+ TextureSet.SET_DULL,
+ new Pair<>(Materials.Boron, 2),
+ new Pair<>(Materials.Oxygen, 3));
+
+ public static final Werkstoff BoronTrichloride = new Werkstoff(
+ new short[] { 154, 96, 208 },
+ "Boron Trichloride",
+ subscriptNumbers("BCl3"),
+ new Werkstoff.Stats().setElektrolysis(true),
+ Werkstoff.Types.COMPOUND,
+ new Werkstoff.GenerationFeatures().disable()
+ .addCells(),
+ offsetID3b + 7,
+ TextureSet.SET_FLUID,
+ new Pair<>(Materials.Boron, 1),
+ new Pair<>(Materials.Chlorine, 3));
+
+ public static final Werkstoff LanthanumHexaboride = new Werkstoff(
+ new short[] { 140, 110, 120 },
+ "Lanthanum Hexaboride",
+ subscriptNumbers("LaB6"),
+ new Werkstoff.Stats().setMass(200),
+ Werkstoff.Types.COMPOUND,
+ new Werkstoff.GenerationFeatures().disable()
+ .onlyDust()
+ .addGems()
+ .addSimpleMetalWorkingItems(),
+ offsetID3b + 8,
+ TextureSet.SET_GEM_HORIZONTAL,
+ new Pair<>(Materials.Lanthanum, 1),
+ new Pair<>(Materials.Boron, 6));
+
+ public static final Werkstoff LanthanumOxide = new Werkstoff(
+ new short[] { 105, 209, 180 },
+ "Lanthanum Oxide",
+ subscriptNumbers("La2O3"),
+ new Werkstoff.Stats(),
+ Werkstoff.Types.COMPOUND,
+ new Werkstoff.GenerationFeatures().disable()
+ .onlyDust(),
+ offsetID3b + 9,
+ TextureSet.SET_DULL);
+
+ public static void runInit() {
addSubTags();
}