diff options
author | Alkalus <3060479+draknyte1@users.noreply.github.com> | 2019-01-09 04:04:59 +0000 |
---|---|---|
committer | Alkalus <3060479+draknyte1@users.noreply.github.com> | 2019-01-09 04:04:59 +0000 |
commit | b5cd08ed95eeeb11611ca065c63c3fba574790fe (patch) | |
tree | 9eb3a6992d1f23e73ff20a35ba72de4430675a48 /src | |
parent | c736e686c1351e31b02a2b10be66affff9d3ae73 (diff) | |
download | GT5-Unofficial-b5cd08ed95eeeb11611ca065c63c3fba574790fe.tar.gz GT5-Unofficial-b5cd08ed95eeeb11611ca065c63c3fba574790fe.tar.bz2 GT5-Unofficial-b5cd08ed95eeeb11611ca065c63c3fba574790fe.zip |
+ Added 118 Ions and all Base Particles.
+ Added localisation for over 600 of the new items added.
- Disabled custom GC Solar System.
% Moved registration of Fluorite Ore handler later.
% Fixed name of Radioactive Material Mix.
> Also includes changes made earlier, dunno.
Diffstat (limited to 'src')
16 files changed, 1254 insertions, 144 deletions
diff --git a/src/Java/gtPlusPlus/GTplusplus.java b/src/Java/gtPlusPlus/GTplusplus.java index 077efe102a..c92d38f46a 100644 --- a/src/Java/gtPlusPlus/GTplusplus.java +++ b/src/Java/gtPlusPlus/GTplusplus.java @@ -167,12 +167,6 @@ public class GTplusplus implements ActionListener { mChunkLoading.init(event); proxy.init(event); proxy.registerNetworkStuff(); - - //Set Variables for Fluorite Block handling - Logger.INFO("Setting some Variables for the block break event handler."); - BlockEventHandler.oreLimestone = OreDictionary.getOres("oreLimestone"); - BlockEventHandler.blockLimestone = OreDictionary.getOres("limestone"); - BlockEventHandler.fluoriteOre = FLUORIDES.FLUORITE.getOre(1); Core_Manager.init(); //Used by foreign players to generate .lang files for translation. @@ -190,7 +184,13 @@ public class GTplusplus implements ActionListener { proxy.postInit(event); BookHandler.runLater(); Core_Manager.postInit(); - SprinklerHandler.registerModFerts(); + //SprinklerHandler.registerModFerts(); + + //Set Variables for Fluorite Block handling + Logger.INFO("Setting some Variables for the block break event handler."); + BlockEventHandler.oreLimestone = OreDictionary.getOres("oreLimestone"); + BlockEventHandler.blockLimestone = OreDictionary.getOres("limestone"); + BlockEventHandler.fluoriteOre = FLUORIDES.FLUORITE.getOre(1); Logger.INFO("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"); Logger.INFO("| Recipes succesfully Loaded: " + RegistrationHandler.recipesSuccess + " | Failed: " diff --git a/src/Java/gtPlusPlus/core/item/ModItems.java b/src/Java/gtPlusPlus/core/item/ModItems.java index 04470b3554..2fd23ec88d 100644 --- a/src/Java/gtPlusPlus/core/item/ModItems.java +++ b/src/Java/gtPlusPlus/core/item/ModItems.java @@ -37,8 +37,10 @@ import gtPlusPlus.core.item.base.plates.BaseItemPlateDouble; import gtPlusPlus.core.item.bauble.HealthBoostBauble; import gtPlusPlus.core.item.bauble.ModularBauble; import gtPlusPlus.core.item.chemistry.CoalTar; +import gtPlusPlus.core.item.chemistry.IonParticles; import gtPlusPlus.core.item.chemistry.NuclearChem; import gtPlusPlus.core.item.chemistry.RocketFuels; +import gtPlusPlus.core.item.chemistry.StandardBaseParticles; import gtPlusPlus.core.item.effects.RarityUncommon; import gtPlusPlus.core.item.general.*; import gtPlusPlus.core.item.general.books.ItemBaseBook; @@ -536,6 +538,7 @@ public final class ModItems { MaterialGenerator.generate(ALLOY.MARAGING250); MaterialGenerator.generate(ALLOY.MARAGING300); MaterialGenerator.generate(ALLOY.MARAGING350); + MaterialGenerator.generate(ALLOY.AQUATIC_STEEL); MaterialGenerator.generate(ALLOY.NITINOL_60); @@ -811,11 +814,8 @@ public final class ModItems { dustTechnetium99M = new DustDecayable("dustTechnetium99M", ELEMENT.getInstance().TECHNETIUM.getRgbAsHex(), 8570, new String[] {""+StringUtils.superscript("99ᵐTc"), "Result: Technicium 99 ("+StringUtils.superscript("99Tc")+")"}, dustTechnetium99, 4); dustMolybdenum99 = new DustDecayable("dustMolybdenum99", ELEMENT.getInstance().MOLYBDENUM.getRgbAsHex(), 16450, new String[] {""+StringUtils.superscript("99Mo"), "Result: Technicium 99ᵐ ("+StringUtils.superscript("99ᵐTc")+")"}, dustTechnetium99M, 4); - new BaseItemParticle(ELEMENT.getInstance().HYDROGEN, "Ion"); - new BaseItemParticle(ELEMENT.getInstance().HELIUM, "Ion"); - new BaseItemParticle(ELEMENT.getInstance().LITHIUM, "Ion"); - new BaseItemParticle(ELEMENT.getInstance().BERYLLIUM, "Ion"); - + new IonParticles(); + new StandardBaseParticles(); diff --git a/src/Java/gtPlusPlus/core/item/base/BaseItemComponent.java b/src/Java/gtPlusPlus/core/item/base/BaseItemComponent.java index ec0b490f63..4dbb5851f2 100644 --- a/src/Java/gtPlusPlus/core/item/base/BaseItemComponent.java +++ b/src/Java/gtPlusPlus/core/item/base/BaseItemComponent.java @@ -7,15 +7,6 @@ import java.util.Map; import cpw.mods.fml.common.registry.GameRegistry; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; - -import net.minecraft.client.renderer.texture.IIconRegister; -import net.minecraft.entity.Entity; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.util.EnumChatFormatting; -import net.minecraft.util.IIcon; -import net.minecraft.world.World; import gregtech.api.enums.OrePrefixes; import gregtech.api.enums.TextureSet; import gregtech.api.util.GT_OreDictUnificator; @@ -32,15 +23,23 @@ import gtPlusPlus.core.util.minecraft.ItemUtils; import gtPlusPlus.core.util.sys.KeyboardUtils; import gtPlusPlus.xmod.thaumcraft.aspect.GTPP_Aspects; import gtPlusPlus.xmod.thaumcraft.util.ThaumcraftUtils; +import net.minecraft.client.renderer.texture.IIconRegister; +import net.minecraft.entity.Entity; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.util.EnumChatFormatting; +import net.minecraft.util.IIcon; +import net.minecraft.world.World; public class BaseItemComponent extends Item{ private final static Class<TextureSet> mTextureSetPreload; - + static { mTextureSetPreload = TextureSet.class; } - + public final Material componentMaterial; public final String materialName; public final String unlocalName; @@ -62,9 +61,9 @@ public class BaseItemComponent extends Item{ //this.setTextureName(this.getCorrectTextures()); this.componentColour = material.getRgbAsHex(); GameRegistry.registerItem(this, this.unlocalName); - + //if (componentType != ComponentTypes.DUST) - + GT_OreDictUnificator.registerOre(componentType.getOreDictName()+material.getUnlocalizedName(), ItemUtils.getSimpleStack(this)); if (LoadedMods.Thaumcraft) { ThaumcraftUtils.addAspectToItem(ItemUtils.getSimpleStack(this), GTPP_Aspects.METALLUM, 1); @@ -91,7 +90,7 @@ public class BaseItemComponent extends Item{ GT_OreDictUnificator.registerOre(ComponentTypes.CELL.getOreDictName()+unlocalName, ItemUtils.getSimpleStack(this)); registerComponent(); } - + public boolean registerComponent() { if (this.componentMaterial == null) { return false; @@ -197,6 +196,7 @@ public class BaseItemComponent extends Item{ super.addInformation(stack, aPlayer, list, bool); } + @SuppressWarnings("unchecked") @Override public void onUpdate(final ItemStack iStack, final World world, final Entity entityHolding, final int p_77663_4_, final boolean p_77663_5_) { if (this.componentMaterial != null){ @@ -206,6 +206,19 @@ public class BaseItemComponent extends Item{ } } } + + if (extraData != null) { + if (componentMaterial != null && componentMaterial.getRGBA()[3] > 1) { + if (((Map<Integer, Short[]>) extraData).get(9999) == null) { + ((Map<Integer, Short[]>) extraData).put(9999, new Short[] {0}); + } + Short aCurrentFrame = ((Map<Integer, Short[]>) extraData).get(9999)[0]; + short fC = (short) (aCurrentFrame >= Short.MAX_VALUE ? 0 : aCurrentFrame+1); + ((Map<Integer, Short[]>) extraData).put((int) 9999, new Short[] {(short) (fC), 0}); + ((Map<Integer, Short[]>) extraData).put((int) 9998, new Short[] {aCurrentFrame, 0}); + + } + } } @@ -221,15 +234,209 @@ public class BaseItemComponent extends Item{ return (CORE.ConfigSwitches.useGregtechTextures ? true : false); } + @SuppressWarnings("unchecked") @Override public int getColorFromItemStack(final ItemStack stack, final int renderPass) { + + if (renderPass == 0 && !CORE.ConfigSwitches.useGregtechTextures){ return Utils.rgbtoHexValue(255, 255, 255); } if (renderPass == 1 && CORE.ConfigSwitches.useGregtechTextures){ return Utils.rgbtoHexValue(255, 255, 255); } + + + + try { + if (this.componentMaterial == null) { + if (extraData != null) { + if (short.class.isInstance(extraData)){ + short[] abc = (short[]) extraData; + return Utils.rgbtoHexValue(abc[0], abc[1], abc[2]); + } + } + return this.componentColour; + } + + if (this.componentMaterial.getRGBA()[3] <= 1) { + return this.componentColour; + } + else { + + //Mild Glow Effect + if (this.componentMaterial.getRGBA()[3] == 2) { + if (extraData == null) { + extraData = new HashMap<Integer, Short[]>(); + ((Map<Integer, Short[]>) extraData).put((int) Short.MAX_VALUE, new Short[] {0}); + ((Map<Integer, Short[]>) extraData).put((int) Short.MAX_VALUE-1, new Short[] {0}); + short[] er = this.componentMaterial.getRGBA(); + short value = 1; + Short[] ht = new Short[] {er[0], er[1], er[2]}; + for (int y = 0; y < 40; y++) { + if (y < 20) { + value = 1; + } + else { + value = -1; + } + short r = (short) (ht[0] + value); + short g = (short) (ht[1] + value); + short b = (short) (ht[2] + value); + Short[] qq = new Short[] {(short) Math.min(255, r), (short) Math.min(255, g), (short) Math.min(255, b)}; + ht = qq; + ((Map<Integer, Short[]>) extraData).put(y, qq); + } + } + if (extraData != null) { + + Short aCurrentFrame = ((Map<Integer, Short[]>) extraData).get((int) Short.MAX_VALUE)[0]; + Short aSize = 40; + short nextFrame = (short) ((aCurrentFrame < aSize) ? (aCurrentFrame+1) : 0); + Short[] aCurrentFrameRGB = ((Map<Integer, Short[]>) extraData).get(aCurrentFrame < aSize ? (int) aCurrentFrame : 0); + ((Map<Integer, Short[]>) extraData).put((int) Short.MAX_VALUE, new Short[] {nextFrame}); + return Utils.rgbtoHexValue(aCurrentFrameRGB[0], aCurrentFrameRGB[1], aCurrentFrameRGB[2]); + + + /*Short aCurrentFrame = ((Map<Integer, Short[]>) extraData).get((int) Short.MAX_VALUE)[0]; + Short[] aCurrentFrameRGB = ((Map<Integer, Short[]>) extraData).get((int) aCurrentFrame); + short nextFrame = aCurrentFrame < 40 ? aCurrentFrame++ : 0; + ((Map<Integer, Short[]>) extraData).put((int) Short.MAX_VALUE, new Short[] {nextFrame}); + return Utils.rgbtoHexValue(aCurrentFrameRGB[0], aCurrentFrameRGB[1], aCurrentFrameRGB[2]);*/ + } + } + + //Rainbow Hue Cycle + else if (this.componentMaterial.getRGBA()[3] == 3) { + if (extraData == null) { + extraData = new HashMap<Integer, Short[]>(); + ((Map<Integer, Short[]>) extraData).put((int) Short.MAX_VALUE, new Short[] {0}); + ((Map<Integer, Short[]>) extraData).put((int) Short.MAX_VALUE-1, new Short[] {0}); + int aSlot = 0; + + //Let's say you're starting with green: + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] { 0, 255, 0}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] { 0, 255, 0}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] { 0, 255, 0}); + //Slowly start adding in some red to get to yellow: + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] { 51, 255, 0}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] { 51, 255, 0}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] { 51, 255, 0}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {102, 255, 0}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {102, 255, 0}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {102, 255, 0}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {153, 255, 0}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {153, 255, 0}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {153, 255, 0}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {204, 255, 0}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {204, 255, 0}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {204, 255, 0}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {255, 255, 0}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {255, 255, 0}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {255, 255, 0}); + //Then, take out the green to get to red: + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {255, 204, 0}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {255, 204, 0}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {255, 204, 0}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {255, 153, 0}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {255, 153, 0}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {255, 153, 0}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {255, 102, 0}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {255, 102, 0}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {255, 102, 0}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {255, 51, 0}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {255, 51, 0}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {255, 51, 0}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {255, 0, 0}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {255, 0, 0}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {255, 0, 0}); + //Now, add blue to get to purple: + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {255, 0, 51}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {255, 0, 51}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {255, 0, 51}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {255, 0, 102}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {255, 0, 102}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {255, 0, 102}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {255, 0, 153}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {255, 0, 153}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {255, 0, 153}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {255, 0, 204}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {255, 0, 204}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {255, 0, 204}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {255, 0, 255}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {255, 0, 255}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {255, 0, 255}); + //Then, remove red to get to blue: + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {204, 0, 255}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {204, 0, 255}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {204, 0, 255}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {153, 0, 255}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {153, 0, 255}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {153, 0, 255}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {102, 0, 255}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {102, 0, 255}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] {102, 0, 255}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] { 51, 0, 255}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] { 51, 0, 255}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] { 51, 0, 255}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] { 0, 0, 255}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] { 0, 0, 255}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] { 0, 0, 255}); + //Add the green back in to get to cyan: + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] { 0, 51, 255}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] { 0, 51, 255}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] { 0, 51, 255}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] { 0, 102, 255}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] { 0, 102, 255}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] { 0, 102, 255}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] { 0, 153, 255}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] { 0, 153, 255}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] { 0, 153, 255}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] { 0, 204, 255}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] { 0, 204, 255}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] { 0, 204, 255}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] { 0, 255, 255}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] { 0, 255, 255}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] { 0, 255, 255}); + //And finally remove the blue to get back to green: + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] { 0, 255, 204}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] { 0, 255, 204}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] { 0, 255, 204}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] { 0, 255, 153}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] { 0, 255, 153}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] { 0, 255, 153}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] { 0, 255, 102}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] { 0, 255, 102}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] { 0, 255, 102}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] { 0, 255, 51}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] { 0, 255, 51}); + ((Map<Integer, Short[]>) extraData).put(aSlot++, new Short[] { 0, 255, 51}); + ((Map<Integer, Short[]>) extraData).put((int) Byte.MAX_VALUE, new Short[] {(short) (((Map<Integer, Short[]>) extraData).size()-1)}); + + + } + if (extraData != null) { + Short aCurrentFrame = ((Map<Integer, Short[]>) extraData).get((int) Short.MAX_VALUE)[0]; + Short aSize = (short) (((Map<Integer, Short[]>) extraData).size() - 3); + short nextFrame = (short) ((aCurrentFrame < aSize) ? (aCurrentFrame+1) : 0); + Short[] aCurrentFrameRGB = ((Map<Integer, Short[]>) extraData).get(aCurrentFrame < aSize ? (int) aCurrentFrame : 0); + ((Map<Integer, Short[]>) extraData).put((int) Short.MAX_VALUE, new Short[] {nextFrame}); + return Utils.rgbtoHexValue(aCurrentFrameRGB[0], aCurrentFrameRGB[1], aCurrentFrameRGB[2]); + } + } + } + + + } + catch (Throwable t) { + + } return this.componentColour; + + + + + } @Override @@ -307,7 +514,7 @@ public class BaseItemComponent extends Item{ public OrePrefixes getGtOrePrefix() { return this.a_GT_EQUAL; } - + } } diff --git a/src/Java/gtPlusPlus/core/item/base/misc/BaseItemParticle.java b/src/Java/gtPlusPlus/core/item/base/misc/BaseItemParticle.java index 363b9ad00d..89cd1e55ae 100644 --- a/src/Java/gtPlusPlus/core/item/base/misc/BaseItemParticle.java +++ b/src/Java/gtPlusPlus/core/item/base/misc/BaseItemParticle.java @@ -1,26 +1,54 @@ package gtPlusPlus.core.item.base.misc; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; + import gtPlusPlus.core.creative.AddToCreativeTab; import gtPlusPlus.core.item.base.CoreItem; import gtPlusPlus.core.lib.CORE; -import gtPlusPlus.core.material.Material; +import net.minecraft.creativetab.CreativeTabs; import net.minecraft.item.EnumRarity; +import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.util.EnumChatFormatting; -public class BaseItemParticle extends CoreItem { - - private final Material mParticleMaterial; +public abstract class BaseItemParticle extends CoreItem { + + protected static final Map<Integer, Integer> aColourMap = new LinkedHashMap<Integer, Integer> (); + private final int aMaxCount; - public BaseItemParticle(Material aMat, String aType) { - super("particle"+aMat.getLocalizedName()+aType, aMat.getLocalizedName()+" "+aType, AddToCreativeTab.tabOther, 64, 0, new String[] {}, EnumRarity.rare, EnumChatFormatting.DARK_AQUA, false, null); + public BaseItemParticle(String aType, int aCount, EnumRarity aRarity) { + super("particle"+aType, aType, AddToCreativeTab.tabOther, 64, 0, new String[] {}, aRarity, EnumChatFormatting.DARK_AQUA, false, null); this.setTextureName(CORE.MODID + ":" + "science/Atom"); - mParticleMaterial = aMat; + aMaxCount = aCount; + this.setHasSubtypes(true); + } @Override public int getColorFromItemStack(final ItemStack stack, final int HEX_OxFFFFFF) { - return this.mParticleMaterial.getRgbAsHex(); + return aColourMap.get(stack.getItemDamage()); + } + + + @SuppressWarnings({ "unchecked", "rawtypes" }) + @Override + public void getSubItems(Item item, CreativeTabs tab, List list) { + for (int i = 0; i < aMaxCount; i ++) { + list.add(new ItemStack(item, 1, i)); + } } + + @Override + public final String getItemStackDisplayName(final ItemStack tItem) { + String aReturnValue = super.getItemStackDisplayName(tItem); + String[] a2 = getAffixes(); + aReturnValue = (a2[0] + aReturnValue + a2[1]); + return aReturnValue; + } + + public abstract String[] getAffixes(); + } diff --git a/src/Java/gtPlusPlus/core/item/chemistry/IonParticles.java b/src/Java/gtPlusPlus/core/item/chemistry/IonParticles.java new file mode 100644 index 0000000000..ff5f67d2da --- /dev/null +++ b/src/Java/gtPlusPlus/core/item/chemistry/IonParticles.java @@ -0,0 +1,49 @@ +package gtPlusPlus.core.item.chemistry; + +import gregtech.api.enums.Materials; +import gtPlusPlus.core.item.base.misc.BaseItemParticle; +import gtPlusPlus.core.util.Utils; +import net.minecraft.item.EnumRarity; +import net.minecraft.item.ItemStack; + +public class IonParticles extends BaseItemParticle { + + public IonParticles() { + super("Ion", aElements.length, EnumRarity.rare); + } + + private static final String[] aElements = new String[]{"Hydrogen", "Helium", "Lithium", "Beryllium", "Boron", "Carbon", "Nitrogen", "Oxygen", "Fluorine", "Neon", "Sodium", "Magnesium", "Aluminum", "Silicon", "Phosphorus", "Sulfur", "Chlorine", "Argon", "Potassium", "Calcium", "Scandium", "Titanium", "Vanadium", "Chromium", "Manganese", "Iron", "Cobalt", "Nickel", "Copper", "Zinc", "Gallium", "Germanium", "Arsenic", "Selenium", "Bromine", "Krypton", "Rubidium", "Strontium", "Yttrium", "Zirconium", "Niobium", "Molybdenum", "Technetium", "Ruthenium", "Rhodium", "Palladium", "Silver", "Cadmium", "Indium", "Tin", "Antimony", "Tellurium", "Iodine", "Xenon", "Cesium", "Barium", "Lanthanum", "Cerium", "Praseodymium", "Neodymium", "Promethium", "Samarium", "Europium", "Gadolinium", "Terbium", "Dysprosium", "Holmium", "Erbium", "Thulium", "Ytterbium", "Lutetium", "Hafnium", "Tantalum", "Tungsten", "Rhenium", "Osmium", "Iridium", "Platinum", "Gold", "Mercury", "Thallium", "Lead", "Bismuth", "Polonium", "Astatine", "Radon", "Francium", "Radium", "Actinium", "Thorium", "Protactinium", "Uranium", "Neptunium", "Plutonium", "Americium", "Curium", "Berkelium", "Californium", "Einsteinium", "Fermium", "Mendelevium", "Nobelium", "Lawrencium", "Rutherfordium", "Dubnium", "Seaborgium", "Bohrium", "Hassium", "Meitnerium", "Darmstadtium", "Roentgenium", "Copernicium", "Nihonium", "Flerovium", "Moscovium", "Livermorium", "Tennessine", "Oganesson"}; + + static { + //Generate Ions + int key = 0; + for (String s : aElements) { + Materials m = Materials.get(s); + int aColour = 0; + if (m == null) { + aColour = Utils.rgbtoHexValue(128, 128, 128); + } + else { + aColour = Utils.rgbtoHexValue(m.mRGBa[0], m.mRGBa[1], m.mRGBa[2]); + } + aColourMap.put(key++, aColour); + } + + } + + @Override + public String[] getAffixes() { + return new String[] {"", ""}; + } + + @Override + public String getUnlocalizedName() { + return ""; + } + + @Override + public String getUnlocalizedName(final ItemStack itemStack) { + return "item.particle.ion" + "." + aElements[itemStack.getItemDamage()]; + } + +} diff --git a/src/Java/gtPlusPlus/core/item/chemistry/StandardBaseParticles.java b/src/Java/gtPlusPlus/core/item/chemistry/StandardBaseParticles.java new file mode 100644 index 0000000000..dd07d41b3d --- /dev/null +++ b/src/Java/gtPlusPlus/core/item/chemistry/StandardBaseParticles.java @@ -0,0 +1,77 @@ +package gtPlusPlus.core.item.chemistry; + +import gregtech.api.enums.Materials; +import gtPlusPlus.core.item.base.misc.BaseItemParticle; +import gtPlusPlus.core.material.Particle; +import gtPlusPlus.core.material.Particle.ElementaryGroup; +import gtPlusPlus.core.util.Utils; +import net.minecraft.item.EnumRarity; +import net.minecraft.item.ItemStack; + +public class StandardBaseParticles extends BaseItemParticle { + + public StandardBaseParticles() { + super("Base", aTypes.length, EnumRarity.rare); + } + + private static final String[] aTypes = new String[] { "Graviton", "Up", "Down", "Charm", "Strange", "Top", + "Bottom", "Electron", "Electron Neutrino", "Muon", "Muon Neutrino", "Tau", "Tau Neutrino", "Gluon", + "Photon", "Z Boson", "W Boson", "Higgs Boson", "Proton", "Neutron", "Lambda", "Omega", "Pion", + "ETA Meson", }; + + static { + //Generate Ions + int key = 0; + for (String s : aTypes) { + Particle p; + for (Particle o : Particle.aMap) { + int aColour = 0; + if (o.mParticleName.toLowerCase().equals(s.toLowerCase())) { + if (o.mParticleType == ElementaryGroup.BARYON) { + aColour = Utils.rgbtoHexValue(174, 226, 156); + aColourMap.put(key++, aColour); + } + else if (o.mParticleType == ElementaryGroup.BOSON) { + if (o == Particle.HIGGS_BOSON) { + aColour = Utils.rgbtoHexValue(226, 196, 104); + aColourMap.put(key++, aColour); + } + else { + aColour = Utils.rgbtoHexValue(226, 52, 66); + aColourMap.put(key++, aColour); + } + } + else if (o.mParticleType == ElementaryGroup.LEPTON) { + aColour = Utils.rgbtoHexValue(126, 226, 95); + aColourMap.put(key++, aColour); + } + else if (o.mParticleType == ElementaryGroup.MESON) { + aColour = Utils.rgbtoHexValue(90, 154, 226); + aColourMap.put(key++, aColour); + } + else { + aColour = Utils.rgbtoHexValue(188, 61, 226); + aColourMap.put(key++, aColour); + } + } + } + } + + } + + @Override + public String[] getAffixes() { + return new String[] {"", ""}; + } + + @Override + public String getUnlocalizedName() { + return ""; + } + + @Override + public String getUnlocalizedName(final ItemStack itemStack) { + return "item.particle.base" + "." + aTypes[itemStack.getItemDamage()]; + } + +} diff --git a/src/Java/gtPlusPlus/core/material/ALLOY.java b/src/Java/gtPlusPlus/core/material/ALLOY.java index 6a659fc165..a27cace300 100644 --- a/src/Java/gtPlusPlus/core/material/ALLOY.java +++ b/src/Java/gtPlusPlus/core/material/ALLOY.java @@ -280,6 +280,26 @@ public final class ALLOY { new MaterialStack(ELEMENT.getInstance().COBALT, 8), }); + public static final Material AQUATIC_STEEL = new Material( + "Watertight Steel", //Material Name + MaterialState.SOLID, //State + new short[] {120, 120, 180}, //Material Colour + 2673, //Melting Point in C + 4835, + -1, + -1, + true, //Uses Blast furnace? + //Material Stacks with Percentage of required elements. + new MaterialStack[]{ + new MaterialStack(ALLOY.STEEL, 60), + new MaterialStack(ELEMENT.getInstance().CARBON, 10), + new MaterialStack(ELEMENT.getInstance().MANGANESE, 5), + new MaterialStack(ELEMENT.getInstance().SILICON, 10), + new MaterialStack(ELEMENT.getInstance().PHOSPHORUS, 5), + new MaterialStack(ELEMENT.getInstance().SULFUR, 5), + new MaterialStack(ELEMENT.getInstance().ALUMINIUM, 5) + }); + public static final Material STELLITE = new Material( "Stellite", //Material Name MaterialState.SOLID, //State @@ -459,7 +479,7 @@ public final class ALLOY { "Tungsten Titanium Carbide", //Material Name MaterialState.SOLID, //State null, - -1, //Melting Point in C + 4422, //Melting Point in C -1, -1, -1, diff --git a/src/Java/gtPlusPlus/core/material/ELEMENT.java b/src/Java/gtPlusPlus/core/material/ELEMENT.java index d69ad9b065..99bc37444e 100644 --- a/src/Java/gtPlusPlus/core/material/ELEMENT.java +++ b/src/Java/gtPlusPlus/core/material/ELEMENT.java @@ -47,7 +47,7 @@ public final class ELEMENT { public final Material ARSENIC = MaterialUtils.generateMaterialFromGtENUM(Materials.Arsenic); public final Material SELENIUM = new Material("Selenium", MaterialState.SOLID, new short[]{190, 190, 190}, 217, 685, 34, 45, false, "Se", 0);//Not a GT Inherited Material public final Material BROMINE = new Material("Bromine", MaterialState.PURE_LIQUID, new short[]{200, 25, 25}, -7, 58, 35, 45, false, "Br", 0);//Not a GT Inherited Material - public final Material KRYPTON = new Material("Krypton", MaterialState.GAS, new short[]{255, 255, 255}, -157, -153, 36, 48, false, "Kr", 0);//Not a GT Inherited Material + public final Material KRYPTON = new Material("Krypton", MaterialState.PURE_LIQUID, new short[]{255, 255, 255}, -157, -153, 36, 48, false, "Kr", 0);//Not a GT Inherited Material public final Material RUBIDIUM = MaterialUtils.generateMaterialFromGtENUM(Materials.Rubidium); public final Material STRONTIUM = MaterialUtils.generateMaterialFromGtENUM(Materials.Strontium); public final Material YTTRIUM = MaterialUtils.generateMaterialFromGtENUM(Materials.Yttrium); @@ -206,9 +206,9 @@ public final class ELEMENT { public static class STANDALONE { - public static final Material CELESTIAL_TUNGSTEN = new Material("Celestial Tungsten", MaterialState.SOLID, TextureSets.REFINED.get(), ELEMENT.INSTANCE.TUNGSTEN.getRGB(), INSTANCE.TUNGSTEN.getMeltingPointC()+6500, INSTANCE.TUNGSTEN.getBoilingPointC()+7500, 160, 101, true, "✦◆✦", 0);//Not a GT Inherited Material - public static final Material ASTRAL_TITANIUM = new Material("Astral Titanium", MaterialState.SOLID, TextureSets.REFINED.get(), ELEMENT.INSTANCE.TITANIUM.getRGB(), INSTANCE.TITANIUM.getMeltingPointC()+7500, INSTANCE.TITANIUM.getBoilingPointC()+7500, 145, 133, true, "✧◇✧", 0);//Not a GT Inherited Material - public static final Material CHRONOMATIC_GLASS = new Material("Chromatic Glass", MaterialState.SOLID, new short[]{255, 255, 255}, 9200, 17550, 40, 51, false, "🕛🕒🕕🕘🕛 ", 0);//Not a GT Inherited Material + public static final Material CELESTIAL_TUNGSTEN = new Material("Celestial Tungsten", MaterialState.SOLID, TextureSets.REFINED.get(), new short[] {50, 50, 50, 2}, INSTANCE.TUNGSTEN.getMeltingPointC()+6500, INSTANCE.TUNGSTEN.getBoilingPointC()+7500, 160, 101, true, "✦◆✦", 0);//Not a GT Inherited Material + public static final Material ASTRAL_TITANIUM = new Material("Astral Titanium", MaterialState.SOLID, TextureSets.REFINED.get(), new short[] {220, 160, 240, 2}, INSTANCE.TITANIUM.getMeltingPointC()+7500, INSTANCE.TITANIUM.getBoilingPointC()+7500, 145, 133, true, "✧◇✧", 0);//Not a GT Inherited Material + public static final Material CHRONOMATIC_GLASS = new Material("Chromatic Glass", MaterialState.SOLID, new short[]{255, 255, 255, 3}, 9200, 17550, 40, 51, false, "⌘☯𓍰 𓍱 𓍲 𓍳 𓍴 𓍵 𓍶 𓍷 𓍸 ☯⌘ ", 0);//Not a GT Inherited Material public static final Material ADVANCED_NITINOL = new Material("Advanced Nitinol", MaterialState.SOLID, TextureSets.ENRICHED.get(), ALLOY.NITINOL_60.getRGB(), 8400, 14377, 40, 51, true, "⚷⚙⚷ Ni4Ti6", 0);//Not a GT Inherited Material public static final Material HYPOGEN = new Material("Hypogen", MaterialState.SOLID, TextureSets.NUCLEAR.get(), new short[]{220, 120, 75}, 12255, 19377, 240, 251, true, "Hy⚶", 0);//Not a GT Inherited Material diff --git a/src/Java/gtPlusPlus/core/material/ORES.java b/src/Java/gtPlusPlus/core/material/ORES.java index 78a0d250a9..a8b86a142c 100644 --- a/src/Java/gtPlusPlus/core/material/ORES.java +++ b/src/Java/gtPlusPlus/core/material/ORES.java @@ -797,7 +797,7 @@ public final class ORES { public static final Material DEEP_EARTH_REACTOR_FUEL_DEPOSIT = new Material( - "Radioactive Minerial Mix", //Material Name + "Radioactive Mineral Mix", //Material Name MaterialState.ORE, //State TextureSets.NUCLEAR.get(), //Texture Set null, //Material Colour diff --git a/src/Java/gtPlusPlus/core/material/Particle.java b/src/Java/gtPlusPlus/core/material/Particle.java index 5b3e37b4a9..6cc0f878d6 100644 --- a/src/Java/gtPlusPlus/core/material/Particle.java +++ b/src/Java/gtPlusPlus/core/material/Particle.java @@ -1,5 +1,7 @@ package gtPlusPlus.core.material; +import gtPlusPlus.api.objects.data.AutoMap; + public class Particle { public static final Particle GRAVITON; @@ -32,6 +34,8 @@ public class Particle { public static final Particle PION; public static final Particle ETA_MESON; + public static final AutoMap<Particle> aMap = new AutoMap<Particle>(); + static { /* @@ -99,7 +103,8 @@ public class Particle { public Particle(ElementaryGroup aParticleType, String aParticleName, Particle[] aComposition) { mParticleType = aParticleType; mParticleName = aParticleName; - mComposition = aComposition == null ? new Particle[] {this} : aComposition; + mComposition = aComposition == null ? new Particle[] {this} : aComposition; + aMap.put(this); } } diff --git a/src/Java/gtPlusPlus/core/recipe/RECIPES_Machines.java b/src/Java/gtPlusPlus/core/recipe/RECIPES_Machines.java index 4ce4bb3da6..5cca67402b 100644 --- a/src/Java/gtPlusPlus/core/recipe/RECIPES_Machines.java +++ b/src/Java/gtPlusPlus/core/recipe/RECIPES_Machines.java @@ -1193,7 +1193,7 @@ public class RECIPES_Machines { } if (CORE.ConfigSwitches.enableMultiblock_IndustrialFishingPort){ - ItemStack plate = ALLOY.INCONEL_792.getPlate(1); + ItemStack plate = ALLOY.AQUATIC_STEEL.getPlate(1); RecipeUtils.recipeBuilder( plate, CI.craftingToolHammer_Hard, plate, "plateEglinSteel", "frameGtEglinSteel", "plateEglinSteel", @@ -1478,9 +1478,9 @@ public class RECIPES_Machines { new ItemStack[] { aDrillController, ItemUtils.getItemStackOfAmountFromOreDict("frameGtTriniumNaquadahCarbonite", 3), - ItemUtils.getItemStackOfAmountFromOreDict(CI.getTieredCircuitOreDictName(8), 2 * (CORE.GTNH ? 2 : 1)), - ItemUtils.getSimpleStack(CI.conveyorModule_ZPM, 2 * (CORE.GTNH ? 2 : 1)), - ItemUtils.getSimpleStack(CI.electricPump_ZPM, 4 * (CORE.GTNH ? 2 : 1)), + ItemUtils.getItemStackOfAmountFromOreDict(CI.getTieredCircuitOreDictName(9), 2 * (CORE.GTNH ? 4 : 1)), + ItemUtils.getSimpleStack((CORE.GTNH ? CI.conveyorModule_UV : CI.conveyorModule_ZPM), 2 * (CORE.GTNH ? 2 : 1)), + ItemUtils.getSimpleStack((CORE.GTNH ? CI.electricPump_UV : CI.electricPump_ZPM), 4 * (CORE.GTNH ? 2 : 1)), }, ALLOY.LAFIUM.getFluid(144 * 8 * (CORE.GTNH ? 2 : 1)), GregtechItemList.BedrockMiner_MKI.get(1), @@ -1494,7 +1494,7 @@ public class RECIPES_Machines { ItemUtils.getItemStackOfAmountFromOreDict("plateDoubleTriniumTitaniumAlloy", 1 * (CORE.GTNH ? 2 : 1)), ItemUtils.getItemStackOfAmountFromOreDict("gearGtPikyonium64B", 2 * (CORE.GTNH ? 2 : 1)), ALLOY.TRINIUM_REINFORCED_STEEL.getPlateDouble(4 * (CORE.GTNH ? 2 : 1)), - ItemUtils.getSimpleStack(CI.machineHull_LuV, 1 * (CORE.GTNH ? 2 : 1)), + ItemUtils.getSimpleStack((CORE.GTNH ? CI.machineHull_UV : CI.machineHull_LuV), 1 * (CORE.GTNH ? 2 : 1)), }, ALLOY.MARAGING350.getFluid(144 * 16 * (CORE.GTNH ? 2 : 1)), GregtechItemList.Casing_BedrockMiner.get(1), diff --git a/src/Java/gtPlusPlus/xmod/galacticraft/HANDLER_GalactiCraft.java b/src/Java/gtPlusPlus/xmod/galacticraft/HANDLER_GalactiCraft.java index 9e8ad6f57e..f58bd06cab 100644 --- a/src/Java/gtPlusPlus/xmod/galacticraft/HANDLER_GalactiCraft.java +++ b/src/Java/gtPlusPlus/xmod/galacticraft/HANDLER_GalactiCraft.java @@ -13,20 +13,20 @@ public class HANDLER_GalactiCraft { public static void preInit(){ if (LoadedMods.GalacticraftCore){ - mSystemsCache.put("HD10180", new SystemHD10180()); - for (BaseSolarSystem solar : mSystemsCache.values()) { + //mSystemsCache.put("HD10180", new SystemHD10180()); + /*for (BaseSolarSystem solar : mSystemsCache.values()) { Logger.SPACE("Running 'pre-init' for "+solar.mSystemName); solar.preInit(); - } + }*/ } } public static void init(){ if (LoadedMods.GalacticraftCore){ - for (BaseSolarSystem solar : mSystemsCache.values()) { + /*for (BaseSolarSystem solar : mSystemsCache.values()) { Logger.SPACE("Running 'init' for "+solar.mSystemName); solar.init(); - } + }*/ } } diff --git a/src/Java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_MultiBlockBase.java b/src/Java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_MultiBlockBase.java index 26ac0dd4b2..1e5f138d7b 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_MultiBlockBase.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_MultiBlockBase.java @@ -349,8 +349,8 @@ GT_MetaTileEntity_MultiBlockBase { public static Method aLogger = null; public void log(String s) { - boolean isDebugLogging = CORE.DEBUG; - boolean reset = false; + boolean isDebugLogging = CORE.DEBUG || true; + boolean reset = true; if (aLogger == null || reset) { if (isDebugLogging) { try { @@ -614,13 +614,14 @@ GT_MetaTileEntity_MultiBlockBase { } if (aBaseMetaTileEntity.isServerSide()) { - if (mUpdate == 0 || this.mStartUpCheck == 0) { + if (this.mUpdate == 1 || this.mStartUpCheck == 1) { this.mChargeHatches.clear(); this.mDischargeHatches.clear(); this.mControlCoreBus.clear(); this.mMultiDynamoHatches.clear(); } } + super.onPostTick(aBaseMetaTileEntity, aTick); } @@ -752,7 +753,7 @@ GT_MetaTileEntity_MultiBlockBase { final int aBaseCasingIndex) { if (aList.isEmpty()) { if (aTileEntity instanceof GT_MetaTileEntity_Hatch) { - Logger.INFO("Adding " + aTileEntity.getInventoryName() + " at " + new BlockPos(aTileEntity.getBaseMetaTileEntity()).getLocationString()); + log("Adding " + aTileEntity.getInventoryName() + " at " + new BlockPos(aTileEntity.getBaseMetaTileEntity()).getLocationString()); updateTexture(aTileEntity, aBaseCasingIndex); return aList.add((E) aTileEntity); } @@ -765,13 +766,13 @@ GT_MetaTileEntity_MultiBlockBase { BlockPos aPos = new BlockPos(b); if (b != null && aPos != null) { if (aCurPos.equals(aPos)) { - Logger.INFO("Found Duplicate "+b.getInventoryName()+" at " + aPos.getLocationString()); + log("Found Duplicate "+b.getInventoryName()+" at " + aPos.getLocationString()); return false; } } } if (aTileEntity instanceof GT_MetaTileEntity_Hatch) { - Logger.INFO("Adding " + aCur.getInventoryName() + " at " + aCurPos.getLocationString()); + log("Adding " + aCur.getInventoryName() + " at " + aCurPos.getLocationString()); updateTexture(aTileEntity, aBaseCasingIndex); return aList.add((E) aTileEntity); } @@ -780,7 +781,8 @@ GT_MetaTileEntity_MultiBlockBase { } public int getControlCoreTier() { - if (mControlCoreBus.size() == 0) { + if (mControlCoreBus.isEmpty()) { + log("No Control Core Modules Found."); return 0; } GT_MetaTileEntity_Hatch_ControlCore i = getControlCoreBus(); @@ -790,28 +792,33 @@ GT_MetaTileEntity_MultiBlockBase { return x.getItemDamage(); } } + log("Control Core Module was null."); return 0; } public GT_MetaTileEntity_Hatch_ControlCore getControlCoreBus() { GT_MetaTileEntity_Hatch_ControlCore x = this.mControlCoreBus.get(0); if (x != null) { + log("getControlCore(ok)"); return x; } + log("getControlCore(bad)"); return null; } //mControlCoreBus public boolean addControlCoreToMachineList(final IGregTechTileEntity aTileEntity, final int aBaseCasingIndex) { - log("Found GT_MetaTileEntity_Hatch_ControlCore"); final IMetaTileEntity aMetaTileEntity = aTileEntity.getMetaTileEntity(); if (aMetaTileEntity == null) { + log("Tried to add null module entity."); return false; } if (!mControlCoreBus.isEmpty()) { + log("Tried to add a secondary control core module."); return false; } - + + log("Adding control core module."); return addToMachineListInternal(mControlCoreBus, aMetaTileEntity, aBaseCasingIndex); } diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_IndustrialFishingPond.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_IndustrialFishingPond.java index 2cf8d793f8..034ad323d9 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_IndustrialFishingPond.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/production/GregtechMetaTileEntity_IndustrialFishingPond.java @@ -6,15 +6,18 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.Map; +import cofh.asmhooks.block.BlockWater; import gregtech.api.enums.TAE; import gregtech.api.enums.Textures; import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; +import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Energy; import gregtech.api.objects.GT_RenderedTexture; import gregtech.api.util.FishPondFakeRecipe; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; +import gregtech.api.util.Recipe_GT; import gtPlusPlus.api.objects.Logger; import gtPlusPlus.api.objects.data.AutoMap; import gtPlusPlus.core.block.ModBlocks; @@ -27,6 +30,7 @@ import gtPlusPlus.xmod.gregtech.api.metatileentity.implementations.base.Gregtech import ic2.core.init.BlocksItems; import ic2.core.init.InternalName; import net.minecraft.block.Block; +import net.minecraft.block.BlockAir; import net.minecraft.init.Blocks; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; @@ -101,11 +105,11 @@ public class GregtechMetaTileEntity_IndustrialFishingPond extends GregtechMeta_M @Override public boolean checkRecipe(final ItemStack aStack) { if (aStack != null) { - Logger.WARNING("Found " + aStack.getDisplayName()); + log("Found " + aStack.getDisplayName()); if (aStack.getItem() == circuit) { this.isUsingControllerCircuit = true; this.mMode = aStack.getItemDamage(); - Logger.WARNING("Found Circuit!"); + log("Found Circuit!"); } else { this.isUsingControllerCircuit = false; } @@ -113,11 +117,15 @@ public class GregtechMetaTileEntity_IndustrialFishingPond extends GregtechMeta_M this.isUsingControllerCircuit = false; } if (!hasGenerateRecipes) { - Logger.WARNING("Generating Recipes."); + log("Generating Recipes."); generateRecipes(); } - if (hasGenerateRecipes && checkForWater()) { - Logger.WARNING("Trying to run recipe."); + if (hasGenerateRecipes) { + if (!checkForWater()) { + return false; + } + + log("Trying to run recipe."); ArrayList<ItemStack> tItems = getStoredInputs(); ArrayList<FluidStack> tFluids = getStoredFluids(); ItemStack[] tItemInputs = tItems.toArray(new ItemStack[tItems.size()]); @@ -143,13 +151,8 @@ public class GregtechMetaTileEntity_IndustrialFishingPond extends GregtechMeta_M int mOffsetZ_Lower = 0; int mOffsetZ_Upper = 0; - if (mDirectionX == 0) { - mCurrentDirectionX = 2; - mCurrentDirectionZ = 3; - } else { - mCurrentDirectionX = 3; - mCurrentDirectionZ = 2; - } + mCurrentDirectionX = 4; + mCurrentDirectionZ = 4; mOffsetX_Lower = -4; mOffsetX_Upper = 4; @@ -161,20 +164,20 @@ public class GregtechMetaTileEntity_IndustrialFishingPond extends GregtechMeta_M final int zDir = ForgeDirection.getOrientation(aBaseMetaTileEntity.getBackFacing()).offsetZ * mCurrentDirectionZ; - Logger.WARNING("xDir" + (xDir)); - Logger.WARNING("zDir" + (zDir)); + log("xDir" + (xDir)); + log("zDir" + (zDir)); /* * if (!(aBaseMetaTileEntity.getAirOffset(xDir, 0, zDir))) { return false; } */ int tAmount = 0; - for (int i = mOffsetX_Lower; i <= mOffsetX_Upper; ++i) { + check : for (int i = mOffsetX_Lower; i <= mOffsetX_Upper; ++i) { for (int j = mOffsetZ_Lower; j <= mOffsetZ_Upper; ++j) { for (int h = -1; h < 2; ++h) { if ((h != 0) || ((((xDir + i != 0) || (zDir + j != 0))) && (((i != 0) || (j != 0))))) { IGregTechTileEntity tTileEntity = aBaseMetaTileEntity.getIGregTechTileEntityOffset(xDir + i, h, zDir + j); if (!addToMachineList(tTileEntity)) { - Logger.WARNING("X: " + i + " | Z: " + j); + log("X: " + i + " | Z: " + j); Block tBlock = aBaseMetaTileEntity.getBlockOffset(xDir + i, h, zDir + j); byte tMeta = aBaseMetaTileEntity.getMetaIDOffset(xDir + i, h, zDir + j); @@ -183,29 +186,38 @@ public class GregtechMetaTileEntity_IndustrialFishingPond extends GregtechMeta_M } else { if ((i != mOffsetX_Lower && j != mOffsetZ_Lower && i != mOffsetX_Upper && j != mOffsetZ_Upper) && (h == 0 || h == 1)) { - if (tBlock == Blocks.air) { - Logger.WARNING("Found Air"); - } else if (tBlock == Blocks.water) { - Logger.WARNING("Found Water"); + + continue; + + /*if (tBlock instanceof BlockAir || tBlock.getUnlocalizedName().equalsIgnoreCase("tile.air") || tBlock.getUnlocalizedName().equalsIgnoreCase("tile.railcraft.residual.heat")) { + log("Found Air"); + continue; + } else if (tBlock instanceof BlockWater || tBlock == Blocks.water || tBlock == Blocks.flowing_water) { + log("Found Water"); + continue; } + else { + break check; + }*/ } else { if (tBlock.getLocalizedName().contains("gt.blockmachines") || tBlock == Blocks.water || tBlock == Blocks.flowing_water || tBlock == BlocksItems.getFluidBlock(InternalName.fluidDistilledWater)) { + continue; } else { - Logger.WARNING("[x] Did not form - Found: " + tBlock.getLocalizedName() + " | " + log("[x] Did not form - Found: " + tBlock.getLocalizedName() + " | " + tBlock.getDamageValue(aBaseMetaTileEntity.getWorld(), aBaseMetaTileEntity.getXCoord() + i, aBaseMetaTileEntity.getYCoord(), aBaseMetaTileEntity.getZCoord() + j) + " | Special Meta: " + (tTileEntity == null ? "0" : tTileEntity.getMetaTileID())); - Logger.WARNING("[x] Did not form - Found: " + log("[x] Did not form - Found: " + (aBaseMetaTileEntity.getXCoord() + xDir + i) + " | " + aBaseMetaTileEntity.getYCoord() + " | " + (aBaseMetaTileEntity.getZCoord() + zDir + j)); - return false; + break check; } } @@ -216,9 +228,9 @@ public class GregtechMetaTileEntity_IndustrialFishingPond extends GregtechMeta_M } } if ((tAmount >= 64)) { - Logger.WARNING("Made structure."); + log("Made structure."); } else { - Logger.WARNING("Did not make structure."); + log("Did not make structure."); } return (tAmount >= 64); } @@ -256,11 +268,12 @@ public class GregtechMetaTileEntity_IndustrialFishingPond extends GregtechMeta_M } private boolean addToMachineList(final IGregTechTileEntity tTileEntity) { - return ((this.addMaintenanceToMachineList(tTileEntity, this.getCasingTextureIndex())) + /*return ((this.addMaintenanceToMachineList(tTileEntity, this.getCasingTextureIndex())) || (this.addInputToMachineList(tTileEntity, this.getCasingTextureIndex())) || (this.addOutputToMachineList(tTileEntity, this.getCasingTextureIndex())) || (this.addMufflerToMachineList(tTileEntity, this.getCasingTextureIndex())) - || (this.addEnergyInputToMachineList(tTileEntity, this.getCasingTextureIndex()))); + || (this.addEnergyInputToMachineList(tTileEntity, this.getCasingTextureIndex())));*/ + return super.addToMachineList(tTileEntity, this.getCasingTextureIndex()); } public boolean checkForWater() { @@ -275,13 +288,9 @@ public class GregtechMetaTileEntity_IndustrialFishingPond extends GregtechMeta_M int mOffsetZ_Lower = 0; int mOffsetZ_Upper = 0; - if (mDirectionX == 0) { - mCurrentDirectionX = 2; - mCurrentDirectionZ = 3; - } else { - mCurrentDirectionX = 3; - mCurrentDirectionZ = 2; - } + mCurrentDirectionX = 4; + mCurrentDirectionZ = 4; + mOffsetX_Lower = -4; mOffsetX_Upper = 4; mOffsetZ_Lower = -4; @@ -297,23 +306,17 @@ public class GregtechMetaTileEntity_IndustrialFishingPond extends GregtechMeta_M int tAmount = 0; for (int i = mOffsetX_Lower + 1; i <= mOffsetX_Upper - 1; ++i) { for (int j = mOffsetZ_Lower + 1; j <= mOffsetZ_Upper - 1; ++j) { - for (int h = 0; h < 2; ++h) { + for (int h = 0; h < 2; h++) { Block tBlock = aBaseMetaTileEntity.getBlockOffset(xDir + i, h, zDir + j); // byte tMeta = aBaseMetaTileEntity.getMetaIDOffset(xDir + i, h, zDir + j); - if (tBlock == Blocks.air || tBlock == Blocks.flowing_water || tBlock == Blocks.water) { + if (tBlock == Blocks.air || tBlock == Blocks.flowing_water || tBlock == BlocksItems.getFluidBlock(InternalName.fluidDistilledWater)) { if (this.getStoredFluids() != null) { for (FluidStack stored : this.getStoredFluids()) { if (stored.isFluidEqual(FluidUtils.getFluidStack("water", 1))) { if (stored.amount >= 1000) { // Utils.LOG_WARNING("Going to try swap an air block for water from inut bus."); stored.amount -= 1000; - Block fluidUsed = null; - if (tBlock == Blocks.air || tBlock == Blocks.flowing_water) { - fluidUsed = Blocks.water; - } - if (tBlock == Blocks.water) { - fluidUsed = BlocksItems.getFluidBlock(InternalName.fluidDistilledWater); - } + Block fluidUsed = Blocks.water; aBaseMetaTileEntity.getWorld().setBlock( aBaseMetaTileEntity.getXCoord() + xDir + i, aBaseMetaTileEntity.getYCoord() + h, @@ -324,23 +327,35 @@ public class GregtechMetaTileEntity_IndustrialFishingPond extends GregtechMeta_M } } } - if (tBlock == Blocks.water) { - ++tAmount; - // Logger.WARNING("Found Water"); - } else if (tBlock == BlocksItems.getFluidBlock(InternalName.fluidDistilledWater)) { + tBlock = aBaseMetaTileEntity.getBlockOffset(xDir + i, h, zDir + j); + if (tBlock == Blocks.water || tBlock == Blocks.flowing_water) { ++tAmount; - ++tAmount; - // Logger.WARNING("Found Distilled Water"); + // log("Found Water"); } } } } - if ((tAmount >= 80)) { - Logger.WARNING("Filled structure."); - } else { - Logger.WARNING("Did not fill structure."); + + boolean isValidWater = tAmount >= 60; + + if (isValidWater) { + log("Filled structure."); + return true; + } + else { + + long aAvgVoltage = 0; + for (GT_MetaTileEntity_Hatch_Energy g : this.mEnergyHatches) { + if (g != null) { + aAvgVoltage += (g.maxEUInput() * g.maxAmperesIn()); + } + } + this.mEUt = (int) Math.max(30, aAvgVoltage); + this.mMaxProgresstime = (int) Math.max(((aAvgVoltage/8)*20/10), 100); + this.mProgresstime = 1; + log("Did not fill structure. Consuming "+aAvgVoltage+"eu/t to try fill."); + return false; } - return (tAmount >= 80); } private static AutoMap<AutoMap<WeightedRandomFishable>> categories = new AutoMap<AutoMap<WeightedRandomFishable>>(); @@ -474,11 +489,34 @@ public class GregtechMetaTileEntity_IndustrialFishingPond extends GregtechMeta_M public boolean checkRecipeGeneric(ItemStack[] aItemInputs, FluidStack[] aFluidInputs, int aMaxParallelRecipes, int aEUPercent, int aSpeedBonusPercent, int aOutputChanceRoll) { - // Based on the Processing Array. A bit overkill, but very flexible. + + + //Control Core to control the Multiblocks behaviour. + int aControlCoreTier = getControlCoreTier(); + + //If no core, return false; + if (aControlCoreTier == 0) { + log("Invalid/No Control Core"); + return false; + } + + + // Reset outputs and progress stats + this.mEUt = 0; + this.mMaxProgresstime = 0; + this.mOutputItems = new ItemStack[]{}; + this.mOutputFluids = new FluidStack[]{}; + long tVoltage = getMaxInputVoltage(); byte tTier = (byte) Math.max(1, GT_Utility.getTier(tVoltage)); + log("Running checkRecipeGeneric(0)"); - int parallelRecipes = 1; + //Check to see if Voltage Tier > Control Core Tier + if (tTier > aControlCoreTier) { + return false; + } + + // Based on the Processing Array. A bit overkill, but very flexible. getCircuit(aItemInputs); /* @@ -488,51 +526,67 @@ public class GregtechMetaTileEntity_IndustrialFishingPond extends GregtechMeta_M */ ItemStack[] mFishOutput = generateLoot(this.mMode); - Logger.WARNING("Mode: " + this.mMode + " | Is loot valid? " + (mFishOutput != null)); + mFishOutput = removeNulls(mFishOutput); + GT_Recipe g = new Recipe_GT(true, new ItemStack[] {}, mFishOutput, null, new int[] {}, aFluidInputs, mOutputFluids, 100, 8, 0); + if (!this.canBufferOutputs(g, aMaxParallelRecipes)) { + log("No Space"); + return false; + } + + log("Mode: " + this.mMode + " | Is loot valid? " + (mFishOutput != null)); int jslot = 0; for (ItemStack x : mFishOutput) { if (x != null) { - Logger.WARNING( + log( "Slot " + jslot + " in mFishOutput contains " + x.stackSize + "x " + x.getDisplayName() + "."); } else { - Logger.WARNING("Slot " + jslot + " in mFishOutput was null."); + log("Slot " + jslot + " in mFishOutput was null."); } jslot++; } - + // EU discount - // float tRecipeEUt = (32 * aEUPercent) / 100.0f; + float tRecipeEUt = (8 * aEUPercent) / 100.0f; float tTotalEUt = 0.0f; - // Reset outputs and progress stats - this.mEUt = 0; - this.mMaxProgresstime = 0; - this.mOutputItems = new ItemStack[] {}; - this.mOutputFluids = new FluidStack[] {}; - - tTotalEUt = 8; - Logger.WARNING("Recipe Step. [1]"); + int parallelRecipes = 0; + + log("parallelRecipes: "+parallelRecipes); + log("aMaxParallelRecipes: "+aMaxParallelRecipes); + log("tTotalEUt: "+tTotalEUt); + log("tVoltage: "+tVoltage); + log("tRecipeEUt: "+tRecipeEUt); + // Count recipes to do in parallel, consuming input items and fluids and considering input voltage limits + for (; parallelRecipes < aMaxParallelRecipes && tTotalEUt < (tVoltage - tRecipeEUt); parallelRecipes++) { + log("Bumped EU from "+tTotalEUt+" to "+(tTotalEUt+tRecipeEUt)+"."); + tTotalEUt += tRecipeEUt; + } if (parallelRecipes == 0) { - Logger.WARNING("Recipe Step. [-1]"); + log("BAD RETURN - 3"); return false; } + // -- Try not to fail after this point - inputs have already been consumed! -- + + // Convert speed bonus to duration multiplier // e.g. 100% speed bonus = 200% speed = 100%/200% = 50% recipe duration. - float tTimeFactor = 100.0f / (100.0f + 0); - - float modeMulti = 1; - modeMulti = (this.mMode == 14 ? 5 : (this.mMode == 15 ? 1 : 20)); - this.mMaxProgresstime = (int) ((60 * modeMulti) * tTimeFactor); + aSpeedBonusPercent = Math.max(-99, aSpeedBonusPercent); + float tTimeFactor = 100.0f / (100.0f + aSpeedBonusPercent); + this.mMaxProgresstime = (int)(20 * tTimeFactor * 4); - this.mEUt = (int) Math.ceil(tTotalEUt); + this.mEUt = (int)Math.ceil(tTotalEUt); this.mEfficiency = (10000 - (getIdealStatus() - getRepairStatus()) * 1000); this.mEfficiencyIncrease = 10000; - Logger.WARNING("Recipe Step. [2]"); + + //Only Overclock as high as the control circuit. + byte tTierOld = tTier; + tTier = (byte) aControlCoreTier; + // Overclock if (this.mEUt <= 16) { this.mEUt = (this.mEUt * (1 << tTier - 1) * (1 << tTier - 1)); @@ -549,8 +603,9 @@ public class GregtechMetaTileEntity_IndustrialFishingPond extends GregtechMeta_M } this.mMaxProgresstime = Math.max(1, this.mMaxProgresstime); + - Logger.WARNING("Recipe Step. [3]"); + log("Recipe Step. [3]"); // Collect output item types ItemStack[] tOutputItems = mFishOutput; @@ -559,10 +614,10 @@ public class GregtechMetaTileEntity_IndustrialFishingPond extends GregtechMeta_M for (ItemStack x : tOutputItems) { if (x != null) { - Logger.WARNING( + log( "rSlot " + rslot + " in mFishOutput contains " + x.stackSize + "x " + x.getDisplayName() + "."); } else { - Logger.WARNING("rSlot " + rslot + " in mFishOutput was null."); + log("rSlot " + rslot + " in mFishOutput was null."); } rslot++; } diff --git a/src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_BlastSmelter.java b/src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_BlastSmelter.java index 5a985c6151..d6be5def19 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_BlastSmelter.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_BlastSmelter.java @@ -131,7 +131,7 @@ public class RecipeGen_BlastSmelter extends RecipeGen_Base { //Generate Recipes for all singular materials that can be made molten. if (hasMoreInputThanACircuit){ if (M.requiresBlastFurnace()) { - if (CORE.RA.addBlastSmelterRecipe(tItemStackTest, M.getFluid(fluidAmount), 100, (duration/mTotalPartsCounter), (int) aVoltage)){ + if (CORE.RA.addBlastSmelterRecipe(tItemStackTest, M.getFluid(fluidAmount), 100, (duration/(mTotalPartsCounter > 0 ? mTotalPartsCounter : 1)), (int) aVoltage)){ Logger.WARNING("[BAS] Success."); Logger.WARNING("[BAS] Success, Also added a Fluid solidifier recipe."); if (GT_Values.RA.addFluidExtractionRecipe(M.getIngot(1), null, M.getFluid(144), 100, duration, 120)){ @@ -153,7 +153,7 @@ public class RecipeGen_BlastSmelter extends RecipeGen_Base { } } else { - if (CORE.RA.addBlastSmelterRecipe(tItemStackTest, M.getFluid(fluidAmount), 100, duration/mTotalPartsCounter/2, (int) aVoltage)){ + if (CORE.RA.addBlastSmelterRecipe(tItemStackTest, M.getFluid(fluidAmount), 100, duration/(mTotalPartsCounter > 0 ? mTotalPartsCounter : 1)/2, (int) aVoltage)){ Logger.WARNING("[BAS] Success."); if (GT_Values.RA.addFluidSolidifierRecipe(ItemList.Shape_Mold_Ingot.get(0), M.getFluid(144), M.getIngot(1), duration/2, 60)){ Logger.WARNING("[BAS] Success, Also added a Fluid solidifier recipe."); diff --git a/src/resources/assets/miscutils/lang/en_US.lang b/src/resources/assets/miscutils/lang/en_US.lang index 905c1d9ca3..1741812de6 100644 --- a/src/resources/assets/miscutils/lang/en_US.lang +++ b/src/resources/assets/miscutils/lang/en_US.lang @@ -2025,7 +2025,7 @@ entity.Aboriginal.name=Native entity.miscutils.constructStaballoy.name=Staballoy Construct entity.miscutils.sickBlaze.name=Infected Zealot -//Added 15/9/`8 +//Added 15/9/18 item.ZirconiumTetrafluoride.name=Zirconium Tetrafluoride Cell item.Formaldehyde.name=Formaldehyde Cell item.RocketFuelMixA.name=H8N4C2O4 Rocket Fuel Cell @@ -2040,3 +2040,665 @@ item.NitrousOxide.name=Nitrous Oxide Cell item.AmmoniumNitrateSlurry.name=Ammonium Nitrate Slurry Cell item.Kerosene.name=Kerosene Cell item.LiquidOxygen.name=Liquid Oxygen Cell [LOX] + +//Added 8/1/19 + +//Ores + +tile.OreIrarsite.name=Irarsite Ore +item.crushedIrarsite.name=Crushed Irarsite Ore +item.crushedCentrifugedIrarsite.name=Centrifuged Crushed Irarsite Ore +item.crushedPurifiedIrarsite.name=Purified Crushed Irarsite Ore +item.dustImpureIrarsite.name=Impure Irarsite Dust +item.dustPureIrarsite.name=Purified Irarsite Dust +item.itemDustIrarsite.name=Irarsite Dust +item.itemDustTinyIrarsite.name=Tiny Pile of Irarsite Dust +item.itemDustSmallIrarsite.name=Small Pile of Irarsite Dust + +tile.OreMiessiite.name=Miessiite Ore +item.crushedMiessiite.name=Crushed Miessiite Ore +item.crushedCentrifugedMiessiite.name=Centrifuged Crushed Miessiite Ore +item.crushedPurifiedMiessiite.name=Purified Crushed Miessiite Ore +item.dustImpureMiessiite.name=Impure Miessiite Dust +item.dustPureMiessiite.name=Purified Miessiite Dust +item.itemDustMiessiite.name=Miessiite Dust +item.itemDustTinyMiessiite.name=Tiny Pile of Miessiite Dust +item.itemDustSmallMiessiite.name=Small Pile of Miessiite Dust + +tile.OreComancheite.name=Comancheite Ore +item.crushedComancheite.name=Crushed Comancheite Ore +item.crushedCentrifugedComancheite.name=Centrifuged Crushed Comancheite Ore +item.crushedPurifiedComancheite.name=Purified Crushed Comancheite Ore +item.dustImpureComancheite.name=Impure Comancheite Dust +item.dustPureComancheite.name=Purified Comancheite Dust +item.itemDustComancheite.name=Comancheite Dust +item.itemDustTinyComancheite.name=Tiny Pile of Comancheite Dust +item.itemDustSmallComancheite.name=Small Pile of Comancheite Dust + +tile.OreKoboldite.name=Koboldite Ore +item.crushedKoboldite.name=Crushed Koboldite Ore +item.crushedCentrifugedKoboldite.name=Centrifuged Crushed Koboldite Ore +item.crushedPurifiedKoboldite.name=Purified Crushed Koboldite Ore +item.dustImpureKoboldite.name=Impure Koboldite Dust +item.dustPureKoboldite.name=Purified Koboldite Dust +item.itemDustKoboldite.name=Koboldite Dust +item.itemDustTinyKoboldite.name=Tiny Pile of Koboldite Dust +item.itemDustSmallKoboldite.name=Small Pile of Koboldite Dust + +tile.OrePerroudite.name=Perroudite Ore +item.crushedPerroudite.name=Crushed Perroudite Ore +item.crushedCentrifugedPerroudite.name=Centrifuged Crushed Perroudite Ore +item.crushedPurifiedPerroudite.name=Purified Crushed Perroudite Ore +item.dustImpurePerroudite.name=Impure Perroudite Dust +item.dustPurePerroudite.name=Purified Perroudite Dust +item.itemDustPerroudite.name=Perroudite Dust +item.itemDustTinyPerroudite.name=Tiny Pile of Perroudite Dust +item.itemDustSmallPerroudite.name=Small Pile of Perroudite Dust + +tile.OreDemicheleite.name=Demicheleite Ore +item.crushedDemicheleite.name=Crushed Demicheleite Ore +item.crushedCentrifugedDemicheleite.name=Centrifuged Crushed Demicheleite Ore +item.crushedPurifiedDemicheleite.name=Purified Crushed Demicheleite Ore +item.dustImpureDemicheleite.name=Impure Demicheleite Dust +item.dustPureDemicheleite.name=Purified Demicheleite Dust +item.itemDustDemicheleite.name=Demicheleite Dust +item.itemDustTinyDemicheleite.name=Tiny Pile of Demicheleite Dust +item.itemDustSmallDemicheleite.name=Small Pile of Demicheleite Dust + +tile.OreAlburnite.name=Alburnite Ore +item.crushedAlburnite.name=Crushed Alburnite Ore +item.crushedCentrifugedAlburnite.name=Centrifuged Crushed Alburnite Ore +item.crushedPurifiedAlburnite.name=Purified Crushed Alburnite Ore +item.dustImpureAlburnite.name=Impure Alburnite Dust +item.dustPureAlburnite.name=Purified Alburnite Dust +item.itemDustAlburnite.name=Alburnite Dust +item.itemDustTinyAlburnite.name=Tiny Pile of Alburnite Dust +item.itemDustSmallAlburnite.name=Small Pile of Alburnite Dust + +tile.OreLautarite.name=Lautarite Ore +item.crushedLautarite.name=Crushed Lautarite Ore +item.crushedCentrifugedLautarite.name=Centrifuged Crushed Lautarite Ore +item.crushedPurifiedLautarite.name=Purified Crushed Lautarite Ore +item.dustImpureLautarite.name=Impure Lautarite Dust +item.dustPureLautarite.name=Purified Lautarite Dust +item.itemDustLautarite.name=Lautarite Dust +item.itemDustTinyLautarite.name=Tiny Pile of Lautarite Dust +item.itemDustSmallLautarite.name=Small Pile of Lautarite Dust + +tile.OreBariteRd.name=Barite (Rd) Ore +item.crushedBariteRd.name=Crushed Barite (Rd) Ore +item.crushedCentrifugedBariteRd.name=Centrifuged Crushed Barite (Rd) Ore +item.crushedPurifiedBariteRd.name=Purified Crushed Barite (Rd) Ore +item.dustImpureBariteRd.name=Impure Barite (Rd) Dust +item.dustPureBariteRd.name=Purified Barite (Rd) Dust +item.itemDustBariteRd.name=Barite (Rd) Dust +item.itemDustTinyBariteRd.name=Tiny Pile of Barite (Rd) Dust +item.itemDustSmallBariteRd.name=Small Pile of Barite (Rd) Dust + +tile.OreHoneaite.name=Honeaite Ore +item.crushedHoneaite.name=Crushed Honeaite Ore +item.crushedCentrifugedHoneaite.name=Centrifuged Crushed Honeaite Ore +item.crushedPurifiedHoneaite.name=Purified Crushed Honeaite Ore +item.dustImpureHoneaite.name=Impure Honeaite Dust +item.dustPureHoneaite.name=Purified Honeaite Dust +item.itemDustHoneaite.name=Honeaite Dust +item.itemDustTinyHoneaite.name=Tiny Pile of Honeaite Dust +item.itemDustSmallHoneaite.name=Small Pile of Honeaite Dust + +tile.OreLafossaite.name=Lafossaite Ore +item.crushedLafossaite.name=Crushed Lafossaite Ore +item.crushedCentrifugedLafossaite.name=Centrifuged Crushed Lafossaite Ore +item.crushedPurifiedLafossaite.name=Purified Crushed Lafossaite Ore +item.dustImpureLafossaite.name=Impure Lafossaite Dust +item.dustPureLafossaite.name=Purified Lafossaite Dust +item.itemDustLafossaite.name=Lafossaite Dust +item.itemDustTinyLafossaite.name=Tiny Pile of Lafossaite Dust +item.itemDustSmallLafossaite.name=Small Pile of Lafossaite Dust + +tile.OreKashinite.name=Kashinite Ore +item.crushedKashinite.name=Crushed Kashinite Ore +item.crushedCentrifugedKashinite.name=Centrifuged Crushed Kashinite Ore +item.crushedPurifiedKashinite.name=Purified Crushed Kashinite Ore +item.dustImpureKashinite.name=Impure Kashinite Dust +item.dustPureKashinite.name=Purified Kashinite Dust +item.itemDustKashinite.name=Kashinite Dust +item.itemDustTinyKashinite.name=Tiny Pile of Kashinite Dust +item.itemDustSmallKashinite.name=Small Pile of Kashinite Dust + +tile.OreRadioactiveMineralMix.name=Strange Ore +item.crushedRadioactiveMineralMix.name=Crushed Strange Ore +item.crushedCentrifugedRadioactiveMineralMix.name=Centrifuged Crushed Strange Ore +item.crushedPurifiedRadioactiveMineralMix.name=Purified Crushed Strange Ore +item.dustImpureRadioactiveMineralMix.name=Impure Strange Dust +item.dustPureRadioactiveMineralMix.name=Purified Strange Dust +item.itemDustRadioactiveMineralMix.name=Strange Dust +item.itemDustTinyRadioactiveMineralMix.name=Tiny Pile of Strange Dust +item.itemDustSmallRadioactiveMineralMix.name=Small Pile of Strange Dust + +tile.OreDemicheleiteBr.name=Demicheleite (Br) Ore +item.crushedDemicheleiteBr.name=Crushed Demicheleite (Br) Ore +item.crushedCentrifugedDemicheleiteBr.name=Centrifuged Crushed Demicheleite (Br) Ore +item.crushedPurifiedDemicheleiteBr.name=Purified Crushed Demicheleite (Br) Ore +item.dustImpureDemicheleiteBr.name=Impure Demicheleite (Br) Dust +item.dustPureDemicheleiteBr.name=Purified Demicheleite (Br) Dust +item.itemDustDemicheleiteBr.name=Demicheleite (Br) Dust + + +//Materials + +item.itemIngotTitansteel.name=Titansteel Ingot +item.itemHotIngotTitansteel.name=Hot Titansteel Ingot +item.itemDustTitansteel.name=Titansteel Dust +item.itemDustTinyTitansteel.name=Tiny Pile of Titansteel Dust +item.itemDustSmallTitansteel.name=Small Pile of Titansteel Dust +item.itemNuggetTitansteel.name=Titansteel Nugget +item.itemPlateTitansteel.name=Titansteel Plate +item.itemPlateDoubleTitansteel.name=Double Titansteel Plate +item.itemBoltTitansteel.name=Titansteel Bolt +item.itemRodTitansteel.name=Titansteel Rod +item.itemRodLongTitansteel.name=Long Titansteel Rod +item.itemRingTitansteel.name=Titansteel Ring +item.itemScrewTitansteel.name=Titansteel Screw +item.itemRotorTitansteel.name=Titansteel Rotor +item.itemGearTitansteel.name=Titansteel Gear +item.itemCellTitansteel.name=Titansteel Cell +tile.Block of Titansteel.name=Block of Titansteel +tile.Titansteel Frame Box.name=Titansteel Frame Box + +item.itemIngotOctiron.name=Octiron Ingot +item.itemHotIngotOctiron.name=Hot Octiron Ingot +item.itemDustOctiron.name=Octiron Dust +item.itemDustTinyOctiron.name=Tiny Pile of Octiron Dust +item.itemDustSmallOctiron.name=Small Pile of Octiron Dust +item.itemNuggetOctiron.name=Octiron Nugget +item.itemPlateOctiron.name=Octiron Plate +item.itemPlateDoubleOctiron.name=Double Octiron Plate +item.itemBoltOctiron.name=Octiron Bolt +item.itemRodOctiron.name=Octiron Rod +item.itemRodLongOctiron.name=Long Octiron Rod +item.itemRingOctiron.name=Octiron Ring +item.itemScrewOctiron.name=Octiron Screw +item.itemRotorOctiron.name=Octiron Rotor +item.itemGearOctiron.name=Octiron Gear +item.itemCellOctiron.name=Octiron Cell +tile.Block of Octiron.name=Block of Octiron +tile.Octiron Frame Box.name=Octiron Frame Box + +item.itemIngotWatertightSteel.name=Watertight Steel Ingot +item.itemHotIngotWatertightSteel.name=Hot Watertight Steel Ingot +item.itemDustWatertightSteel.name=Watertight Steel Dust +item.itemDustTinyWatertightSteel.name=Tiny Pile of Watertight Steel Dust +item.itemDustSmallWatertightSteel.name=Small Pile of Watertight Steel Dust +item.itemNuggetWatertightSteel.name=Watertight Steel Nugget +item.itemPlateWatertightSteel.name=Watertight Steel Plate +item.itemPlateDoubleWatertightSteel.name=Double Watertight Steel Plate +item.itemBoltWatertightSteel.name=Watertight Steel Bolt +item.itemRodWatertightSteel.name=Watertight Steel Rod +item.itemRodLongWatertightSteel.name=Long Watertight Steel Rod +item.itemRingWatertightSteel.name=Watertight Steel Ring +item.itemScrewWatertightSteel.name=Watertight Steel Screw +item.itemRotorWatertightSteel.name=Watertight Steel Rotor +item.itemGearWatertightSteel.name=Watertight Steel Gear +item.itemCellWatertightSteel.name=Watertight Steel Cell +tile.Block of Watertight Steel.name=Block of Watertight Steel +tile.Watertight Steel Frame Box.name=Watertight Steel Frame Box + +item.itemIngotCelestialTungsten.name=Celestial Tungsten Ingot +item.itemHotIngotCelestialTungsten.name=Hot Celestial Tungsten Ingot +item.itemDustCelestialTungsten.name=Celestial Tungsten Dust +item.itemDustTinyCelestialTungsten.name=Tiny Pile of Celestial Tungsten Dust +item.itemDustSmallCelestialTungsten.name=Small Pile of Celestial Tungsten Dust +item.itemNuggetCelestialTungsten.name=Celestial Tungsten Nugget +item.itemPlateCelestialTungsten.name=Celestial Tungsten Plate +item.itemPlateDoubleCelestialTungsten.name=Double Celestial Tungsten Plate +item.itemBoltCelestialTungsten.name=Celestial Tungsten Bolt +item.itemRodCelestialTungsten.name=Celestial Tungsten Rod +item.itemRodLongCelestialTungsten.name=Long Celestial Tungsten Rod +item.itemRingCelestialTungsten.name=Celestial Tungsten Ring +item.itemScrewCelestialTungsten.name=Celestial Tungsten Screw +item.itemRotorCelestialTungsten.name=Celestial Tungsten Rotor +item.itemGearCelestialTungsten.name=Celestial Tungsten Gear +item.itemCellCelestialTungsten.name=Celestial Tungsten Cell +tile.Block of Celestial Tungsten.name=Block of Celestial Tungsten +tile.Celestial Tungsten Frame Box.name=Celestial Tungsten Frame Box + +item.itemIngotHypogen.name=Hypogen Ingot +item.itemHotIngotHypogen.name=Hot Hypogen Ingot +item.itemDustHypogen.name=Hypogen Dust +item.itemDustTinyHypogen.name=Tiny Pile of Hypogen Dust +item.itemDustSmallHypogen.name=Small Pile of Hypogen Dust +item.itemNuggetHypogen.name=Hypogen Nugget +item.itemPlateHypogen.name=Hypogen Plate +item.itemPlateDoubleHypogen.name=Double Hypogen Plate +item.itemBoltHypogen.name=Hypogen Bolt +item.itemRodHypogen.name=Hypogen Rod +item.itemRodLongHypogen.name=Long Hypogen Rod +item.itemRingHypogen.name=Hypogen Ring +item.itemScrewHypogen.name=Hypogen Screw +item.itemRotorHypogen.name=Hypogen Rotor +item.itemGearHypogen.name=Hypogen Gear +item.itemCellHypogen.name=Hypogen Cell +tile.Block of Hypogen.name=Block of Hypogen +tile.Hypogen Frame Box.name=Hypogen Frame Box + +item.itemIngotArceusAlloy2B.name=Arceus Alloy 2B Ingot +item.itemHotIngotArceusAlloy2B.name=Hot Arceus Alloy 2B Ingot +item.itemDustArceusAlloy2B.name=Arceus Alloy 2B Dust +item.itemDustTinyArceusAlloy2B.name=Tiny Pile of Arceus Alloy 2B Dust +item.itemDustSmallArceusAlloy2B.name=Small Pile of Arceus Alloy 2B Dust +item.itemNuggetArceusAlloy2B.name=Arceus Alloy 2B Nugget +item.itemPlateArceusAlloy2B.name=Arceus Alloy 2B Plate +item.itemPlateDoubleArceusAlloy2B.name=Double Arceus Alloy 2B Plate +item.itemBoltArceusAlloy2B.name=Arceus Alloy 2B Bolt +item.itemRodArceusAlloy2B.name=Arceus Alloy 2B Rod +item.itemRodLongArceusAlloy2B.name=Long Arceus Alloy 2B Rod +item.itemRingArceusAlloy2B.name=Arceus Alloy 2B Ring +item.itemScrewArceusAlloy2B.name=Arceus Alloy 2B Screw +item.itemRotorArceusAlloy2B.name=Arceus Alloy 2B Rotor +item.itemGearArceusAlloy2B.name=Arceus Alloy 2B Gear +item.itemCellArceusAlloy2B.name=Arceus Alloy 2B Cell +tile.Block of Arceus Alloy 2B.name=Block of Arceus Alloy 2B +tile.Arceus Alloy 2B Frame Box.name=Arceus Alloy 2B Frame Box + +item.itemIngotChromaticGlass.name=Chromatic Glass Ingot +item.itemHotIngotChromaticGlass.name=Hot Chromatic Glass Ingot +item.itemDustChromaticGlass.name=Chromatic Glass Dust +item.itemDustTinyChromaticGlass.name=Tiny Pile of Chromatic Glass Dust +item.itemDustSmallChromaticGlass.name=Small Pile of Chromatic Glass Dust +item.itemNuggetChromaticGlass.name=Chromatic Glass Nugget +item.itemPlateChromaticGlass.name=Chromatic Glass Plate +item.itemPlateDoubleChromaticGlass.name=Double Chromatic Glass Plate +item.itemBoltChromaticGlass.name=Chromatic Glass Bolt +item.itemRodChromaticGlass.name=Chromatic Glass Rod +item.itemRodLongChromaticGlass.name=Long Chromatic Glass Rod +item.itemRingChromaticGlass.name=Chromatic Glass Ring +item.itemScrewChromaticGlass.name=Chromatic Glass Screw +item.itemRotorChromaticGlass.name=Chromatic Glass Rotor +item.itemGearChromaticGlass.name=Chromatic Glass Gear +item.itemCellChromaticGlass.name=Chromatic Glass Cell +tile.Block of Chromatic Glass.name=Block of Chromatic Glass +tile.Chromatic Glass Frame Box.name=Chromatic Glass Frame Box + +item.itemIngotAstralTitanium.name=Astral Titanium Ingot +item.itemHotIngotAstralTitanium.name=Hot Astral Titanium Ingot +item.itemDustAstralTitanium.name=Astral Titanium Dust +item.itemDustTinyAstralTitanium.name=Tiny Pile of Astral Titanium Dust +item.itemDustSmallAstralTitanium.name=Small Pile of Astral Titanium Dust +item.itemNuggetAstralTitanium.name=Astral Titanium Nugget +item.itemPlateAstralTitanium.name=Astral Titanium Plate +item.itemPlateDoubleAstralTitanium.name=Double Astral Titanium Plate +item.itemBoltAstralTitanium.name=Astral Titanium Bolt +item.itemRodAstralTitanium.name=Astral Titanium Rod +item.itemRodLongAstralTitanium.name=Long Astral Titanium Rod +item.itemRingAstralTitanium.name=Astral Titanium Ring +item.itemScrewAstralTitanium.name=Astral Titanium Screw +item.itemRotorAstralTitanium.name=Astral Titanium Rotor +item.itemGearAstralTitanium.name=Astral Titanium Gear +item.itemCellAstralTitanium.name=Astral Titanium Cell +tile.Block of Astral Titanium.name=Block of Astral Titanium +tile.Astral Titanium Frame Box.name=Astral Titanium Frame Box + +item.itemIngotTungstenTitaniumCarbide.name=Tungsten Titanium Carbide Ingot +item.itemHotIngotTungstenTitaniumCarbide.name=Hot Tungsten Titanium Carbide Ingot +item.itemDustTungstenTitaniumCarbide.name=Tungsten Titanium Carbide Dust +item.itemDustTinyTungstenTitaniumCarbide.name=Tiny Pile of Tungsten Titanium Carbide Dust +item.itemDustSmallTungstenTitaniumCarbide.name=Small Pile of Tungsten Titanium Carbide Dust +item.itemNuggetTungstenTitaniumCarbide.name=Tungsten Titanium Carbide Nugget +item.itemPlateTungstenTitaniumCarbide.name=Tungsten Titanium Carbide Plate +item.itemPlateDoubleTungstenTitaniumCarbide.name=Double Tungsten Titanium Carbide Plate +item.itemBoltTungstenTitaniumCarbide.name=Tungsten Titanium Carbide Bolt +item.itemRodTungstenTitaniumCarbide.name=Tungsten Titanium Carbide Rod +item.itemRodLongTungstenTitaniumCarbide.name=Long Tungsten Titanium Carbide Rod +item.itemRingTungstenTitaniumCarbide.name=Tungsten Titanium Carbide Ring +item.itemScrewTungstenTitaniumCarbide.name=Tungsten Titanium Carbide Screw +item.itemRotorTungstenTitaniumCarbide.name=Tungsten Titanium Carbide Rotor +item.itemGearTungstenTitaniumCarbide.name=Tungsten Titanium Carbide Gear +item.itemCellTungstenTitaniumCarbide.name=Tungsten Titanium Carbide Cell +tile.Block of Tungsten Titanium Carbide.name=Block of Tungsten Titanium Carbide +tile.Tungsten Titanium Carbide Frame Box.name=Tungsten Titanium Carbide Frame Box + +item.itemIngotNitinol60.name=Nitinol 60 Ingot +item.itemHotIngotNitinol60.name=Hot Nitinol 60 Ingot +item.itemDustNitinol60.name=Nitinol 60 Dust +item.itemDustTinyNitinol60.name=Tiny Pile of Nitinol 60 Dust +item.itemDustSmallNitinol60.name=Small Pile of Nitinol 60 Dust +item.itemNuggetNitinol60.name=Nitinol 60 Nugget +item.itemPlateNitinol60.name=Nitinol 60 Plate +item.itemPlateDoubleNitinol60.name=Double Nitinol 60 Plate +item.itemBoltNitinol60.name=Nitinol 60 Bolt +item.itemRodNitinol60.name=Nitinol 60 Rod +item.itemRodLongNitinol60.name=Long Nitinol 60 Rod +item.itemRingNitinol60.name=Nitinol 60 Ring +item.itemScrewNitinol60.name=Nitinol 60 Screw +item.itemRotorNitinol60.name=Nitinol 60 Rotor +item.itemGearNitinol60.name=Nitinol 60 Gear +item.itemCellNitinol60.name=Nitinol 60 Cell +tile.Block of Nitinol 60.name=Block of Nitinol 60 +tile.Nitinol 60 Frame Box.name=Nitinol 60 Frame Box + +item.itemIngotAdvancedNitinol.name=Advanced Nitinol Ingot +item.itemHotIngotAdvancedNitinol.name=Hot Advanced Nitinol Ingot +item.itemDustAdvancedNitinol.name=Advanced Nitinol Dust +item.itemDustTinyAdvancedNitinol.name=Tiny Pile of Advanced Nitinol Dust +item.itemDustSmallAdvancedNitinol.name=Small Pile of Advanced Nitinol Dust +item.itemNuggetAdvancedNitinol.name=Advanced Nitinol Nugget +item.itemPlateAdvancedNitinol.name=Advanced Nitinol Plate +item.itemPlateDoubleAdvancedNitinol.name=Double Advanced Nitinol Plate +item.itemBoltAdvancedNitinol.name=Advanced Nitinol Bolt +item.itemRodAdvancedNitinol.name=Advanced Nitinol Rod +item.itemRodLongAdvancedNitinol.name=Long Advanced Nitinol Rod +item.itemRingAdvancedNitinol.name=Advanced Nitinol Ring +item.itemScrewAdvancedNitinol.name=Advanced Nitinol Screw +item.itemRotorAdvancedNitinol.name=Advanced Nitinol Rotor +item.itemGearAdvancedNitinol.name=Advanced Nitinol Gear +item.itemCellAdvancedNitinol.name=Advanced Nitinol Cell +tile.Block of Advanced Nitinol.name=Block of Advanced Nitinol +tile.Advanced Nitinol Frame Box.name=Advanced Nitinol Frame Box + +item.itemIngotArcanite.name=Arcanite Ingot +item.itemHotIngotArcanite.name=Hot Arcanite Ingot +item.itemDustArcanite.name=Arcanite Dust +item.itemDustTinyArcanite.name=Tiny Pile of Arcanite Dust +item.itemDustSmallArcanite.name=Small Pile of Arcanite Dust +item.itemNuggetArcanite.name=Arcanite Nugget +item.itemPlateArcanite.name=Arcanite Plate +item.itemPlateDoubleArcanite.name=Double Arcanite Plate +item.itemBoltArcanite.name=Arcanite Bolt +item.itemRodArcanite.name=Arcanite Rod +item.itemRodLongArcanite.name=Long Arcanite Rod +item.itemRingArcanite.name=Arcanite Ring +item.itemScrewArcanite.name=Arcanite Screw +item.itemRotorArcanite.name=Arcanite Rotor +item.itemGearArcanite.name=Arcanite Gear +item.itemCellArcanite.name=Arcanite Cell +tile.Block of Arcanite.name=Block of Arcanite +tile.Arcanite Frame Box.name=Arcanite Frame Box + +item.itemIngotPikyonium64B.name=Pikyonium 64B Ingot +item.itemHotIngotPikyonium64B.name=Hot Pikyonium 64B Ingot +item.itemDustPikyonium64B.name=Pikyonium 64B Dust +item.itemDustTinyPikyonium64B.name=Tiny Pile of Pikyonium 64B Dust +item.itemDustSmallPikyonium64B.name=Small Pile of Pikyonium 64B Dust +item.itemNuggetPikyonium64B.name=Pikyonium 64B Nugget +item.itemPlatePikyonium64B.name=Pikyonium 64B Plate +item.itemPlateDoublePikyonium64B.name=Double Pikyonium 64B Plate +item.itemBoltPikyonium64B.name=Pikyonium 64B Bolt +item.itemRodPikyonium64B.name=Pikyonium 64B Rod +item.itemRodLongPikyonium64B.name=Long Pikyonium 64B Rod +item.itemRingPikyonium64B.name=Pikyonium 64B Ring +item.itemScrewPikyonium64B.name=Pikyonium 64B Screw +item.itemRotorPikyonium64B.name=Pikyonium 64B Rotor +item.itemGearPikyonium64B.name=Pikyonium 64B Gear +item.itemCellPikyonium64B.name=Pikyonium 64B Cell +tile.Block of Pikyonium 64B.name=Block of Pikyonium 64B +tile.Pikyonium 64B Frame Box.name=Pikyonium 64B Frame Box + +item.itemIngotCinobiteA243.name=Cinobite A243 Ingot +item.itemHotIngotCinobiteA243.name=Hot Cinobite A243 Ingot +item.itemDustCinobiteA243.name=Cinobite A243 Dust +item.itemDustTinyCinobiteA243.name=Tiny Pile of Cinobite A243 Dust +item.itemDustSmallCinobiteA243.name=Small Pile of Cinobite A243 Dust +item.itemNuggetCinobiteA243.name=Cinobite A243 Nugget +item.itemPlateCinobiteA243.name=Cinobite A243 Plate +item.itemPlateDoubleCinobiteA243.name=Double Cinobite A243 Plate +item.itemBoltCinobiteA243.name=Cinobite A243 Bolt +item.itemRodCinobiteA243.name=Cinobite A243 Rod +item.itemRodLongCinobiteA243.name=Long Cinobite A243 Rod +item.itemRingCinobiteA243.name=Cinobite A243 Ring +item.itemScrewCinobiteA243.name=Cinobite A243 Screw +item.itemRotorCinobiteA243.name=Cinobite A243 Rotor +item.itemGearCinobiteA243.name=Cinobite A243 Gear +item.itemCellCinobiteA243.name=Cinobite A243 Cell +tile.Block of Cinobite A243.name=Block of Cinobite A243 +tile.Cinobite A243 Frame Box.name=Cinobite A243 Frame Box + +item.itemIngotLafiumCompound.name=Lafium Compound Ingot +item.itemHotIngotLafiumCompound.name=Hot Lafium Compound Ingot +item.itemDustLafiumCompound.name=Lafium Compound Dust +item.itemDustTinyLafiumCompound.name=Tiny Pile of Lafium Compound Dust +item.itemDustSmallLafiumCompound.name=Small Pile of Lafium Compound Dust +item.itemNuggetLafiumCompound.name=Lafium Compound Nugget +item.itemPlateLafiumCompound.name=Lafium Compound Plate +item.itemPlateDoubleLafiumCompound.name=Double Lafium Compound Plate +item.itemBoltLafiumCompound.name=Lafium Compound Bolt +item.itemRodLafiumCompound.name=Lafium Compound Rod +item.itemRodLongLafiumCompound.name=Long Lafium Compound Rod +item.itemRingLafiumCompound.name=Lafium Compound Ring +item.itemScrewLafiumCompound.name=Lafium Compound Screw +item.itemRotorLafiumCompound.name=Lafium Compound Rotor +item.itemGearLafiumCompound.name=Lafium Compound Gear +item.itemCellLafiumCompound.name=Lafium Compound Cell +tile.Block of Lafium Compound.name=Block of Lafium Compound +tile.Lafium Compound Frame Box.name=Lafium Compound Frame Box + +item.itemIngotKoboldite.name=Koboldite Ingot +item.itemHotIngotKoboldite.name=Hot Koboldite Ingot +item.itemDustKoboldite.name=Koboldite Dust +item.itemDustTinyKoboldite.name=Tiny Pile of Koboldite Dust +item.itemDustSmallKoboldite.name=Small Pile of Koboldite Dust +item.itemNuggetKoboldite.name=Koboldite Nugget +item.itemPlateKoboldite.name=Koboldite Plate +item.itemPlateDoubleKoboldite.name=Double Koboldite Plate +item.itemBoltKoboldite.name=Koboldite Bolt +item.itemRodKoboldite.name=Koboldite Rod +item.itemRodLongKoboldite.name=Long Koboldite Rod +item.itemRingKoboldite.name=Koboldite Ring +item.itemScrewKoboldite.name=Koboldite Screw +item.itemRotorKoboldite.name=Koboldite Rotor +item.itemGearKoboldite.name=Koboldite Gear +item.itemCellKoboldite.name=Koboldite Cell +tile.Block of Koboldite.name=Block of Koboldite +tile.Koboldite Frame Box.name=Koboldite Frame Box + +item.itemIngotAbyssalAlloy.name=Abyssal Alloy Ingot +item.itemHotIngotAbyssalAlloy.name=Hot Abyssal Alloy Ingot +item.itemDustAbyssalAlloy.name=Abyssal Alloy Dust +item.itemDustTinyAbyssalAlloy.name=Tiny Pile of Abyssal Alloy Dust +item.itemDustSmallAbyssalAlloy.name=Small Pile of Abyssal Alloy Dust +item.itemNuggetAbyssalAlloy.name=Abyssal Alloy Nugget +item.itemPlateAbyssalAlloy.name=Abyssal Alloy Plate +item.itemPlateDoubleAbyssalAlloy.name=Double Abyssal Alloy Plate +item.itemBoltAbyssalAlloy.name=Abyssal Alloy Bolt +item.itemRodAbyssalAlloy.name=Abyssal Alloy Rod +item.itemRodLongAbyssalAlloy.name=Long Abyssal Alloy Rod +item.itemRingAbyssalAlloy.name=Abyssal Alloy Ring +item.itemScrewAbyssalAlloy.name=Abyssal Alloy Screw +item.itemRotorAbyssalAlloy.name=Abyssal Alloy Rotor +item.itemGearAbyssalAlloy.name=Abyssal Alloy Gear +item.itemCellAbyssalAlloy.name=Abyssal Alloy Cell +tile.Block of Abyssal Alloy.name=Block of Abyssal Alloy +tile.Abyssal Alloy Frame Box.name=Abyssal Alloy Frame Box + + + + + + + + + + + + + + + + + + + +//Radioactive +item.dustTechnetium99M.name=Technetium 99M Dust +item.dustTechnetium99.name=Technetium 99 Dust +item.dustMolybdenum99.name=Molybdenum 99 Dust + +//Bags +item.item.MysticBag.name=Mystic Pouch +item.item.Eatotron9000.name=Eatotronic 9000 +item.item.ToolBox.name=Workers Toolbox + +//Cells +item.Bromine.name=Bromine Cell +item.Krypton.name=Krypton Cell +item.cryotheum.name=Cryotheum Cell +item.pyrotheum.name=Pyrotheum Cell +item.GeneticMutagen.name=Mutagen Cell + +//Ingots +item.itemHotIngotIncoloy020.name=Hot Incoloy-020 Ingot +item.itemHotIngotIncoloyDS.name=Hot Incoloy-DS Ingot +item.itemHotIngotTalonite.name=Hot Talonite Ingot +item.itemHotIngotHastelloyX.name=Hot Hastelloy-X Ingot +item.itemHotIngotHastelloyW.name=Hot Hastelloy-W Carbide Ingot + +//Railcraft Fix +item.railcraft.part.plate.lead.name=Lead Plate + +//Ions +item.particle.ion.Hydrogen.name=Hydrogen Ion +item.particle.ion.Helium.name=Helium Ion +item.particle.ion.Lithium.name=Lithium Ion +item.particle.ion.Beryllium.name=Beryllium Ion +item.particle.ion.Boron.name=Boron Ion +item.particle.ion.Carbon.name=Carbon Ion +item.particle.ion.Nitrogen.name=Nitrogen Ion +item.particle.ion.Oxygen.name=Oxygen Ion +item.particle.ion.Fluorine.name=Fluorine Ion +item.particle.ion.Neon.name=Neon Ion +item.particle.ion.Sodium.name=Sodium Ion +item.particle.ion.Magnesium.name=Magnesium Ion +item.particle.ion.Aluminum.name=Aluminum Ion +item.particle.ion.Silicon.name=Silicon Ion +item.particle.ion.Phosphorus.name=Phosphorus Ion +item.particle.ion.Sulfur.name=Sulfur Ion +item.particle.ion.Chlorine.name=Chlorine Ion +item.particle.ion.Argon.name=Argon Ion +item.particle.ion.Potassium.name=Potassium Ion +item.particle.ion.Calcium.name=Calcium Ion +item.particle.ion.Scandium.name=Scandium Ion +item.particle.ion.Titanium.name=Titanium Ion +item.particle.ion.Vanadium.name=Vanadium Ion +item.particle.ion.Chromium.name=Chromium Ion +item.particle.ion.Manganese.name=Manganese Ion +item.particle.ion.Iron.name=Iron Ion +item.particle.ion.Cobalt.name=Cobalt Ion +item.particle.ion.Nickel.name=Nickel Ion +item.particle.ion.Copper.name=Copper Ion +item.particle.ion.Zinc.name=Zinc Ion +item.particle.ion.Gallium.name=Gallium Ion +item.particle.ion.Germanium.name=Germanium Ion +item.particle.ion.Arsenic.name=Arsenic Ion +item.particle.ion.Selenium.name=Selenium Ion +item.particle.ion.Bromine.name=Bromine Ion +item.particle.ion.Krypton.name=Krypton Ion +item.particle.ion.Rubidium.name=Rubidium Ion +item.particle.ion.Strontium.name=Strontium Ion +item.particle.ion.Yttrium.name=Yttrium Ion +item.particle.ion.Zirconium.name=Zirconium Ion +item.particle.ion.Niobium.name=Niobium Ion +item.particle.ion.Molybdenum.name=Molybdenum Ion +item.particle.ion.Technetium.name=Technetium Ion +item.particle.ion.Ruthenium.name=Ruthenium Ion +item.particle.ion.Rhodium.name=Rhodium Ion +item.particle.ion.Palladium.name=Palladium Ion +item.particle.ion.Silver.name=Silver Ion +item.particle.ion.Cadmium.name=Cadmium Ion +item.particle.ion.Indium.name=Indium Ion +item.particle.ion.Tin.name=Tin Ion +item.particle.ion.Antimony.name=Antimony Ion +item.particle.ion.Tellurium.name=Tellurium Ion +item.particle.ion.Iodine.name=Iodine Ion +item.particle.ion.Xenon.name=Xenon Ion +item.particle.ion.Cesium.name=Cesium Ion +item.particle.ion.Barium.name=Barium Ion +item.particle.ion.Lanthanum.name=Lanthanum Ion +item.particle.ion.Cerium.name=Cerium Ion +item.particle.ion.Praseodymium.name=Praseodymium Ion +item.particle.ion.Neodymium.name=Neodymium Ion +item.particle.ion.Promethium.name=Promethium Ion +item.particle.ion.Samarium.name=Samarium Ion +item.particle.ion.Europium.name=Europium Ion +item.particle.ion.Gadolinium.name=Gadolinium Ion +item.particle.ion.Terbium.name=Terbium Ion +item.particle.ion.Dysprosium.name=Dysprosium Ion +item.particle.ion.Holmium.name=Holmium Ion +item.particle.ion.Erbium.name=Erbium Ion +item.particle.ion.Thulium.name=Thulium Ion +item.particle.ion.Ytterbium.name=Ytterbium Ion +item.particle.ion.Lutetium.name=Lutetium Ion +item.particle.ion.Hafnium.name=Hafnium Ion +item.particle.ion.Tantalum.name=Tantalum Ion +item.particle.ion.Tungsten.name=Tungsten Ion +item.particle.ion.Rhenium.name=Rhenium Ion +item.particle.ion.Osmium.name=Osmium Ion +item.particle.ion.Iridium.name=Iridium Ion +item.particle.ion.Platinum.name=Platinum Ion +item.particle.ion.Gold.name=Gold Ion +item.particle.ion.Mercury.name=Mercury Ion +item.particle.ion.Thallium.name=Thallium Ion +item.particle.ion.Lead.name=Lead Ion +item.particle.ion.Bismuth.name=Bismuth Ion +item.particle.ion.Polonium.name=Polonium Ion +item.particle.ion.Astatine.name=Astatine Ion +item.particle.ion.Radon.name=Radon Ion +item.particle.ion.Francium.name=Francium Ion +item.particle.ion.Radium.name=Radium Ion +item.particle.ion.Actinium.name=Actinium Ion +item.particle.ion.Thorium.name=Thorium Ion +item.particle.ion.Protactinium.name=Protactinium Ion +item.particle.ion.Uranium.name=Uranium Ion +item.particle.ion.Neptunium.name=Neptunium Ion +item.particle.ion.Plutonium.name=Plutonium Ion +item.particle.ion.Americium.name=Americium Ion +item.particle.ion.Curium.name=Curium Ion +item.particle.ion.Berkelium.name=Berkelium Ion +item.particle.ion.Californium.name=Californium Ion +item.particle.ion.Einsteinium.name=Einsteinium Ion +item.particle.ion.Fermium.name=Fermium Ion +item.particle.ion.Mendelevium.name=Mendelevium Ion +item.particle.ion.Nobelium.name=Nobelium Ion +item.particle.ion.Lawrencium.name=Lawrencium Ion +item.particle.ion.Rutherfordium.name=Rutherfordium Ion +item.particle.ion.Dubnium.name=Dubnium Ion +item.particle.ion.Seaborgium.name=Seaborgium Ion +item.particle.ion.Bohrium.name=Bohrium Ion +item.particle.ion.Hassium.name=Hassium Ion +item.particle.ion.Meitnerium.name=Meitnerium Ion +item.particle.ion.Darmstadtium.name=Darmstadtium Ion +item.particle.ion.Roentgenium.name=Roentgenium Ion +item.particle.ion.Copernicium.name=Copernicium Ion +item.particle.ion.Nihonium.name=Nihonium Ion +item.particle.ion.Flerovium.name=Flerovium Ion +item.particle.ion.Moscovium.name=Moscovium Ion +item.particle.ion.Livermorium.name=Livermorium Ion +item.particle.ion.Tennessine.name=Tennessine Ion +item.particle.ion.Oganesson.name=Oganesson Ion + + +item.particle.base.Graviton.name=Graviton +item.particle.base.Up.name=Up Quark +item.particle.base.Down.name=Down Quark +item.particle.base.Charm.name=Charm Quark +item.particle.base.Strange.name=Strange Quark +item.particle.base.Top.name=Top Quark +item.particle.base.Bottom.name=Bottom Quark +item.particle.base.Electron.name=Electron +item.particle.base.Electron Neutrino.name=Electron Neutrino +item.particle.base.Muon.name=Muon +item.particle.base.Muon Neutrino.name=Muon Neutrino +item.particle.base.Tau.name=Tau +item.particle.base.Tau Neutrino.name=Tau Neutrino +item.particle.base.Gluon.name=Gluon +item.particle.base.Photon.name=Photon +item.particle.base.Z Boson.name=Z Boson +item.particle.base.W Boson.name=W Boson +item.particle.base.Higgs Boson.name=Higgs Boson +item.particle.base.Proton.name=Proton +item.particle.base.Neutron.name=Neutron +item.particle.base.Lambda.name=Lambda +item.particle.base.Omega.name=Omega +item.particle.base.Pion.name=Pion +item.particle.base.ETA Meson.name=ETA Meson + + + |