diff options
author | Alkalus <3060479+draknyte1@users.noreply.github.com> | 2019-04-24 13:23:21 +1000 |
---|---|---|
committer | Alkalus <3060479+draknyte1@users.noreply.github.com> | 2019-04-24 13:23:21 +1000 |
commit | ac7d12986394ae1e8521728928a9404b9a102af3 (patch) | |
tree | 275077a6fdd27204e5e03e5aa9ab2dc27e5219d8 /src/Java/gtPlusPlus/xmod/thaumcraft | |
parent | 5412e231437d90d4fe45dab89bb5757211735e02 (diff) | |
download | GT5-Unofficial-ac7d12986394ae1e8521728928a9404b9a102af3.tar.gz GT5-Unofficial-ac7d12986394ae1e8521728928a9404b9a102af3.tar.bz2 GT5-Unofficial-ac7d12986394ae1e8521728928a9404b9a102af3.zip |
$ Fucked with TC4 integration. Enabled lots of logging.
Diffstat (limited to 'src/Java/gtPlusPlus/xmod/thaumcraft')
-rw-r--r-- | src/Java/gtPlusPlus/xmod/thaumcraft/aspect/GTPP_AspectCompat.java | 12 | ||||
-rw-r--r-- | src/Java/gtPlusPlus/xmod/thaumcraft/objects/wrapper/aspect/TC_Aspect_Wrapper.java | 30 |
2 files changed, 38 insertions, 4 deletions
diff --git a/src/Java/gtPlusPlus/xmod/thaumcraft/aspect/GTPP_AspectCompat.java b/src/Java/gtPlusPlus/xmod/thaumcraft/aspect/GTPP_AspectCompat.java index 6cd5af02b6..6271f97d53 100644 --- a/src/Java/gtPlusPlus/xmod/thaumcraft/aspect/GTPP_AspectCompat.java +++ b/src/Java/gtPlusPlus/xmod/thaumcraft/aspect/GTPP_AspectCompat.java @@ -83,6 +83,8 @@ public class GTPP_AspectCompat { public GTPP_AspectCompat() { + Logger.INFO("[Thaumcraft++] Initialising custom Thaumcraft 4 Aspects."); + Logger.INFO("[Thaumcraft++] Mapping Vanilla Aspects to data tables."); // Generate all existing Aspects as TC_Aspects LinkedHashMap<String, Object> h = TC_Aspect_Wrapper.getVanillaAspectList(); @@ -97,6 +99,8 @@ public class GTPP_AspectCompat { } } + Logger.INFO("[Thaumcraft++] Finished mapping Vanilla Aspects to data tables. Mapped "+mAspectCache.size()); + @@ -113,6 +117,7 @@ public class GTPP_AspectCompat { false, 1, "Ancient Knowledge"); + Logger.INFO("[Thaumcraft++] Added new Aspect: Sagrausten"); ASPECT_LUST = new TC_Aspect_Wrapper( @@ -126,6 +131,7 @@ public class GTPP_AspectCompat { false, 1, "Warped Thoughts"); + Logger.INFO("[Thaumcraft++] Added new Aspect: Slusium"); ASPECT_STARBOUND = new TC_Aspect_Wrapper( @@ -138,6 +144,7 @@ public class GTPP_AspectCompat { false, 1, "A beginning to something new"); + Logger.INFO("[Thaumcraft++] Added new Aspect: Xenil"); ASPECT_TOXIC = new TC_Aspect_Wrapper( @@ -151,6 +158,7 @@ public class GTPP_AspectCompat { false, 1, "Insanity"); + Logger.INFO("[Thaumcraft++] Added new Aspect: Xablum"); ASPECT_HEAVEN = new TC_Aspect_Wrapper( @@ -163,7 +171,8 @@ public class GTPP_AspectCompat { new ResourceLocation(CORE.MODID+":textures/aspects/" + "Zetralt.png"), false, 1, - "Control, Respect, Glory"); + "Control, Respect, Glory"); + Logger.INFO("[Thaumcraft++] Added new Aspect: Zetralt"); } @@ -172,6 +181,7 @@ public class GTPP_AspectCompat { try { return TC_Aspect_Wrapper.generate(aGtObjects.mAspect); } catch (IllegalArgumentException e) { + Logger.INFO("[Thaumcraft++] Error getting Aspects for GT++ usage. [1]"); e.printStackTrace(); return null; } diff --git a/src/Java/gtPlusPlus/xmod/thaumcraft/objects/wrapper/aspect/TC_Aspect_Wrapper.java b/src/Java/gtPlusPlus/xmod/thaumcraft/objects/wrapper/aspect/TC_Aspect_Wrapper.java index fda0fd27c5..72e2c99a96 100644 --- a/src/Java/gtPlusPlus/xmod/thaumcraft/objects/wrapper/aspect/TC_Aspect_Wrapper.java +++ b/src/Java/gtPlusPlus/xmod/thaumcraft/objects/wrapper/aspect/TC_Aspect_Wrapper.java @@ -11,6 +11,7 @@ import gregtech.api.enums.TC_Aspects; import gregtech.api.util.GT_LanguageManager; import gtPlusPlus.api.objects.Logger; import gtPlusPlus.core.lib.CORE; +import gtPlusPlus.core.lib.LoadedMods; import gtPlusPlus.core.util.reflect.ReflectionUtils; import gtPlusPlus.xmod.thaumcraft.util.ThaumcraftUtils; import net.minecraft.util.ResourceLocation; @@ -47,7 +48,7 @@ public class TC_Aspect_Wrapper { * Statically set the Class objects */ static { - mClass_Aspect = ReflectionUtils.getClass("thaumcraft.api.aspects.Aspect"); + Logger.INFO("[Thaumcraft++] Creating TC_Aspect_Wrapper data tables."); } /** @@ -57,16 +58,19 @@ public class TC_Aspect_Wrapper { public static LinkedHashMap<String, Object> getVanillaAspectList() { try { if (mField_Aspects == null) { + Logger.INFO("[Thaumcraft++] Getting Aspect list Reflectively."); mField_Aspects = ReflectionUtils.getField(mClass_Aspect, "aspects"); } + Logger.INFO("[Thaumcraft++] Obtained Vanilla Aspects as a HashMap"); return (LinkedHashMap<String, Object>) mField_Aspects.get(null); } catch (IllegalArgumentException | IllegalAccessException e) { - Logger.REFLECTION("Failed configuring TC Aspect compatibility."); + Logger.INFO("[Thaumcraft++] Failed configuring TC Aspect compatibility."); return new LinkedHashMap<String, Object>(); } } public static Object getVanillaAspectObject(String aAspectName) { + Logger.INFO("[Thaumcraft++] Looking for Aspect '"+aAspectName+"' in Vanilla Data Tables."); return getVanillaAspectList().get(aAspectName); } @@ -138,6 +142,16 @@ public class TC_Aspect_Wrapper { if (components == null) { components = new TC_Aspect_Wrapper[] {}; } + + //Set Reflective Class data here instead of in static{} + if (LoadedMods.Thaumcraft) { + if (mClass_Aspect == null) { + Logger.INFO("[Thaumcraft++] Getting Aspect base class reflectively."); + mClass_Aspect = ReflectionUtils.getClass("thaumcraft.api.aspects.Aspect"); + } + } + + //String aTag = vanilla ? tag.toLowerCase() : "custom"+(aInternalAspectIDAllocation++); String aTag = tag.toLowerCase(); if (getAspectList().containsKey(tag.toLowerCase())) { @@ -168,6 +182,7 @@ public class TC_Aspect_Wrapper { } } } catch (IllegalArgumentException e1) { + Logger.INFO("[Thaumcraft++] Error generating Aspects for GT++ usage. [0]"); e1.printStackTrace(); } } @@ -191,21 +206,25 @@ public class TC_Aspect_Wrapper { * @throws IllegalArgumentException * @throws IllegalAccessException */ - @SuppressWarnings("unused") public static TC_Aspect_Wrapper generate(Object aBaseAspect) { try { + Logger.INFO("[Thaumcraft++] Trying to generate Aspect."); Field aTagF = ReflectionUtils.getField(mClass_Aspect, "tag"); if (aTagF == null) { + Logger.INFO("[Thaumcraft++] Failed - Invalid Getter for Aspect [1]."); return null; } String aTafB = (String) aTagF.get(aBaseAspect); if (aTafB == null) { + Logger.INFO("[Thaumcraft++] Failed - Invalid Getting for Aspect [2]."); return null; } String aTag = aTafB.toLowerCase(); if (aTag != null && getAspectList().containsKey(aTag.toLowerCase())) { + Logger.INFO("[Thaumcraft++] Found existing Aspect, reusing. Aspect: "+aTag); return getAspect(aTag); } else { + Logger.INFO("[Thaumcraft++] Generating our own, as it does not yet exist. Aspect: "+aTag); TC_Aspect_Wrapper aTemp = new TC_Aspect_Wrapper( aTag, (int) ReflectionUtils.getField(mClass_Aspect, "color").get(aBaseAspect), @@ -225,6 +244,7 @@ public class TC_Aspect_Wrapper { } } catch (Throwable t) { + Logger.INFO("[Thaumcraft++] Error generating Aspects for GT++ usage. [1]"); t.printStackTrace(); return null; } @@ -255,9 +275,11 @@ public class TC_Aspect_Wrapper { return aTemp; } } catch (IllegalArgumentException e) { + Logger.INFO("[Thaumcraft++] Error generating Aspects for GT++ usage. [2.1]"); e.printStackTrace(); } } + Logger.INFO("[Thaumcraft++] Error generating Aspects for GT++ usage. [2.2]"); return null; } @@ -281,6 +303,7 @@ public class TC_Aspect_Wrapper { } } } catch (IllegalArgumentException | IllegalAccessException e) { + Logger.INFO("[Thaumcraft++] Error generating Aspects for GT++ usage. [3]"); e.printStackTrace(); aAspectArray = new TC_Aspect_Wrapper[0]; } @@ -315,6 +338,7 @@ public class TC_Aspect_Wrapper { } return myObject; } catch (Throwable t) { + Logger.INFO("[Thaumcraft++] Error generating Aspects for GT++ usage. [4]"); t.printStackTrace(); return null; } |