aboutsummaryrefslogtreecommitdiff
path: root/src/Java/gtPlusPlus/preloader
diff options
context:
space:
mode:
authorAlkalus <3060479+draknyte1@users.noreply.github.com>2019-02-28 20:06:01 +0000
committerAlkalus <3060479+draknyte1@users.noreply.github.com>2019-02-28 20:06:01 +0000
commit4f435ae75b176a9d90c7afa6b1ff40e9ba9c286a (patch)
treef9707c4551b6134030374580cacfd1aec4b0c9d7 /src/Java/gtPlusPlus/preloader
parent1c20e21e7678f9a546fff9bf873c80c35a841cf8 (diff)
downloadGT5-Unofficial-4f435ae75b176a9d90c7afa6b1ff40e9ba9c286a.tar.gz
GT5-Unofficial-4f435ae75b176a9d90c7afa6b1ff40e9ba9c286a.tar.bz2
GT5-Unofficial-4f435ae75b176a9d90c7afa6b1ff40e9ba9c286a.zip
+ Added a new debug tool.
+ Added support for Crops++. + Added Custom Crops & framework to support more in future. + Added basic support for all GT++ Materials within Tinkers Construct. [WIP] + Moderately bad attempt at generating custom Plasma Cooling recipes in the Adv. Vacuum Freezer. [WIP #424] % Reworked logic for Material.java handling Durability, Tool Quality & Harvest Level. % Adjusted frequency of structural checks on the Cyclotron, Now 100x less frequent. % Cleaned up ReflectionUtils.java and made all getters cache their results, for much faster access. % Attempted to adjust logic of FFPP, but I probably broke it. [WIP] % Moved static array of Element Names from IonParticles.java -> ELEMENT.java. $ Greatly improved reflective performance across the mod.
Diffstat (limited to 'src/Java/gtPlusPlus/preloader')
-rw-r--r--src/Java/gtPlusPlus/preloader/Preloader_GT_OreDict.java41
-rw-r--r--src/Java/gtPlusPlus/preloader/asm/transformers/Preloader_ClassTransformer2.java6
2 files changed, 22 insertions, 25 deletions
diff --git a/src/Java/gtPlusPlus/preloader/Preloader_GT_OreDict.java b/src/Java/gtPlusPlus/preloader/Preloader_GT_OreDict.java
index 2dcbe46056..8e7001903d 100644
--- a/src/Java/gtPlusPlus/preloader/Preloader_GT_OreDict.java
+++ b/src/Java/gtPlusPlus/preloader/Preloader_GT_OreDict.java
@@ -11,6 +11,7 @@ import gregtech.common.items.GT_MetaGenerated_Item_01;
import gtPlusPlus.core.lib.CORE;
import gtPlusPlus.core.lib.LoadedMods;
import gtPlusPlus.core.util.minecraft.ItemUtils;
+import gtPlusPlus.core.util.reflect.ReflectionUtils;
public class Preloader_GT_OreDict {
@@ -33,9 +34,8 @@ public class Preloader_GT_OreDict {
}
}
else {
- try {
- if (Class.forName("gregtech.common.items.GT_MetaGenerated_Item_03") != null) { // 6/11/12/14/16/20/30-57/69-73/79-96
- final Class<?> MetaItem03 = Class.forName("gregtech.common.items.GT_MetaGenerated_Item_03");
+ if (ReflectionUtils.doesClassExist("gregtech.common.items.GT_MetaGenerated_Item_03")) { // 6/11/12/14/16/20/30-57/69-73/79-96
+ final Class<?> MetaItem03 = ReflectionUtils.getClass("gregtech.common.items.GT_MetaGenerated_Item_03");
if (isInstanceOf(MetaItem03, bannedItem.getItem())) {
if ((damageValue == 6) || (damageValue == 7) || (damageValue == 11) || (damageValue == 12) || (damageValue == 14)
|| (damageValue == 16) || (damageValue == 20) || (damageValue == 21) || (damageValue == 22)) {
@@ -52,9 +52,6 @@ public class Preloader_GT_OreDict {
}
}
}
- }
- catch (final ClassNotFoundException e) {
- }
}
}
}
@@ -62,8 +59,8 @@ public class Preloader_GT_OreDict {
//Mekanism Support - Let's not make Mek Osmium useful in GT anymore.
if ((((bannedItem != null) && !LoadedMods.RedTech && (ItemUtils.getModId(bannedItem).toLowerCase().equals("mekanism"))) || (LoadedMods.Mekanism)) && !LoadedMods.RedTech){
//Circuits
- if (Class.forName("mekanism.common.item.ItemControlCircuit") != null) {
- final Class<?> MekCircuit = Class.forName("mekanism.common.item.ItemControlCircuit");
+ if (ReflectionUtils.doesClassExist("mekanism.common.item.ItemControlCircuit")) {
+ final Class<?> MekCircuit = ReflectionUtils.getClass("mekanism.common.item.ItemControlCircuit");
if (isInstanceOf(MekCircuit, bannedItem.getItem())) {
for (int r=0;r<4;r++){
if (bannedItem.getItemDamage() == r){
@@ -74,8 +71,8 @@ public class Preloader_GT_OreDict {
}
}
//Ingots
- if (Class.forName("mekanism.common.item.ItemIngot") != null) {
- final Class<?> MekIngot = Class.forName("mekanism.common.item.ItemIngot");
+ if (ReflectionUtils.doesClassExist("mekanism.common.item.ItemIngot")) {
+ final Class<?> MekIngot = ReflectionUtils.getClass("mekanism.common.item.ItemIngot");
if (isInstanceOf(MekIngot, bannedItem.getItem())) {
if (bannedItem.getItemDamage() == 1){
FMLRelaunchLog.log("[GT++ ASM] OreDictTransformer", Level.INFO, "Removing %s from the OreDictionary to balance Mekanism.", bannedItem.getDisplayName());
@@ -84,8 +81,8 @@ public class Preloader_GT_OreDict {
}
}
//Dirty Dust
- if (Class.forName("mekanism.common.item.ItemDirtyDust") != null) {
- final Class<?> MekIngot = Class.forName("mekanism.common.item.ItemDirtyDust");
+ if (ReflectionUtils.doesClassExist("mekanism.common.item.ItemDirtyDust")) {
+ final Class<?> MekIngot = ReflectionUtils.getClass("mekanism.common.item.ItemDirtyDust");
if (isInstanceOf(MekIngot, bannedItem.getItem())) {
if (bannedItem.getItemDamage() == 2){
FMLRelaunchLog.log("[GT++ ASM] OreDictTransformer", Level.INFO, "Removing %s from the OreDictionary to balance Mekanism.", bannedItem.getDisplayName());
@@ -94,8 +91,8 @@ public class Preloader_GT_OreDict {
}
}
//Dust
- if (Class.forName("mekanism.common.item.ItemDust") != null) {
- final Class<?> MekIngot = Class.forName("mekanism.common.item.ItemDust");
+ if (ReflectionUtils.doesClassExist("mekanism.common.item.ItemDust")) {
+ final Class<?> MekIngot = ReflectionUtils.getClass("mekanism.common.item.ItemDust");
if (isInstanceOf(MekIngot, bannedItem.getItem())) {
if (bannedItem.getItemDamage() == 2){
FMLRelaunchLog.log("[GT++ ASM] OreDictTransformer", Level.INFO, "Removing %s from the OreDictionary to balance Mekanism.", bannedItem.getDisplayName());
@@ -104,8 +101,8 @@ public class Preloader_GT_OreDict {
}
}
//Crystal
- if (Class.forName("mekanism.common.item.ItemCrystal") != null) {
- final Class<?> MekIngot = Class.forName("mekanism.common.item.ItemCrystal");
+ if (ReflectionUtils.doesClassExist("mekanism.common.item.ItemCrystal")) {
+ final Class<?> MekIngot = ReflectionUtils.getClass("mekanism.common.item.ItemCrystal");
if (isInstanceOf(MekIngot, bannedItem.getItem())) {
if (bannedItem.getItemDamage() == 2){
FMLRelaunchLog.log("[GT++ ASM] OreDictTransformer", Level.INFO, "Removing %s from the OreDictionary to balance Mekanism.", bannedItem.getDisplayName());
@@ -114,8 +111,8 @@ public class Preloader_GT_OreDict {
}
}
//Shard
- if (Class.forName("mekanism.common.item.ItemShard") != null) {
- final Class<?> MekIngot = Class.forName("mekanism.common.item.ItemShard");
+ if (ReflectionUtils.doesClassExist("mekanism.common.item.ItemShard")) {
+ final Class<?> MekIngot = ReflectionUtils.getClass("mekanism.common.item.ItemShard");
if (isInstanceOf(MekIngot, bannedItem.getItem())) {
if (bannedItem.getItemDamage() == 2){
FMLRelaunchLog.log("[GT++ ASM] OreDictTransformer", Level.INFO, "Removing %s from the OreDictionary to balance Mekanism.", bannedItem.getDisplayName());
@@ -124,8 +121,8 @@ public class Preloader_GT_OreDict {
}
}
//Clump
- if (Class.forName("mekanism.common.item.ItemClump") != null) {
- final Class<?> MekIngot = Class.forName("mekanism.common.item.ItemClump");
+ if (ReflectionUtils.doesClassExist("mekanism.common.item.ItemClump")) {
+ final Class<?> MekIngot = ReflectionUtils.getClass("mekanism.common.item.ItemClump");
if (isInstanceOf(MekIngot, bannedItem.getItem())) {
if (bannedItem.getItemDamage() == 2){
FMLRelaunchLog.log("[GT++ ASM] OreDictTransformer", Level.INFO, "Removing %s from the OreDictionary to balance Mekanism.", bannedItem.getDisplayName());
@@ -134,8 +131,8 @@ public class Preloader_GT_OreDict {
}
}
//Ores
- if (Class.forName("mekanism.common.item.ItemBlockOre") != null) {
- final Class<?> MekOre = Class.forName("mekanism.common.item.ItemBlockOre");
+ if (ReflectionUtils.doesClassExist("mekanism.common.item.ItemBlockOre")) {
+ final Class<?> MekOre = ReflectionUtils.getClass("mekanism.common.item.ItemBlockOre");
if (isInstanceOf(MekOre, bannedItem.getItem()) || (bannedItem == ItemUtils.simpleMetaStack("Mekanism:OreBlock", 0, 1))) {
if (bannedItem.getItemDamage() == 0){
FMLRelaunchLog.log("[GT++ ASM] OreDictTransformer", Level.INFO, "Removing %s from the OreDictionary to balance Mekanism.", bannedItem.getDisplayName());
diff --git a/src/Java/gtPlusPlus/preloader/asm/transformers/Preloader_ClassTransformer2.java b/src/Java/gtPlusPlus/preloader/asm/transformers/Preloader_ClassTransformer2.java
index 402a510a79..390289d162 100644
--- a/src/Java/gtPlusPlus/preloader/asm/transformers/Preloader_ClassTransformer2.java
+++ b/src/Java/gtPlusPlus/preloader/asm/transformers/Preloader_ClassTransformer2.java
@@ -204,7 +204,7 @@ public class Preloader_ClassTransformer2 {
}
return new ArrayList<ItemStack>(Arrays.asList(rStack));
}
- catch (IllegalArgumentException | IllegalAccessException | NoSuchFieldException a){
+ catch (IllegalArgumentException | IllegalAccessException a){
Logger.REFLECTION("getDropsHack2");
a.printStackTrace();
}
@@ -242,7 +242,7 @@ public class Preloader_ClassTransformer2 {
Logger.INFO("Set NBT Tag Value to map.");
}
}
- catch (NoSuchFieldException | IllegalArgumentException | IllegalAccessException e) {
+ catch (IllegalArgumentException | IllegalAccessException e) {
e.printStackTrace();
}
@@ -360,7 +360,7 @@ public class Preloader_ClassTransformer2 {
Logger.INFO("Returning Invalid NBT data");
}
}
- catch (IllegalArgumentException | IllegalAccessException | NoSuchFieldException a){
+ catch (IllegalArgumentException | IllegalAccessException a){
Logger.REFLECTION("getDropsHack2");
a.printStackTrace();
}