aboutsummaryrefslogtreecommitdiff
path: root/src/Java/gtPlusPlus/core
diff options
context:
space:
mode:
authorJordan Byrne <draknyte1@hotmail.com>2018-02-22 21:55:14 +1000
committerJordan Byrne <draknyte1@hotmail.com>2018-02-22 21:55:14 +1000
commita6c18435d4bd220bc96127ecc63e0ad8df0c8c6f (patch)
tree8d5e19bfffb7dc735a9d3b6919cb9b8d69b70724 /src/Java/gtPlusPlus/core
parentcb2fe66fc1e0af40f23209398727faa08c330f20 (diff)
downloadGT5-Unofficial-a6c18435d4bd220bc96127ecc63e0ad8df0c8c6f.tar.gz
GT5-Unofficial-a6c18435d4bd220bc96127ecc63e0ad8df0c8c6f.tar.bz2
GT5-Unofficial-a6c18435d4bd220bc96127ecc63e0ad8df0c8c6f.zip
+ Added config for the Large Extruder.
+ Added config for machine component assemblers. + Added recipes for Large Extruder and its casings. % Changed default config value for custom circuits. It was true, now it is false. $ Tweaked ASM class handling when conditions are not met.
Diffstat (limited to 'src/Java/gtPlusPlus/core')
-rw-r--r--src/Java/gtPlusPlus/core/common/CommonProxy.java5
-rw-r--r--src/Java/gtPlusPlus/core/config/ConfigHandler.java11
-rw-r--r--src/Java/gtPlusPlus/core/item/ModItems.java9
-rw-r--r--src/Java/gtPlusPlus/core/lib/CORE.java3
-rw-r--r--src/Java/gtPlusPlus/core/recipe/RECIPES_Machines.java18
-rw-r--r--src/Java/gtPlusPlus/core/util/minecraft/ItemUtils.java91
-rw-r--r--src/Java/gtPlusPlus/core/util/sys/GeoUtils.java6
7 files changed, 115 insertions, 28 deletions
diff --git a/src/Java/gtPlusPlus/core/common/CommonProxy.java b/src/Java/gtPlusPlus/core/common/CommonProxy.java
index 421a522945..f895cd60d9 100644
--- a/src/Java/gtPlusPlus/core/common/CommonProxy.java
+++ b/src/Java/gtPlusPlus/core/common/CommonProxy.java
@@ -75,14 +75,15 @@ public class CommonProxy {
registerEntities();
Logger.INFO("[Proxy] Calling Tile Entity registrator.");
registerTileEntities();
- Logger.INFO("[Proxy] Calling Render registrator.");
- registerRenderThings();
//Moved from Init after Debug Loading.
//29/01/18 - Alkalus
ModItems.init();
ModBlocks.init();
CI.preInit();
+
+ Logger.INFO("[Proxy] Calling Render registrator.");
+ registerRenderThings();
}
diff --git a/src/Java/gtPlusPlus/core/config/ConfigHandler.java b/src/Java/gtPlusPlus/core/config/ConfigHandler.java
index a9fbec55de..02b2d0366a 100644
--- a/src/Java/gtPlusPlus/core/config/ConfigHandler.java
+++ b/src/Java/gtPlusPlus/core/config/ConfigHandler.java
@@ -47,8 +47,8 @@ public class ConfigHandler {
boilerSteamPerSecond = config.getInt("boilerSteamPerSecond", "machines", 750, 0, 10000, "Sets the steam per second value in LV,MV,HV boilers (respectively 1x,2x,3x this number for the tiers)");
//Circuits
- enableCustomCircuits = config.getBoolean("enableCustomCircuits", "gregtech", true,
- "Adds custom circuits to expand past the Master Tier.");
+ enableCustomCircuits = config.getBoolean("enableCustomCircuits", "gregtech", false,
+ "Adds custom circuits to expand past the Master Tier. Only really recommended to enable if enableOldGTcircuits is enabled.");
enableOldGTcircuits = config.getBoolean("enableOldGTcircuits", "gregtech", false,
"Restores circuits and their recipes from Pre-5.09.28 times.");
@@ -76,7 +76,9 @@ public class ConfigHandler {
// Single machines
enableMachine_SolarGenerators = config.getBoolean("enableSolarGenerators", "gregtech",
- false, "These may be overpowered, Consult a local electrician.");
+ false, "These may be overpowered, Consult a local electrician.");
+ enableMachine_ComponentAssemblers = config.getBoolean("enableComponentAssemblers", "gregtech",
+ true, "These construct machine components.");
enableMachine_Safes = config.getBoolean("enableMachineSafes", "gregtech", true,
"These protect your goodies/rare stuff.");
enableMachine_Dehydrators = config.getBoolean("enableMachineDehydrators", "gregtech", true,
@@ -144,6 +146,9 @@ public class ConfigHandler {
"gregtech", true, "Very fast and efficient Cutting Machine.");
enableMultiblock_IndustrialFishingPort = config.getBoolean("enableMultiblock_IndustrialFishingPort",
"gregtech", true, "Fish the seas, except on land.");
+
+ enableMultiblock_IndustrialExtrudingMachine = config.getBoolean("enableMultiblock_IndustrialExtrudingMachine",
+ "gregtech", true, "Very fast and efficient Extruding Machine.");
// Options
rfPerEU = config.getInt("rfUsedPerEUForUniversalBatteries", "configurables", 4, 1, 1000,
diff --git a/src/Java/gtPlusPlus/core/item/ModItems.java b/src/Java/gtPlusPlus/core/item/ModItems.java
index c93353459e..5f85b1193a 100644
--- a/src/Java/gtPlusPlus/core/item/ModItems.java
+++ b/src/Java/gtPlusPlus/core/item/ModItems.java
@@ -50,7 +50,6 @@ import gtPlusPlus.core.item.general.throwables.ItemHydrofluoricAcidPotion;
import gtPlusPlus.core.item.general.throwables.ItemSulfuricAcidPotion;
import gtPlusPlus.core.item.init.ItemsFoods;
import gtPlusPlus.core.item.init.ItemsMultiTools;
-import gtPlusPlus.core.item.tool.misc.ConnectedBlockFinder;
import gtPlusPlus.core.item.tool.misc.SandstoneHammer;
import gtPlusPlus.core.item.tool.staballoy.MultiPickaxeBase;
import gtPlusPlus.core.item.tool.staballoy.MultiSpadeBase;
@@ -277,6 +276,10 @@ public final class ModItems {
public static Item itemFiber;
public static Item itemDragonJar;
+
+ static {
+ Logger.INFO("Items!");
+ }
public static final void init(){
@@ -702,9 +705,9 @@ public final class ModItems {
CoalTar.run();
//Only used for debugging.
- if (CORE.DEVENV) {
+ /*if (CORE.DEVENV) {
new ConnectedBlockFinder();
- }
+ }*/
//Misc Items
@SuppressWarnings("unused")
diff --git a/src/Java/gtPlusPlus/core/lib/CORE.java b/src/Java/gtPlusPlus/core/lib/CORE.java
index dd4b55f048..b40ea8b8f4 100644
--- a/src/Java/gtPlusPlus/core/lib/CORE.java
+++ b/src/Java/gtPlusPlus/core/lib/CORE.java
@@ -186,6 +186,7 @@ public class CORE {
public static boolean enableMachine_Tesseracts = true;
public static boolean enableMachine_SimpleWasher = true;
public static boolean enableMachine_Pollution = true;
+ public static boolean enableMachine_ComponentAssemblers = false;
public static boolean enableCustom_Pipes = true;
public static boolean enableCustom_Cables = true;
@@ -211,6 +212,7 @@ public class CORE {
public static boolean enableMultiblock_ThermalBoiler = true;
public static boolean enableMultiblock_IndustrialCuttingMachine = true;
public static boolean enableMultiblock_IndustrialFishingPort = true;
+ public static boolean enableMultiblock_IndustrialExtrudingMachine = true;
//Visuals
public static boolean enableTreeFarmerParticles = true;
@@ -220,6 +222,7 @@ public class CORE {
+
}
public static class Everglades{
diff --git a/src/Java/gtPlusPlus/core/recipe/RECIPES_Machines.java b/src/Java/gtPlusPlus/core/recipe/RECIPES_Machines.java
index c380303e58..0a6e6afef8 100644
--- a/src/Java/gtPlusPlus/core/recipe/RECIPES_Machines.java
+++ b/src/Java/gtPlusPlus/core/recipe/RECIPES_Machines.java
@@ -144,6 +144,7 @@ public class RECIPES_Machines {
public static ItemStack EV_MACHINE_Macerator;
public static ItemStack EV_MACHINE_Cutter;
public static ItemStack EV_MACHINE_MassFabricator;
+ public static ItemStack EV_MACHINE_Extruder;
//Cables
@@ -216,6 +217,7 @@ public class RECIPES_Machines {
EV_MACHINE_MassFabricator= ItemList.Machine_EV_Massfab.get(1);
EV_MACHINE_Centrifuge= ItemList.Machine_EV_Centrifuge.get(1);
EV_MACHINE_Cutter = ItemList.Machine_EV_Cutter.get(1);
+ EV_MACHINE_Extruder = ItemList.Machine_EV_Extruder.get(1);
}
@@ -1101,6 +1103,22 @@ public class RECIPES_Machines {
GregtechItemList.Industrial_CuttingFactoryController.get(1));
}
+ //EV_MACHINE_Extruder
+ if (CORE.ConfigSwitches.enableMultiblock_IndustrialExtrudingMachine){
+ ItemStack plate = ALLOY.INCONEL_690.getPlate(1);
+ RecipeUtils.recipeBuilder(
+ plate, CI.craftingToolHammer_Hard, plate,
+ "plateTalonite", "frameGtStaballoy", "plateTalonite",
+ plate, CI.craftingToolWrench, plate,
+ GregtechItemList.Casing_Extruder.get(Casing_Amount));
+
+ RecipeUtils.recipeBuilder(
+ plate,CI.getTieredCircuit(4),plate,
+ CI.electricPiston_EV, EV_MACHINE_Extruder, CI.electricPiston_EV,
+ plate,CI.getTieredCircuit(4),plate,
+ GregtechItemList.Industrial_Extruder.get(1));
+ }
+
if (CORE.ConfigSwitches.enableMultiblock_IndustrialFishingPort){
ItemStack plate = ALLOY.INCONEL_792.getPlate(1);
RecipeUtils.recipeBuilder(
diff --git a/src/Java/gtPlusPlus/core/util/minecraft/ItemUtils.java b/src/Java/gtPlusPlus/core/util/minecraft/ItemUtils.java
index 5642b4f3e9..62cb3f147e 100644
--- a/src/Java/gtPlusPlus/core/util/minecraft/ItemUtils.java
+++ b/src/Java/gtPlusPlus/core/util/minecraft/ItemUtils.java
@@ -1,7 +1,9 @@
package gtPlusPlus.core.util.minecraft;
import java.util.ArrayList;
+import java.util.HashMap;
import java.util.List;
+import java.util.Map;
import cpw.mods.fml.common.registry.GameRegistry;
import cpw.mods.fml.common.registry.GameRegistry.UniqueIdentifier;
@@ -254,31 +256,44 @@ public class ItemUtils {
}
public static ItemStack getItemStackOfAmountFromOreDict(final String oredictName, final int amount){
-
String mTemp = oredictName;
-
//Banned Materials and replacements for GT5.8 compat.
if (oredictName.toLowerCase().contains("rutile")){
mTemp = oredictName.replace("Rutile", "Titanium");
}
if (oredictName.toLowerCase().contains("vanadiumsteel")){
mTemp = oredictName.replace("VanadiumSteel", "StainlessSteel");
- }
+ }
- ItemStack mTempItem = getItemStackOfAmountFromOreDictNoBroken(mTemp, amount);
- if (mTempItem != null) {
- return mTempItem;
+ //Use Cache
+ if (mDustCache.containsKey(oredictName)) {
+ return getSimpleStack(mDustCache.get(oredictName), amount);
+ }
+ if (mOreDictCache.containsKey(mTemp)) {
+ return getCachedValue(mTemp, amount);
}
final ArrayList<ItemStack> oreDictList = OreDictionary.getOres(mTemp);
if (!oreDictList.isEmpty()){
final ItemStack returnValue = oreDictList.get(0).copy();
returnValue.stackSize = amount;
+ setCachedValue(mTemp, returnValue);
return returnValue;
}
+ setCachedValue(oredictName, getSimpleStack(ModItems.AAA_Broken));
return getSimpleStack(ModItems.AAA_Broken, amount);
}
+ private static Map<String, ItemStack> mOreDictCache = new HashMap();
+
+ private static ItemStack getCachedValue(String string, int amount) {
+ return getSimpleStack(mOreDictCache.get(string), amount);
+ }
+
+ private static void setCachedValue(String string, ItemStack stack) {
+ mOreDictCache.put(string, stack);
+ }
+
public static ItemStack getItemStackOfAmountFromOreDictNoBroken(final String oredictName, final int amount){
if (CORE.DEBUG){
Logger.WARNING("Looking up: "+oredictName+" - from method: "+ReflectionUtils.getMethodName(1));
@@ -286,7 +301,17 @@ public class ItemUtils {
Logger.WARNING("Looking up: "+oredictName+" - from method: "+ReflectionUtils.getMethodName(3));
Logger.WARNING("Looking up: "+oredictName+" - from method: "+ReflectionUtils.getMethodName(4));
Logger.WARNING("Looking up: "+oredictName+" - from method: "+ReflectionUtils.getMethodName(5));
+ }
+
+ //Use Cache
+ if (mDustCache.containsKey(oredictName)) {
+ return getSimpleStack(mDustCache.get(oredictName), amount);
+ }
+ if (mOreDictCache.containsKey(oredictName)) {
+ return getCachedValue(oredictName, amount);
}
+
+
try{
//Adds a check to grab dusts using GT methodology if possible.
@@ -296,28 +321,26 @@ public class ItemUtils {
final Materials m = Materials.get(MaterialName);
returnValue = getGregtechDust(m, amount);
if (returnValue != null){
+ setCachedValue(oredictName, returnValue);
return returnValue;
}
- else {
- returnValue = getGregtechDust(oredictName, amount);
- if (returnValue != null) {
- return returnValue;
- }
- }
}
if (returnValue == null){
returnValue = getItemStackOfAmountFromOreDict(oredictName, amount);
if (returnValue != null){
- if ((returnValue.getItem().getClass() != ModItems.AAA_Broken.getClass()) || (returnValue.getItem() != ModItems.AAA_Broken)){
+ if ((returnValue.getItem().getClass() != ModItems.AAA_Broken.getClass()) || (returnValue.getItem() != ModItems.AAA_Broken)){
+ setCachedValue(oredictName, returnValue);
return returnValue.copy();
}
}
}
Logger.WARNING(oredictName+" was not valid.");
+ setCachedValue(oredictName, null);
return null;
}
catch (final Throwable t){
+ setCachedValue(oredictName, null);
return null;
}
}
@@ -625,29 +648,50 @@ public class ItemUtils {
return outputs;
}
- private static String getModId(final Item item) {
+ private static Map<Item, String> mModidCache = new HashMap<Item, String>();
+
+ private static String getModId(final Item item) {
+ if (mModidCache.containsKey(item)) {
+ return mModidCache.get(item);
+ }
+ String value = "";
try {
final GameRegistry.UniqueIdentifier id = GameRegistry.findUniqueIdentifierFor(item);
- final String modname = (id.modId == null ? id.name : id.modId);
- return (id == null) || id.modId.equals("") ? "minecraft" : modname;
+ if (id != null) {
+ final String modname = (id.modId == null ? id.name : id.modId);
+ value = ((id == null) || id.modId.equals("")) ? "minecraft" : modname;
+ }
} catch (final Throwable t){
try {
final UniqueIdentifier t2 = GameRegistry.findUniqueIdentifierFor(Block.getBlockFromItem(item));
- final String modname = (t2.modId == null ? t2.name : t2.modId);
- return (t2 == null) || t2.modId.equals("") ? "minecraft" : modname;
+ if (t2 != null) {
+ final String modname = (t2.modId == null ? t2.name : t2.modId);
+ value = ((t2 == null) || t2.modId.equals("")) ? "minecraft" : modname;
+ }
}
catch (final Throwable t3){
- return "bad modid";
+ value = "bad modid";
}
}
+ if (!mModidCache.containsKey(item)) {
+ return mModidCache.put(item, value);
+ }
+ return value;
}
public static String getModId(final ItemStack key) {
return getModId(key.getItem());
}
+ private static Map<String, ItemStack> mDustCache = new HashMap<String, ItemStack>();
+
//Take 2 - GT/GT++ Dusts
public static ItemStack getGregtechDust(final String oredictName, final int amount){
+
+ if (mDustCache.containsKey(oredictName)) {
+ return getSimpleStack(mDustCache.get(oredictName), amount);
+ }
+
final ArrayList<ItemStack> oreDictList = OreDictionary.getOres(oredictName);
if (!oreDictList.isEmpty()){
ItemStack returnvalue;
@@ -655,6 +699,7 @@ public class ItemUtils {
final String modid = getModId(oreDictList.get(xrc).getItem());
if (modid.equals("gregtech") || modid.equals(CORE.MODID)){
returnvalue = oreDictList.get(xrc).copy();
+ mDustCache.put(oredictName, returnvalue);
returnvalue.stackSize = amount;
return returnvalue;
}
@@ -665,6 +710,11 @@ public class ItemUtils {
//Anything But Tinkers Dust
public static ItemStack getNonTinkersDust(final String oredictName, final int amount){
+
+ if (mDustCache.containsKey(oredictName)) {
+ return getSimpleStack(mDustCache.get(oredictName), amount);
+ }
+
final ArrayList<ItemStack> oreDictList = OreDictionary.getOres(oredictName);
if (!oreDictList.isEmpty()){
ItemStack returnvalue;
@@ -672,6 +722,7 @@ public class ItemUtils {
final String modid = getModId(oreDictList.get(xrc).getItem());
if (!modid.equals("tconstruct")){
returnvalue = oreDictList.get(xrc).copy();
+ mDustCache.put(oredictName, returnvalue);
returnvalue.stackSize = amount;
return returnvalue;
}
@@ -694,7 +745,7 @@ public class ItemUtils {
//Utils.LOG_INFO("[Component Maker] Found "+mItemName+".");
return (gregstack);
}
-
+
public static ItemStack getOrePrefixStack(OrePrefixes mPrefix, Material mMat, int mAmount) {
diff --git a/src/Java/gtPlusPlus/core/util/sys/GeoUtils.java b/src/Java/gtPlusPlus/core/util/sys/GeoUtils.java
index ae3e6242ed..3f465aa30f 100644
--- a/src/Java/gtPlusPlus/core/util/sys/GeoUtils.java
+++ b/src/Java/gtPlusPlus/core/util/sys/GeoUtils.java
@@ -6,10 +6,12 @@ import java.net.*;
import org.apache.http.client.utils.URIBuilder;
import gtPlusPlus.api.objects.Logger;
+import gtPlusPlus.core.lib.CORE;
public class GeoUtils {
public static String determineUsersCountry(){
+ if (!CORE.DEBUG && !CORE.DEVENV) {
try {
if (NetworkUtils.checkNetworkIsAvailableWithValidInterface()){
return getUsersCountry();
@@ -21,6 +23,10 @@ public class GeoUtils {
Logger.INFO("Failed to initialise GeoUtils.");
return "Failed.";
}
+ }
+ else {
+ return "Debug/Dev";
+ }
}
private static String getUsersIPAddress() {