aboutsummaryrefslogtreecommitdiff
path: root/src/main
diff options
context:
space:
mode:
authorbartimaeusnek <33183715+bartimaeusnek@users.noreply.github.com>2019-10-13 14:31:04 +0200
committerbartimaeusnek <33183715+bartimaeusnek@users.noreply.github.com>2019-10-13 14:31:04 +0200
commit96973ab20684ec980bd195880c1448e8ed52fae6 (patch)
treedf6d5ee5afafe91db9139a7b8055205cde9eccc6 /src/main
parentff8b4f99505ce2470231bc2b225aacea6cbd8832 (diff)
downloadGT5-Unofficial-96973ab20684ec980bd195880c1448e8ed52fae6.tar.gz
GT5-Unofficial-96973ab20684ec980bd195880c1448e8ed52fae6.tar.bz2
GT5-Unofficial-96973ab20684ec980bd195880c1448e8ed52fae6.zip
fixed BioCulture "breeding" System
+improved readability +rebalanced Rhodium (zinc loss removed, 0,8 -> 0,2 Rh per Pt) +optimised imports Signed-off-by: bartimaeusnek <33183715+bartimaeusnek@users.noreply.github.com> Former-commit-id: 2f58c0c6bba54adba05b82685e8fea830e3df468
Diffstat (limited to 'src/main')
-rw-r--r--src/main/java/com/github/bartimaeusnek/ASM/BWCoreTransformer.java1
-rw-r--r--src/main/java/com/github/bartimaeusnek/bartworks/MainMod.java2
-rw-r--r--src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/tiered/GT_MetaTileEntity_BioLab.java33
-rw-r--r--src/main/java/com/github/bartimaeusnek/bartworks/system/material/GT_Enhancement/GTMetaItemEnhancer.java1
-rw-r--r--src/main/java/com/github/bartimaeusnek/bartworks/system/material/GT_Enhancement/PlatinumSludgeOverHaul.java10
-rw-r--r--src/main/java/com/github/bartimaeusnek/bartworks/util/BW_Util.java4
-rw-r--r--src/main/java/com/github/bartimaeusnek/bartworks/util/BioCulture.java23
-rw-r--r--src/main/java/com/github/bartimaeusnek/crossmod/tectech/TecTechResearchLoader.java7
8 files changed, 46 insertions, 35 deletions
diff --git a/src/main/java/com/github/bartimaeusnek/ASM/BWCoreTransformer.java b/src/main/java/com/github/bartimaeusnek/ASM/BWCoreTransformer.java
index 9c0afeefc2..cb0f49c07b 100644
--- a/src/main/java/com/github/bartimaeusnek/ASM/BWCoreTransformer.java
+++ b/src/main/java/com/github/bartimaeusnek/ASM/BWCoreTransformer.java
@@ -25,7 +25,6 @@ package com.github.bartimaeusnek.ASM;
import net.minecraft.launchwrapper.IClassTransformer;
import org.objectweb.asm.ClassReader;
import org.objectweb.asm.ClassWriter;
-import org.objectweb.asm.Opcodes;
import org.objectweb.asm.tree.*;
import java.util.Arrays;
diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/MainMod.java b/src/main/java/com/github/bartimaeusnek/bartworks/MainMod.java
index 6fedc29f6b..dbfcf2044f 100644
--- a/src/main/java/com/github/bartimaeusnek/bartworks/MainMod.java
+++ b/src/main/java/com/github/bartimaeusnek/bartworks/MainMod.java
@@ -42,10 +42,10 @@ import com.github.bartimaeusnek.bartworks.system.log.DebugLog;
import com.github.bartimaeusnek.bartworks.system.log.STFUGTPPLOG;
import com.github.bartimaeusnek.bartworks.system.material.CircuitGeneration.CircuitImprintLoader;
import com.github.bartimaeusnek.bartworks.system.material.CircuitGeneration.CircuitPartLoader;
+import com.github.bartimaeusnek.bartworks.system.material.GT_Enhancement.PlatinumSludgeOverHaul;
import com.github.bartimaeusnek.bartworks.system.material.ThreadedLoader;
import com.github.bartimaeusnek.bartworks.system.material.Werkstoff;
import com.github.bartimaeusnek.bartworks.system.material.processingLoaders.DownTierLoader;
-import com.github.bartimaeusnek.bartworks.system.material.GT_Enhancement.PlatinumSludgeOverHaul;
import com.github.bartimaeusnek.bartworks.system.oredict.OreDictHandler;
import com.github.bartimaeusnek.bartworks.util.BWRecipes;
import com.github.bartimaeusnek.bartworks.util.BW_Util;
diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/tiered/GT_MetaTileEntity_BioLab.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/tiered/GT_MetaTileEntity_BioLab.java
index 154b2a1355..a70ad2a6e7 100644
--- a/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/tiered/GT_MetaTileEntity_BioLab.java
+++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/tiered/GT_MetaTileEntity_BioLab.java
@@ -52,6 +52,12 @@ import net.minecraftforge.fluids.FluidStack;
public class GT_MetaTileEntity_BioLab extends GT_MetaTileEntity_BasicMachine {
private static final String MGUINAME = "BW.GUI.BioLab.png";
+ private static final int DNA_EXTRACTION_MODULE = 0;
+ private static final int PCR_THERMOCYCLE_MODULE = 1;
+ private static final int PLASMID_SYNTHESIS_MODULE = 2;
+ private static final int TRANSFORMATION_MODULE = 3;
+ private static final int CLONAL_CELLULAR_SYNTHESIS_MODULE = 4;
+ private static final int INCUBATION_MODULE = 5;
public GT_MetaTileEntity_BioLab(int aID, String aName, String aNameRegional, int aTier) {
super(aID, aName, aNameRegional, aTier, 1, (String) null, 6, 2, GT_MetaTileEntity_BioLab.MGUINAME, null, new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/fluid_extractor/OVERLAY_SIDE_ACTIVE")), new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/fluid_extractor/OVERLAY_SIDE")), new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/microwave/OVERLAY_FRONT_ACTIVE")), new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/microwave/OVERLAY_FRONT")), new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/chemical_reactor/OVERLAY_FRONT_ACTIVE")/*this is topactive*/), new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/chemical_reactor/OVERLAY_FRONT")/*this is top*/), new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/polarizer/OVERLAY_BOTTOM_ACTIVE")), new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/polarizer/OVERLAY_BOTTOM")));
@@ -85,7 +91,7 @@ public class GT_MetaTileEntity_BioLab extends GT_MetaTileEntity_BasicMachine {
if (this.getSpecialSlot() != null && this.getSpecialSlot().getItem() instanceof LabModule) {
int damage = this.getSpecialSlot().getItemDamage();
switch (damage) {
- case 0:
+ case DNA_EXTRACTION_MODULE:
if (GT_Utility.isStackValid(this.mInventory[4]) && this.mInventory[4].getItem() instanceof LabParts && this.mInventory[4].getItemDamage() == 0 && this.mInventory[4].getTagCompound() != null && //checks if it is a Culture
GT_Utility.isStackValid(this.mInventory[5]) && this.mInventory[5].getItem() instanceof LabParts && this.mInventory[5].getItemDamage() == 1 && this.mInventory[5].getTagCompound() == null &&
GT_Utility.isStackValid(this.mInventory[6]) && this.mInventory[6].getItem() instanceof LabParts && this.mInventory[6].getItemDamage() == 3 &&
@@ -119,7 +125,7 @@ public class GT_MetaTileEntity_BioLab extends GT_MetaTileEntity_BasicMachine {
return GT_MetaTileEntity_BasicMachine.FOUND_AND_SUCCESSFULLY_USED_RECIPE;
}
break;
- case 1: {
+ case PCR_THERMOCYCLE_MODULE: {
if (GT_Utility.isStackValid(this.mInventory[4]) && this.mInventory[4].getItem() instanceof LabParts && this.mInventory[4].getItemDamage() == 1 && this.mInventory[4].getTagCompound() != null && //checks if it is a Culture
GT_Utility.isStackValid(this.mInventory[7]) && GT_Utility.areStacksEqual(this.mInventory[7], ItemList.Tool_DataOrb.get(1L)) &&
GT_Utility.isStackValid(this.mInventory[5]) && GT_Utility.areStacksEqual(this.mInventory[5], FluidLoader.BioLabFluidCells[0]) &&
@@ -159,7 +165,7 @@ public class GT_MetaTileEntity_BioLab extends GT_MetaTileEntity_BasicMachine {
}
}
break;
- case 2: {
+ case PLASMID_SYNTHESIS_MODULE: {
ItemStack inp2 = ItemList.Tool_DataOrb.get(1L);
Behaviour_DataOrb.setDataTitle(inp2, "DNA Sample");
Behaviour_DataOrb.setDataName(inp2, BioCultureLoader.BIO_DATA_BETA_LACMATASE.getName());
@@ -190,8 +196,7 @@ public class GT_MetaTileEntity_BioLab extends GT_MetaTileEntity_BasicMachine {
}
break;
-
- case 3: {
+ case TRANSFORMATION_MODULE: {
if (
GT_Utility.isStackValid(this.mInventory[4]) && GT_Utility.areStacksEqual(this.mInventory[4], BioItemList.getPetriDish(null), true) && this.mInventory[4].getTagCompound() != null &&
GT_Utility.isStackValid(this.mInventory[5]) && GT_Utility.areStacksEqual(this.mInventory[5], BioItemList.getPlasmidCell(null), true) && this.mInventory[5].getTagCompound() != null &&
@@ -208,9 +213,9 @@ public class GT_MetaTileEntity_BioLab extends GT_MetaTileEntity_BasicMachine {
this.mInventory[i].stackSize--;
}
this.mFluid.amount -= 1000;
- bioCulture.setPlasmid(BioPlasmid.convertDataToPlasmid(cultureDNABioData));
+ bioCulture = bioCulture.setPlasmid(BioPlasmid.convertDataToPlasmid(cultureDNABioData));
if (cultureDNABioData.getChance() > new XSTR().nextInt(10000)) {
- this.mOutputItems[0] = BioItemList.getPetriDish(this.checkForExisting(bioCulture));
+ this.mOutputItems[0] = BioItemList.getPetriDish(bioCulture);
}
this.mOutputItems[1] = ItemList.Cell_Universal_Fluid.get(1L);
this.calculateOverclockedNess(BW_Util.getMachineVoltageFromTier(3 + rTier + cultureDNABioData.getTier()), 500);
@@ -218,7 +223,7 @@ public class GT_MetaTileEntity_BioLab extends GT_MetaTileEntity_BasicMachine {
}
}
break;
- case 4: {
+ case CLONAL_CELLULAR_SYNTHESIS_MODULE: {
ItemStack Outp = ItemList.Tool_DataOrb.get(1L);
Behaviour_DataOrb.setDataTitle(Outp, "DNA Sample");
@@ -242,7 +247,7 @@ public class GT_MetaTileEntity_BioLab extends GT_MetaTileEntity_BasicMachine {
this.mFluid.amount -= 8000;
if (cultureDNABioData.getChance() > new XSTR().nextInt(10000)) {
BioCulture out = BioCulture.getBioCulture(BioDNA.convertDataToDNA(cultureDNABioData));
- out.setPlasmid(BioPlasmid.convertDataToPlasmid(cultureDNABioData));
+ out = out.setPlasmid(BioPlasmid.convertDataToPlasmid(cultureDNABioData));
this.mOutputItems[0] = BioItemList.getPetriDish(out);
}
this.calculateOverclockedNess(BW_Util.getMachineVoltageFromTier(3 + rTier + cultureDNABioData.getTier()), 500);
@@ -250,6 +255,7 @@ public class GT_MetaTileEntity_BioLab extends GT_MetaTileEntity_BasicMachine {
}
}
break;
+ case INCUBATION_MODULE:
default:
return super.checkRecipe(skipOC);
}
@@ -257,15 +263,6 @@ public class GT_MetaTileEntity_BioLab extends GT_MetaTileEntity_BasicMachine {
return super.checkRecipe(skipOC);
}
- private BioCulture checkForExisting(BioCulture culture) {
- if (culture == null)
- return null;
- for (BioCulture bc : BioCulture.BIO_CULTURE_ARRAY_LIST)
- if (culture.getdDNA().equals(bc.getdDNA()) && culture.getPlasmid().equals(bc.getPlasmid()))
- return bc;
- return culture;
- }
-
@Override
@SuppressWarnings("deprecation")
public String[] getDescription() {
diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/GT_Enhancement/GTMetaItemEnhancer.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/GT_Enhancement/GTMetaItemEnhancer.java
index c0f8aa51ac..3cfed71a8c 100644
--- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/GT_Enhancement/GTMetaItemEnhancer.java
+++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/GT_Enhancement/GTMetaItemEnhancer.java
@@ -8,7 +8,6 @@ import gregtech.api.enums.OrePrefixes;
import gregtech.api.util.GT_ModHandler;
import gregtech.api.util.GT_OreDictUnificator;
import gregtech.api.util.GT_Utility;
-import net.minecraft.init.Items;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraftforge.fluids.Fluid;
diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/GT_Enhancement/PlatinumSludgeOverHaul.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/GT_Enhancement/PlatinumSludgeOverHaul.java
index 6427b827f3..94e2bdf13b 100644
--- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/GT_Enhancement/PlatinumSludgeOverHaul.java
+++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/GT_Enhancement/PlatinumSludgeOverHaul.java
@@ -119,7 +119,7 @@ public class PlatinumSludgeOverHaul {
PTSaltRefined.get(dust),
PTSaltRefined.get(dust),
PTSaltRefined.get(dust),
- }, new int[]{
+ }, new int[] {
1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1500,
}, 600, 30);
GT_Values.RA.addBlastRecipe(PTSaltRefined.get(dust), GT_Utility.getIntegratedCircuit(1), null, Materials.Chlorine.getGas(87), PTMetallicPowder.get(dust), null, 200, 120, 900);
@@ -138,7 +138,7 @@ public class PlatinumSludgeOverHaul {
PDMetallicPowder.get(dust),
PDMetallicPowder.get(dust),
PDMetallicPowder.get(dust),
- }, new int[]{
+ }, new int[] {
1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1500,
}, 600, 30);
GT_Values.RA.addChemicalRecipeForBasicMachineOnly(PDRawPowder.get(dust, 2), Materials.Empty.getCells(1), FormicAcid.getFluidOrGas(4000), Materials.Ammonia.getGas(2000), Materials.Palladium.getDust(2), Materials.Ethylene.getCells(1), 250, 30);
@@ -147,7 +147,7 @@ public class PlatinumSludgeOverHaul {
//K2S2O7
// GT_Values.RA.addChemicalRecipe(Sodiumsulfate.get(dust), Materials.Potassium.getDust(2), Materials.Oxygen.getGas(3000), null, PotassiumDisulfate.get(dust,6), null, 30);
//Rh/Os/Ir/Ru
- GT_Values.RA.addBlastRecipe(PTResidue.get(dust), GT_Utility.getIntegratedCircuit(11), PotassiumDisulfate.getMolten(1440), RHSulfate.getFluidOrGas(1440), LeachResidue.get(dust), null, 200, 120, 775);
+ GT_Values.RA.addBlastRecipe(PTResidue.get(dust), GT_Utility.getIntegratedCircuit(11), PotassiumDisulfate.getMolten(360), RHSulfate.getFluidOrGas(360), LeachResidue.get(dust), null, 200, 120, 775);
//Ru
GT_Values.RA.addBlastRecipe(LeachResidue.get(dust, 10), Materials.Saltpeter.getDust(10), Materials.SaltWater.getFluid(1000), GT_ModHandler.getSteam(1000), SodiumRuthenate.get(dust, 3), IrOsLeachResidue.get(dust, 6), 200, 120, 775);
@@ -174,7 +174,7 @@ public class PlatinumSludgeOverHaul {
//Rh
GT_Values.RA.addChemicalRecipe(RHSulfate.get(cell, 11), GT_Utility.getIntegratedCircuit(1), Materials.Water.getFluid(10000), Materials.Potassium.getMolten(2000), RHSulfateSolution.get(cell, 11), LeachResidue.get(dustTiny, 10), 300, 30);
- GT_Values.RA.addChemicalRecipe(Materials.Zinc.getDust(1), null, RHSulfateSolution.getFluidOrGas(1000), null, ZincSulfate.get(dust), CrudeRhMetall.get(dust), 300);
+ GT_Values.RA.addChemicalRecipe(Materials.Zinc.getDust(1), null, RHSulfateSolution.getFluidOrGas(1000), null, ZincSulfate.get(dust,6), CrudeRhMetall.get(dust), 300);
GT_Values.RA.addBlastRecipe(CrudeRhMetall.get(dust), Materials.Salt.getDust(1), Materials.Chlorine.getGas(1000), null, RHSalt.get(dust, 3), null, 300, 120, 600);
GT_Values.RA.addMixerRecipe(RHSalt.get(dust, 10), null, null, null, Materials.Water.getFluid(2000), RHSaltSolution.getFluidOrGas(2000), null, 300, 30);
GT_Values.RA.addChemicalRecipe(SodiumNitrate.get(dust), GT_Utility.getIntegratedCircuit(1), RHSaltSolution.getFluidOrGas(1000), null, RHNitrate.get(dust), Materials.Salt.getDust(1), 300);
@@ -188,7 +188,7 @@ public class PlatinumSludgeOverHaul {
RhFilterCake.get(dust),
RhFilterCake.get(dust),
RhFilterCake.get(dust),
- }, new int[]{
+ }, new int[] {
1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1500,
}, 600, 30);
GT_Values.RA.addMixerRecipe(RhFilterCake.get(dust), null, null, null, Materials.Water.getFluid(1000), RHFilterCakeSolution.getFluidOrGas(1000), null, 300, 30);
diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/util/BW_Util.java b/src/main/java/com/github/bartimaeusnek/bartworks/util/BW_Util.java
index 0ee22cbd7d..c662655990 100644
--- a/src/main/java/com/github/bartimaeusnek/bartworks/util/BW_Util.java
+++ b/src/main/java/com/github/bartimaeusnek/bartworks/util/BW_Util.java
@@ -225,6 +225,10 @@ public class BW_Util {
return (aStack1 == null && aStack2 == null) || GT_Utility.areStacksEqual(aStack1, aStack2);
}
+ public static boolean areStacksEqualOrEachNull(ItemStack aStack1, ItemStack aStack2) {
+ return aStack1 == null || aStack2 == null || GT_Utility.areStacksEqual(aStack1, aStack2);
+ }
+
public static byte getByteFromRarity(EnumRarity rarity) {
if (rarity.equals(EnumRarity.uncommon))
return 1;
diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/util/BioCulture.java b/src/main/java/com/github/bartimaeusnek/bartworks/util/BioCulture.java
index a5b2b49d69..b591243a1e 100644
--- a/src/main/java/com/github/bartimaeusnek/bartworks/util/BioCulture.java
+++ b/src/main/java/com/github/bartimaeusnek/bartworks/util/BioCulture.java
@@ -179,16 +179,35 @@ public class BioCulture extends BioData implements IColorModulationContainer {
return this.plasmid;
}
- public void setPlasmid(BioPlasmid plasmid) {
+ public BioCulture setPlasmid(BioPlasmid plasmid) {
+ return checkForExisting(new BioCulture(this.color, this.name, this.ID, plasmid, this.dDNA, this.rarity, this.bBreedable));
+ }
+
+ private BioCulture checkForExisting(BioCulture culture) {
+ if (culture == null)
+ return null;
+ for (BioCulture bc : BioCulture.BIO_CULTURE_ARRAY_LIST)
+ if (culture.getdDNA().equals(bc.getdDNA()) && culture.getPlasmid().equals(bc.getPlasmid()))
+ return bc;
+ return culture;
+ }
+
+ public BioCulture setPlasmidUnsafe(BioPlasmid plasmid) {
this.plasmid = plasmid;
+ return this;
}
public BioDNA getdDNA() {
return this.dDNA;
}
- public void setdDNA(BioDNA dDNA) {
+ public BioCulture setdDNA(BioDNA dDNA) {
+ return checkForExisting(new BioCulture(this.color, this.name, this.ID, this.plasmid, dDNA, this.rarity, this.bBreedable));
+ }
+
+ public BioCulture setdDNAUnsafe(BioDNA dDNA) {
this.dDNA = dDNA;
+ return this;
}
@Override
diff --git a/src/main/java/com/github/bartimaeusnek/crossmod/tectech/TecTechResearchLoader.java b/src/main/java/com/github/bartimaeusnek/crossmod/tectech/TecTechResearchLoader.java
index c210a5e170..6c33818755 100644
--- a/src/main/java/com/github/bartimaeusnek/crossmod/tectech/TecTechResearchLoader.java
+++ b/src/main/java/com/github/bartimaeusnek/crossmod/tectech/TecTechResearchLoader.java
@@ -2,20 +2,13 @@ package com.github.bartimaeusnek.crossmod.tectech;
import com.github.bartimaeusnek.bartworks.common.loaders.ItemRegistry;
import com.github.bartimaeusnek.bartworks.util.BW_Util;
-import com.github.bartimaeusnek.crossmod.BartWorksCrossmod;
import com.github.technus.tectech.recipe.TT_recipeAdder;
-import com.github.technus.tectech.thing.CustomItemList;
-import cpw.mods.fml.common.registry.GameRegistry;
import gregtech.api.enums.ItemList;
import gregtech.api.enums.Materials;
import gregtech.api.enums.OrePrefixes;
import gregtech.api.util.GT_OreDictUnificator;
-import gregtech.api.util.GT_Recipe;
-import gregtech.api.util.GT_Utility;
import net.minecraftforge.fluids.FluidStack;
-import java.util.HashSet;
-
public class TecTechResearchLoader {
public static void runResearches(){