aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/gregtech')
-rw-r--r--src/main/java/gregtech/GT_Mod.java3
-rw-r--r--src/main/java/gregtech/api/GregTech_API.java2
-rw-r--r--src/main/java/gregtech/api/items/GT_MetaGenerated_Tool.java5
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Cable.java6
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Fluid.java20
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Maintenance.java21
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java5
-rw-r--r--src/main/java/gregtech/api/util/GT_LanguageManager.java16
-rw-r--r--src/main/java/gregtech/api/util/GT_Utility.java4
-rw-r--r--src/main/java/gregtech/common/GT_Proxy.java39
-rw-r--r--src/main/java/gregtech/common/blocks/GT_Item_Machines.java10
-rw-r--r--src/main/java/gregtech/common/covers/GT_Cover_FluidRegulator.java245
-rw-r--r--src/main/java/gregtech/common/items/armor/ArmorCalculation.java353
-rw-r--r--src/main/java/gregtech/common/items/armor/ArmorData.java298
-rw-r--r--src/main/java/gregtech/common/items/armor/ModularArmor_Item.java71
-rw-r--r--src/main/java/gregtech/common/items/armor/Values.java125
-rw-r--r--src/main/java/gregtech/common/items/armor/components/ArmorComponent.java68
-rw-r--r--src/main/java/gregtech/common/items/armor/components/ArmorComponentBattery.java18
-rw-r--r--src/main/java/gregtech/common/items/armor/components/ArmorComponentFunction.java21
-rw-r--r--src/main/java/gregtech/common/items/armor/components/ArmorElectricComponent.java31
-rw-r--r--src/main/java/gregtech/common/items/armor/components/ArmorPlating.java103
-rw-r--r--src/main/java/gregtech/common/items/armor/components/IArmorComponent.java11
-rw-r--r--src/main/java/gregtech/common/items/armor/components/LoadArmorComponents.java251
-rw-r--r--src/main/java/gregtech/common/items/armor/components/StatType.java56
-rw-r--r--src/main/java/gregtech/common/items/armor/gui/ContainerBasicArmor.java (renamed from src/main/java/gregtech/common/items/armor/ContainerBasicArmor.java)20
-rw-r--r--src/main/java/gregtech/common/items/armor/gui/ContainerElectricArmor1.java (renamed from src/main/java/gregtech/common/items/armor/ContainerElectricArmor1.java)26
-rw-r--r--src/main/java/gregtech/common/items/armor/gui/ContainerModularArmor.java (renamed from src/main/java/gregtech/common/items/armor/ContainerModularArmor.java)8
-rw-r--r--src/main/java/gregtech/common/items/armor/gui/FluidSync.java (renamed from src/main/java/gregtech/common/items/armor/FluidSync.java)2
-rw-r--r--src/main/java/gregtech/common/items/armor/gui/FluidSync2.java (renamed from src/main/java/gregtech/common/items/armor/FluidSync2.java)2
-rw-r--r--src/main/java/gregtech/common/items/armor/gui/GuiElectricArmor1.java (renamed from src/main/java/gregtech/common/items/armor/GuiElectricArmor1.java)95
-rw-r--r--src/main/java/gregtech/common/items/armor/gui/GuiModularArmor.java (renamed from src/main/java/gregtech/common/items/armor/GuiModularArmor.java)89
-rw-r--r--src/main/java/gregtech/common/items/armor/gui/InventoryArmor.java (renamed from src/main/java/gregtech/common/items/armor/InventoryArmor.java)4
-rw-r--r--src/main/java/gregtech/common/items/armor/gui/SlotArmor.java18
-rw-r--r--src/main/java/gregtech/common/items/armor/gui/SlotFluid.java (renamed from src/main/java/gregtech/common/items/armor/SlotFluid.java)2
-rw-r--r--src/main/java/gregtech/common/items/armor/gui/SlotLocked.java (renamed from src/main/java/gregtech/common/items/armor/SlotLocked.java)2
-rw-r--r--src/main/java/gregtech/common/items/behaviors/Behaviour_Sense.java6
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Scanner.java1
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_AdvMiner2.java7
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeBoiler.java4
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_HPSteam.java1
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Plasma.java1
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Steam.java1
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OilDrill.java1
-rw-r--r--src/main/java/gregtech/loaders/postload/GT_CraftingRecipeLoader.java29
-rw-r--r--src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java40
-rw-r--r--src/main/java/gregtech/loaders/preload/GT_Loader_Item_Block_And_Fluid.java17
46 files changed, 1186 insertions, 972 deletions
diff --git a/src/main/java/gregtech/GT_Mod.java b/src/main/java/gregtech/GT_Mod.java
index 2e727f7250..77e9cfaaa0 100644
--- a/src/main/java/gregtech/GT_Mod.java
+++ b/src/main/java/gregtech/GT_Mod.java
@@ -21,6 +21,7 @@ import gregtech.common.GT_Proxy;
import gregtech.common.GT_RecipeAdder;
import gregtech.common.entities.GT_Entity_Arrow;
import gregtech.common.entities.GT_Entity_Arrow_Potion;
+import gregtech.common.items.armor.components.LoadArmorComponents;
import gregtech.common.items.behaviors.Behaviour_DataOrb;
import gregtech.loaders.load.GT_CoverBehaviorLoader;
import gregtech.loaders.load.GT_FuelLoader;
@@ -124,6 +125,7 @@ public class GT_Mod implements IGT_Mod {
GregTech_API.sUnification = new GT_Config(new Configuration(new File(new File(aEvent.getModConfigurationDirectory(), "GregTech"), "Unification.cfg")));
GregTech_API.sSpecialFile = new GT_Config(new Configuration(new File(new File(aEvent.getModConfigurationDirectory(), "GregTech"), "Other.cfg")));
GregTech_API.sOPStuff = new GT_Config(new Configuration(new File(new File(aEvent.getModConfigurationDirectory(), "GregTech"), "OverpoweredStuff.cfg")));
+ GregTech_API.sModularArmor = new GT_Config(new Configuration(new File(new File(aEvent.getModConfigurationDirectory(), "GregTech"), "ModularArmor.cfg")));
GregTech_API.sClientDataFile = new GT_Config(new Configuration(new File(aEvent.getModConfigurationDirectory().getParentFile(), "GregTech.cfg")));
GregTech_API.mIC2Classic = Loader.isModLoaded("IC2-Classic-Spmod");
@@ -537,6 +539,7 @@ public class GT_Mod implements IGT_Mod {
new GT_CropLoader().run();
new GT_Worldgenloader().run();
new GT_CoverLoader().run();
+ LoadArmorComponents.init();
GT_RecipeRegistrator.registerUsagesForMaterials(new ItemStack(Blocks.planks, 1), null, false);
GT_RecipeRegistrator.registerUsagesForMaterials(new ItemStack(Blocks.cobblestone, 1), null, false);
diff --git a/src/main/java/gregtech/api/GregTech_API.java b/src/main/java/gregtech/api/GregTech_API.java
index 691e83e8e6..9633eb3950 100644
--- a/src/main/java/gregtech/api/GregTech_API.java
+++ b/src/main/java/gregtech/api/GregTech_API.java
@@ -171,7 +171,7 @@ public class GregTech_API {
/**
* The Configuration Objects
*/
- public static GT_Config sRecipeFile = null, sMachineFile = null, sWorldgenFile = null, sMaterialProperties = null, sMaterialComponents = null, sUnification = null, sSpecialFile = null, sClientDataFile, sOPStuff = null;
+ public static GT_Config sRecipeFile = null, sMachineFile = null, sWorldgenFile = null, sModularArmor = null, sMaterialProperties = null, sMaterialComponents = null, sUnification = null, sSpecialFile = null, sClientDataFile, sOPStuff = null;
public static int TICKS_FOR_LAG_AVERAGING = 25, MILLISECOND_THRESHOLD_UNTIL_LAG_WARNING = 100;
/**
* Initialized by the Block creation.
diff --git a/src/main/java/gregtech/api/items/GT_MetaGenerated_Tool.java b/src/main/java/gregtech/api/items/GT_MetaGenerated_Tool.java
index 0fae6d119b..b368a47b66 100644
--- a/src/main/java/gregtech/api/items/GT_MetaGenerated_Tool.java
+++ b/src/main/java/gregtech/api/items/GT_MetaGenerated_Tool.java
@@ -6,6 +6,7 @@ import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import crazypants.enderio.api.tool.ITool;
import forestry.api.arboriculture.IToolGrafter;
+import gregtech.GT_Mod;
import gregtech.api.GregTech_API;
import gregtech.api.enchants.Enchantment_Radioactivity;
import gregtech.api.enums.Materials;
@@ -16,6 +17,7 @@ import gregtech.api.util.GT_LanguageManager;
import gregtech.api.util.GT_ModHandler;
import gregtech.api.util.GT_OreDictUnificator;
import gregtech.api.util.GT_Utility;
+import gregtech.common.GT_Proxy;
import mods.railcraft.api.core.items.IToolCrowbar;
import net.minecraft.block.Block;
import net.minecraft.client.renderer.texture.IIconRegister;
@@ -476,7 +478,8 @@ public abstract class GT_MetaGenerated_Tool extends GT_MetaBase_Item implements
if (tStats == null) return null;
doDamage(aStack, tStats.getToolDamagePerContainerCraft());
aStack = aStack.stackSize > 0 ? aStack : null;
- if (playSound) {
+ if (playSound && GT_Mod.gregtechproxy.mTicksUntilNextCraftSound <= 0) {
+ GT_Mod.gregtechproxy.mTicksUntilNextCraftSound = 10;
String sound = (aStack == null) ? tStats.getBreakingSound() : tStats.getCraftingSound();
GT_Utility.doSoundAtClient(sound, 1, 1.0F);
}
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Cable.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Cable.java
index c79bca8df2..fdb3c0da8b 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Cable.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Cable.java
@@ -267,9 +267,9 @@ public class GT_MetaPipeEntity_Cable extends MetaPipeEntity implements IMetaTile
@Override
public String[] getDescription() {
return new String[]{
- "Max Voltage: " + EnumChatFormatting.GREEN + mVoltage + " (" + VN[GT_Utility.getTier(mVoltage)] + ")" + EnumChatFormatting.GRAY,
- "Max Amperage: " + EnumChatFormatting.YELLOW + mAmperage + EnumChatFormatting.GRAY,
- "Loss/Meter/Ampere: " + EnumChatFormatting.RED + mCableLossPerMeter + EnumChatFormatting.GRAY + " EU-Volt"
+ "Max Voltage: %%%" + EnumChatFormatting.GREEN + mVoltage + " (" + VN[GT_Utility.getTier(mVoltage)] + ")" + EnumChatFormatting.GRAY,
+ "Max Amperage: %%%" + EnumChatFormatting.YELLOW + mAmperage + EnumChatFormatting.GRAY,
+ "Loss/Meter/Ampere: %%%" + EnumChatFormatting.RED + mCableLossPerMeter + EnumChatFormatting.GRAY + " EU-Volt"
};
}
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Fluid.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Fluid.java
index 560ddb0947..effff677d7 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Fluid.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Fluid.java
@@ -2,6 +2,7 @@ package gregtech.api.metatileentity.implementations;
import gregtech.api.GregTech_API;
import gregtech.api.enums.Dyes;
+import gregtech.api.enums.ItemList;
import gregtech.api.enums.Materials;
import gregtech.api.enums.OrePrefixes;
import gregtech.api.enums.SubTag;
@@ -203,7 +204,7 @@ public class GT_MetaPipeEntity_Fluid extends MetaPipeEntity {
continue;
}
}
- }
+ }
FluidTankInfo[] tInfo = tTileEntity.getTankInfo(ForgeDirection.getOrientation(tSide).getOpposite());
if (tInfo != null && tInfo.length > 0) {
if (tTileEntity instanceof ICoverable && ((ICoverable) tTileEntity).getCoverBehaviorAtSide(GT_Utility.getOppositeSide(tSide)).alwaysLookConnected(GT_Utility.getOppositeSide(tSide), ((ICoverable) tTileEntity).getCoverIDAtSide(GT_Utility.getOppositeSide(tSide)), ((ICoverable) tTileEntity).getCoverDataAtSide(GT_Utility.getOppositeSide(tSide)), ((ICoverable) tTileEntity))) {
@@ -217,9 +218,22 @@ public class GT_MetaPipeEntity_Fluid extends MetaPipeEntity {
if (((1 << tSide) & mLastReceivedFrom) == 0)
tTanks.put(tTileEntity, ForgeDirection.getOrientation(tSide).getOpposite());
}
+
if (aBaseMetaTileEntity.getCoverBehaviorAtSide(tSide).alwaysLookConnected(tSide, aBaseMetaTileEntity.getCoverIDAtSide(tSide), aBaseMetaTileEntity.getCoverDataAtSide(tSide), aBaseMetaTileEntity)) {
mConnections |= (1 << tSide);
}
+ }else if(tInfo != null && tInfo.length == 0){
+ IGregTechTileEntity tSideTile = aBaseMetaTileEntity.getIGregTechTileEntityAtSide(tSide);
+ if(tSideTile!=null){
+ ItemStack tCover = tSideTile.getCoverItemAtSide(GT_Utility.getOppositeSide(tSide));
+ if (tCover!=null &&(GT_Utility.areStacksEqual(tCover, ItemList.FluidRegulator_LV.get(1, new Object[]{},true)) ||
+ GT_Utility.areStacksEqual(tCover, ItemList.FluidRegulator_MV.get(1, new Object[]{},true)) ||
+ GT_Utility.areStacksEqual(tCover, ItemList.FluidRegulator_HV.get(1, new Object[]{},true)) ||
+ GT_Utility.areStacksEqual(tCover, ItemList.FluidRegulator_EV.get(1, new Object[]{},true)) ||
+ GT_Utility.areStacksEqual(tCover, ItemList.FluidRegulator_IV.get(1, new Object[]{},true)))) {
+ mConnections |= (1 << tSide);
+ }
+ }
}
}
}
@@ -365,8 +379,8 @@ public class GT_MetaPipeEntity_Fluid extends MetaPipeEntity {
@Override
public String[] getDescription() {
return new String[]{
- EnumChatFormatting.BLUE + "Fluid Capacity: " + (mCapacity * 20) + "L/sec" + EnumChatFormatting.GRAY,
- EnumChatFormatting.RED + "Heat Limit: " + mHeatResistance + " K" + EnumChatFormatting.GRAY
+ EnumChatFormatting.BLUE + "Fluid Capacity: %%%" + (mCapacity * 20) + "L/sec" + EnumChatFormatting.GRAY,
+ EnumChatFormatting.RED + "Heat Limit: %%%" + mHeatResistance + " K" + EnumChatFormatting.GRAY
};
}
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Maintenance.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Maintenance.java
index 6340939ee7..d4d8f9cec7 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Maintenance.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Maintenance.java
@@ -30,7 +30,6 @@ import scala.actors.threadpool.Arrays;
public class GT_MetaTileEntity_Hatch_Maintenance extends GT_MetaTileEntity_Hatch {
public boolean mWrench = false, mScrewdriver = false, mSoftHammer = false, mHardHammer = false, mSolderingTool = false, mCrowbar = false, mAuto;
- public GT_MetaTileEntity_MultiBlockBase mController = null;
public GT_MetaTileEntity_Hatch_Maintenance(int aID, String aName, String aNameRegional, int aTier) {
super(aID, aName, aNameRegional, aTier, 1, "For maintaining Multiblocks");
@@ -38,7 +37,7 @@ public class GT_MetaTileEntity_Hatch_Maintenance extends GT_MetaTileEntity_Hatch
}
public GT_MetaTileEntity_Hatch_Maintenance(int aID, String aName, String aNameRegional, int aTier, boolean aAuto) {
- super(aID, aName, aNameRegional, aTier, 4, "For automaticly maintaining Multiblocks");
+ super(aID, aName, aNameRegional, aTier, 4, "For automatically maintaining Multiblocks");
mAuto = aAuto;
}
@@ -49,7 +48,7 @@ public class GT_MetaTileEntity_Hatch_Maintenance extends GT_MetaTileEntity_Hatch
@Override
public String[] getDescription() {
- if(mAuto)return new String[]{mDescription, "Cannot be shared between Multiblocks!","4 Ducttape, 2 Lubricant Cells","4 Steel Screws, 2 Adv Circuits","For each autorepair"};
+ if(mAuto)return new String[]{mDescription,"4 Ducttape, 2 Lubricant Cells","4 Steel Screws, 2 Adv Circuits","For each autorepair"};
return new String[]{mDescription, "Cannot be shared between Multiblocks!"};
}
@@ -113,10 +112,7 @@ public class GT_MetaTileEntity_Hatch_Maintenance extends GT_MetaTileEntity_Hatch
return new GT_GUIContainer_MaintenanceHatch(aPlayerInventory, aBaseMetaTileEntity);
}
- @Override
- public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTimer) {
- if (aBaseMetaTileEntity.isServerSide() && aTimer % 100 == 0 && mController != null) {
- if(!mController.mCrowbar || !mController.mHardHammer || !mController.mScrewdriver || !mController.mSoftHammer || !mController.mSolderingTool || !mController.mWrench){
+ public boolean autoMaintainance() {
boolean tSuccess = true;
ItemStack[] mInputs = new ItemStack[]{ItemList.Duct_Tape.get(4, new Object[]{}),GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Lubricant, 2),GT_OreDictUnificator.get(OrePrefixes.screw, Materials.Steel, 4),GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Advanced, 2)};
List<ItemStack> aInputs = Arrays.asList(mInventory);
@@ -161,11 +157,10 @@ public class GT_MetaTileEntity_Hatch_Maintenance extends GT_MetaTileEntity_Hatch
this.mScrewdriver = true;
this.mSoftHammer = true;
this.mSolderingTool = true;
- this.mWrench = true;
+ this.mWrench = true;
+ return true;
}
- }
- }
- super.onPostTick(aBaseMetaTileEntity, aTimer);
+ return false;
}
public void onToolClick(ItemStack aStack, EntityLivingBase aPlayer) {
@@ -201,8 +196,4 @@ public class GT_MetaTileEntity_Hatch_Maintenance extends GT_MetaTileEntity_Hatch
public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
return false;
}
-
- public void setController(GT_MetaTileEntity_MultiBlockBase aController){
- mController = aController;
- }
}
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java
index b7e740cb6f..4edb0ae5a4 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java
@@ -206,7 +206,7 @@ public abstract class GT_MetaTileEntity_MultiBlockBase extends MetaTileEntity {
for (GT_MetaTileEntity_Hatch_Maintenance tHatch : mMaintenanceHatches) {
if (isValidMetaTileEntity(tHatch)) {
if (!this.disableMaintenance) {
- tHatch.setController(this);
+ if(tHatch.mAuto && (!mWrench||!mScrewdriver||!mSoftHammer||!mHardHammer||!mSolderingTool||!mCrowbar))tHatch.autoMaintainance();
if (tHatch.mWrench) mWrench = true;
if (tHatch.mScrewdriver) mScrewdriver = true;
if (tHatch.mSoftHammer) mSoftHammer = true;
@@ -714,8 +714,7 @@ public abstract class GT_MetaTileEntity_MultiBlockBase extends MetaTileEntity {
IMetaTileEntity aMetaTileEntity = aTileEntity.getMetaTileEntity();
if (aMetaTileEntity == null) return false;
if (aMetaTileEntity instanceof GT_MetaTileEntity_Hatch_Maintenance) {
- ((GT_MetaTileEntity_Hatch) aMetaTileEntity).mMachineBlock = (byte) aBaseCasingIndex;
- ((GT_MetaTileEntity_Hatch_Maintenance) aMetaTileEntity).setController(this);
+ ((GT_MetaTileEntity_Hatch) aMetaTileEntity).mMachineBlock = (byte) aBaseCasingIndex;
return mMaintenanceHatches.add((GT_MetaTileEntity_Hatch_Maintenance) aMetaTileEntity);
}
return false;
diff --git a/src/main/java/gregtech/api/util/GT_LanguageManager.java b/src/main/java/gregtech/api/util/GT_LanguageManager.java
index 9937d0c069..36b543b183 100644
--- a/src/main/java/gregtech/api/util/GT_LanguageManager.java
+++ b/src/main/java/gregtech/api/util/GT_LanguageManager.java
@@ -14,8 +14,9 @@ import java.util.Map.Entry;
import static gregtech.api.enums.GT_Values.E;
public class GT_LanguageManager {
- public static final HashMap<String, String> TEMPMAP = new HashMap<String, String>(), BUFFERMAP = new HashMap<String, String>();
+ public static final HashMap<String, String> TEMPMAP = new HashMap<String, String>(), BUFFERMAP = new HashMap<String, String>(), LANGMAP = new HashMap<String, String>();
public static Configuration sEnglishFile;
+ public static boolean sUseEnglishFile = false;
public static String addStringLocalization(String aKey, String aEnglish) {
return addStringLocalization(aKey, aEnglish, true);
@@ -23,10 +24,17 @@ public class GT_LanguageManager {
public static String addStringLocalization(String aKey, String aEnglish, boolean aWriteIntoLangFile) {
if (aKey == null) return E;
- if (aWriteIntoLangFile) aEnglish = writeToLangFile(aKey, aEnglish);
+ if (aWriteIntoLangFile){ aEnglish = writeToLangFile(aKey, aEnglish);
+ if(!LANGMAP.containsKey(aKey)){
+ LANGMAP.put(aKey, aEnglish);
+ }
+ }
TEMPMAP.put(aKey.trim(), aEnglish);
LanguageRegistry.instance().injectLanguage("en_US", TEMPMAP);
TEMPMAP.clear();
+ if(sUseEnglishFile && !aWriteIntoLangFile && LANGMAP.containsKey(aKey)){
+ aEnglish = LANGMAP.get(aKey);
+ }
return aEnglish;
}
@@ -44,8 +52,10 @@ public class GT_LanguageManager {
}
Property tProperty = sEnglishFile.get("LanguageFile", aKey.trim(), aEnglish);
if (!tProperty.wasRead() && GregTech_API.sPostloadFinished) sEnglishFile.save();
- if (sEnglishFile.get("EnableLangFile", "UseThisFileAsLanguageFile", false).getBoolean(false))
+ if (sEnglishFile.get("EnableLangFile", "UseThisFileAsLanguageFile", false).getBoolean(false)){
aEnglish = tProperty.getString();
+ sUseEnglishFile = true;
+ }
}
return aEnglish;
}
diff --git a/src/main/java/gregtech/api/util/GT_Utility.java b/src/main/java/gregtech/api/util/GT_Utility.java
index a16c4213dd..fe3565cd9f 100644
--- a/src/main/java/gregtech/api/util/GT_Utility.java
+++ b/src/main/java/gregtech/api/util/GT_Utility.java
@@ -1754,7 +1754,7 @@ public class GT_Utility {
tList.add("Oil in Chunk: " + tFluid.amount + " " + tFluid.getLocalizedName());
}
// if(aPlayer.capabilities.isCreativeMode){
- ChunkPosition tPos = new ChunkPosition(aX/16, 1, aZ/16);
+ ChunkPosition tPos = new ChunkPosition(aX>>4, 1, aZ>>4);
if(GT_Proxy.chunkData.containsKey(tPos)){
int[] tPollution = GT_Proxy.chunkData.get(tPos);
if(tPollution.length>1){
@@ -2075,4 +2075,4 @@ public class GT_Utility {
}
}
-} \ No newline at end of file
+}
diff --git a/src/main/java/gregtech/common/GT_Proxy.java b/src/main/java/gregtech/common/GT_Proxy.java
index 00bc5ab0c1..34c317c8b8 100644
--- a/src/main/java/gregtech/common/GT_Proxy.java
+++ b/src/main/java/gregtech/common/GT_Proxy.java
@@ -29,6 +29,11 @@ import gregtech.api.util.*;
import gregtech.common.entities.GT_Entity_Arrow;
import gregtech.common.items.GT_MetaGenerated_Tool_01;
import gregtech.common.items.armor.*;
+import gregtech.common.items.armor.gui.ContainerBasicArmor;
+import gregtech.common.items.armor.gui.ContainerElectricArmor1;
+import gregtech.common.items.armor.gui.GuiElectricArmor1;
+import gregtech.common.items.armor.gui.GuiModularArmor;
+import gregtech.common.items.armor.gui.InventoryArmor;
import net.minecraft.enchantment.Enchantment;
import net.minecraft.enchantment.EnchantmentHelper;
import net.minecraft.entity.Entity;
@@ -173,6 +178,7 @@ public abstract class GT_Proxy implements IGT_Mod, IGuiHandler, IFuelHandler {
public int mPollutionPoisonLimit = 750000;
public int mPollutionVegetationLimit = 1000000;
public int mPollutionSourRainLimit = 2000000;
+ public int mTicksUntilNextCraftSound = 0;
public double mMagneticraftBonusOutputPercent = 100.0d;
private World mUniverse = null;
private final String aTextThermalExpansion = "ThermalExpansion";
@@ -815,6 +821,7 @@ public abstract class GT_Proxy implements IGT_Mod, IGuiHandler, IFuelHandler {
}
return;
}
+ }else if(this.mIgnoredNames.contains(aEvent.Name)){
GT_Log.ore.println(tModToName + " is getting ignored via hardcode.");
return;
}
@@ -1186,10 +1193,12 @@ public abstract class GT_Proxy implements IGT_Mod, IGuiHandler, IFuelHandler {
@SubscribeEvent
public void onWorldTickEvent(TickEvent.WorldTickEvent aEvent) {
+ if(aEvent.world.provider.dimensionId == 0)
+ mTicksUntilNextCraftSound--;
if (aEvent.side.isServer()) {
if (this.mUniverse == null) {
this.mUniverse = aEvent.world;
- }
+ }
if (this.isFirstServerWorldTick) {
File tSaveDiretory = getSaveDirectory();
if (tSaveDiretory != null) {
@@ -1312,6 +1321,20 @@ public abstract class GT_Proxy implements IGT_Mod, IGuiHandler, IFuelHandler {
return getRightItem(aPlayer, ID);
}
}
+ if(aID>=100){
+ int tSlot = aID / 100;
+ int ID = aID%100;
+ switch(ID){
+ case 0:
+ return new ContainerBasicArmor(aPlayer, new InventoryArmor(ModularArmor_Item.class, aPlayer.getEquipmentInSlot(tSlot)));
+ case 1:
+ return new ContainerElectricArmor1(aPlayer, new InventoryArmor(ModularArmor_Item.class, aPlayer.getEquipmentInSlot(tSlot)));
+ case 2:
+ return new ContainerElectricArmor1(aPlayer, new InventoryArmor(ModularArmor_Item.class, aPlayer.getEquipmentInSlot(tSlot)));
+ default:
+ return getRightItem(aPlayer, ID);