aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGlodBlock <1356392126@qq.com>2021-08-20 11:38:44 +0800
committerGlodBlock <1356392126@qq.com>2021-08-20 11:38:44 +0800
commit3534b7dd4bfe5f7bcdc030cd69e201a012aa6977 (patch)
tree53c31cd4ae71f709667e2af56604a83ff93b6e35
parent82f768f48e8964d6dee6b2b64f042ccc755bfb6a (diff)
downloadGT5-Unofficial-3534b7dd4bfe5f7bcdc030cd69e201a012aa6977.tar.gz
GT5-Unofficial-3534b7dd4bfe5f7bcdc030cd69e201a012aa6977.tar.bz2
GT5-Unofficial-3534b7dd4bfe5f7bcdc030cd69e201a012aa6977.zip
fix LEG explode when essetia is overloaded
-rw-r--r--src/main/java/GoodGenerator/Blocks/TEs/LargeEssentiaGenerator.java5
-rw-r--r--src/main/java/GoodGenerator/Items/RadioactiveItem.java30
-rw-r--r--src/main/java/GoodGenerator/Loader/Loaders.java17
-rw-r--r--src/main/java/GoodGenerator/util/ItemRefer.java1
-rw-r--r--src/main/resources/assets/goodgenerator/lang/en_US.lang1
5 files changed, 46 insertions, 8 deletions
diff --git a/src/main/java/GoodGenerator/Blocks/TEs/LargeEssentiaGenerator.java b/src/main/java/GoodGenerator/Blocks/TEs/LargeEssentiaGenerator.java
index 1631bd60f3..ec2ffc1324 100644
--- a/src/main/java/GoodGenerator/Blocks/TEs/LargeEssentiaGenerator.java
+++ b/src/main/java/GoodGenerator/Blocks/TEs/LargeEssentiaGenerator.java
@@ -18,6 +18,7 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.implementations.*;
import gregtech.api.objects.GT_RenderedTexture;
import gregtech.api.render.TextureFactory;
+import gregtech.api.util.GT_Log;
import gregtech.api.util.GT_Multiblock_Tooltip_Builder;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
@@ -249,9 +250,11 @@ public class LargeEssentiaGenerator extends GT_MetaTileEntity_MultiblockBase_EM
for (EssentiaHatch hatch: this.mEssentiaHatch){
AspectList aspects = hatch.getAspects();
for (Aspect aspect: aspects.aspects.keySet()) {
- while (EUt < EULimit && aspects.getAmount(aspect) > 0) {
+ while (EUt + getPerAspectEnergy(aspect) <= EULimit && aspects.getAmount(aspect) > 0) {
EUt += getPerAspectEnergy(aspect);
aspects.reduce(aspect, 1);
+ if (aspects.getAmount(aspect) == 0)
+ aspects.remove(aspect);
}
}
}
diff --git a/src/main/java/GoodGenerator/Items/RadioactiveItem.java b/src/main/java/GoodGenerator/Items/RadioactiveItem.java
new file mode 100644
index 0000000000..408246ba67
--- /dev/null
+++ b/src/main/java/GoodGenerator/Items/RadioactiveItem.java
@@ -0,0 +1,30 @@
+package GoodGenerator.Items;
+
+import gregtech.api.util.GT_Utility;
+import ic2.core.IC2Potion;
+import net.minecraft.creativetab.CreativeTabs;
+import net.minecraft.entity.Entity;
+import net.minecraft.entity.EntityLivingBase;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.item.ItemStack;
+import net.minecraft.potion.PotionEffect;
+import net.minecraft.world.World;
+
+public class RadioactiveItem extends MyItems{
+
+ private final int mRadio;
+
+ public RadioactiveItem(String name, CreativeTabs Tab, int Rad) {
+ super(name, Tab);
+ this.mRadio = Rad;
+ }
+
+ @Override
+ public void onUpdate(ItemStack aStack, World aWorld, Entity aPlayer, int aTimer, boolean aIsInHand) {
+ super.onUpdate(aStack, aWorld, aPlayer, aTimer, aIsInHand);
+ EntityLivingBase tPlayer = (EntityPlayer) aPlayer;
+ if (!GT_Utility.isWearingFullRadioHazmat(tPlayer))
+ tPlayer.addPotionEffect(new PotionEffect(IC2Potion.radiation.id, mRadio, 4));
+ }
+
+}
diff --git a/src/main/java/GoodGenerator/Loader/Loaders.java b/src/main/java/GoodGenerator/Loader/Loaders.java
index 0b78e92bd7..6133ccbb25 100644
--- a/src/main/java/GoodGenerator/Loader/Loaders.java
+++ b/src/main/java/GoodGenerator/Loader/Loaders.java
@@ -9,6 +9,7 @@ import GoodGenerator.Blocks.TEs.MetaTE.NeutronAccelerator;
import GoodGenerator.Blocks.TEs.MetaTE.NeutronSensor;
import GoodGenerator.Items.MyItemBlocks;
import GoodGenerator.Items.MyItems;
+import GoodGenerator.Items.RadioactiveItem;
import GoodGenerator.Main.GoodGenerator;
import cpw.mods.fml.common.Loader;
import cpw.mods.fml.common.registry.GameRegistry;
@@ -28,20 +29,22 @@ public class Loaders {
public static final Item radiationProtectionPlate = new MyItems("radiationProtectionPlate", GoodGenerator.GG);
public static final Item wrappedUraniumIngot = new MyItems("wrappedUraniumIngot", GoodGenerator.GG);
- public static final Item highDensityUraniumNugget = new MyItems("highDensityUraniumNugget", GoodGenerator.GG);
- public static final Item highDensityUranium = new MyItems("highDensityUranium", GoodGenerator.GG);
+ public static final Item highDensityUraniumNugget = new RadioactiveItem("highDensityUraniumNugget", GoodGenerator.GG, 200);
+ public static final Item highDensityUranium = new RadioactiveItem("highDensityUranium", GoodGenerator.GG, 1800);
public static final Item wrappedThoriumIngot = new MyItems("wrappedThoriumIngot", GoodGenerator.GG);
- public static final Item highDensityThoriumNugget = new MyItems("highDensityThoriumNugget", GoodGenerator.GG);
- public static final Item highDensityThorium = new MyItems("highDensityThorium", GoodGenerator.GG);
+ public static final Item highDensityThoriumNugget = new RadioactiveItem("highDensityThoriumNugget", GoodGenerator.GG, 50);
+ public static final Item highDensityThorium = new RadioactiveItem("highDensityThorium", GoodGenerator.GG, 450);
public static final Item wrappedPlutoniumIngot = new MyItems("wrappedPlutoniumIngot", GoodGenerator.GG);
- public static final Item highDensityPlutoniumNugget = new MyItems("highDensityPlutoniumNugget", GoodGenerator.GG);
- public static final Item highDensityPlutonium = new MyItems("highDensityPlutonium", GoodGenerator.GG);
+ public static final Item highDensityPlutoniumNugget = new RadioactiveItem("highDensityPlutoniumNugget", GoodGenerator.GG, 450);
+ public static final Item highDensityPlutonium = new RadioactiveItem("highDensityPlutonium", GoodGenerator.GG, 4050);
public static final Item rawAtomicSeparationCatalyst = new MyItems("rawAtomicSeparationCatalyst", GoodGenerator.GG);
public static final Item advancedRadiationProtectionPlate = new MyItems("advancedRadiationProtectionPlate", GoodGenerator.GG);
public static final Item aluminumNitride = new MyItems("aluminumNitride", GoodGenerator.GG);
public static final Item specialCeramics = new MyItems("specialCeramics", GoodGenerator.GG);
public static final Item specialCeramicsPlate = new MyItems("specialCeramicsPlate", GoodGenerator.GG);
- public static final Item radioactiveWaste = new MyItems("radioactiveWaste", GoodGenerator.GG);
+ public static final Item radioactiveWaste = new RadioactiveItem("radioactiveWaste", GoodGenerator.GG, 400);
+ //public static final Item plasticCase = new MyItems("plasticCase", GoodGenerator.GG);
+
public static final Block MAR_Casing = new Casing("MAR_Casing", new String[]{GoodGenerator.MOD_ID+":MAR_Casing"});
public static final Block FRF_Casings = new Casing("FRF_Casing", new String[]{"gregtech:iconsets/MACHINE_CASING_MINING_BLACKPLUTONIUM"});
diff --git a/src/main/java/GoodGenerator/util/ItemRefer.java b/src/main/java/GoodGenerator/util/ItemRefer.java
index 4a76951224..242e6b98e6 100644
--- a/src/main/java/GoodGenerator/util/ItemRefer.java
+++ b/src/main/java/GoodGenerator/util/ItemRefer.java
@@ -26,6 +26,7 @@ public final class ItemRefer {
public static ItemRefer Special_Ceramics_Plate = getItemStack(specialCeramicsPlate);
public static ItemRefer Radioactive_Waste = getItemStack(radioactiveWaste);
+
public static ItemRefer Field_Restriction_Casing = getItemStack(MAR_Casing);
public static ItemRefer Naquadah_Fuel_Refinery_Casing = getItemStack(FRF_Casings);
public static ItemRefer Field_Restriction_Coil_T1 = getItemStack(FRF_Coil_1);
diff --git a/src/main/resources/assets/goodgenerator/lang/en_US.lang b/src/main/resources/assets/goodgenerator/lang/en_US.lang
index 5806e781cd..210fcff57d 100644
--- a/src/main/resources/assets/goodgenerator/lang/en_US.lang
+++ b/src/main/resources/assets/goodgenerator/lang/en_US.lang
@@ -34,6 +34,7 @@ item.chromaticGem.name=Chromatic Gem
item.aluminumNitride.name=Aluminum Nitride Dust
item.specialCeramics.name=Special Ceramics Dust
item.specialCeramicsPlate.name=Special Ceramics Plate
+item.radioactiveWaste.name=Radioactive Waste
#Fluids
fluid.lightlyCrackedNaquadahGas=Lightly Cracked Naquadah Gas