aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gtPlusPlus/xmod/forestry
diff options
context:
space:
mode:
authorAlexdoru <57050655+Alexdoru@users.noreply.github.com>2024-09-07 05:40:03 +0200
committerGitHub <noreply@github.com>2024-09-07 03:40:03 +0000
commit82604eadb847335e4b4ddf2e90a28b325786837b (patch)
treeb5c34fa3ab38181fc47ec20c8537a5db34e285e1 /src/main/java/gtPlusPlus/xmod/forestry
parentba7a419aacf0b0eb33afbde5663640a0908b77ce (diff)
downloadGT5-Unofficial-82604eadb847335e4b4ddf2e90a28b325786837b.tar.gz
GT5-Unofficial-82604eadb847335e4b4ddf2e90a28b325786837b.tar.bz2
GT5-Unofficial-82604eadb847335e4b4ddf2e90a28b325786837b.zip
Remove a bunch more reflection (#3074)
Co-authored-by: boubou19 <miisterunknown@gmail.com>
Diffstat (limited to 'src/main/java/gtPlusPlus/xmod/forestry')
-rw-r--r--src/main/java/gtPlusPlus/xmod/forestry/bees/registry/GTPP_BeeDefinition.java59
-rw-r--r--src/main/java/gtPlusPlus/xmod/forestry/bees/registry/GTPP_Bees.java17
2 files changed, 25 insertions, 51 deletions
diff --git a/src/main/java/gtPlusPlus/xmod/forestry/bees/registry/GTPP_BeeDefinition.java b/src/main/java/gtPlusPlus/xmod/forestry/bees/registry/GTPP_BeeDefinition.java
index 11397e3ef3..95813e45bd 100644
--- a/src/main/java/gtPlusPlus/xmod/forestry/bees/registry/GTPP_BeeDefinition.java
+++ b/src/main/java/gtPlusPlus/xmod/forestry/bees/registry/GTPP_BeeDefinition.java
@@ -8,7 +8,6 @@ import static forestry.api.apiculture.EnumBeeChromosome.TEMPERATURE_TOLERANCE;
import static forestry.api.core.EnumHumidity.ARID;
import static gregtech.api.enums.Mods.Forestry;
-import java.lang.reflect.Field;
import java.util.Arrays;
import java.util.Locale;
import java.util.function.Consumer;
@@ -47,7 +46,6 @@ import gtPlusPlus.core.material.Material;
import gtPlusPlus.core.material.MaterialsElements.STANDALONE;
import gtPlusPlus.core.util.Utils;
import gtPlusPlus.core.util.minecraft.MaterialUtils;
-import gtPlusPlus.core.util.reflect.ReflectionUtils;
import gtPlusPlus.xmod.forestry.bees.handler.GTPPCombType;
public enum GTPP_BeeDefinition implements IBeeDefinition {
@@ -65,7 +63,11 @@ public enum GTPP_BeeDefinition implements IBeeDefinition {
AlleleHelper.instance.set(template, TEMPERATURE_TOLERANCE, Tolerance.BOTH_3);
AlleleHelper.instance.set(template, HUMIDITY_TOLERANCE, Tolerance.BOTH_3);
}, dis -> {
- IBeeMutationCustom tMutation = dis.registerMutation("DRAGONESSENCE", "NEUTRONIUM", 2);
+ IBeeMutationCustom tMutation = dis.registerMutation(
+ GTBeeDefinition.DRAGONESSENCE.getSpecies(),
+ GTBeeDefinition.NEUTRONIUM.getSpecies(),
+ 2,
+ 1f);
tMutation.restrictHumidity(ARID);
tMutation.requireResource(STANDALONE.DRAGON_METAL.getBlock(), 1);
tMutation.addMutationCondition(new GTBees.DimensionMutationCondition(1, "End")); // End Dim
@@ -84,7 +86,8 @@ public enum GTPP_BeeDefinition implements IBeeDefinition {
AlleleHelper.instance.set(template, TEMPERATURE_TOLERANCE, Tolerance.BOTH_1);
AlleleHelper.instance.set(template, HUMIDITY_TOLERANCE, Tolerance.BOTH_1);
}, dis -> {
- IBeeMutationCustom tMutation = dis.registerMutation("STEEL", "GOLD", 10);
+ IBeeMutationCustom tMutation = dis
+ .registerMutation(GTBeeDefinition.STEEL.getSpecies(), GTBeeDefinition.GOLD.getSpecies(), 10, 1f);
tMutation.restrictHumidity(ARID);
tMutation.restrictBiomeType(BiomeDictionary.Type.HOT);
}),;
@@ -185,15 +188,15 @@ public enum GTPP_BeeDefinition implements IBeeDefinition {
return ret;
}
- private final void setSpeciesProperties(GTPPAlleleBeeSpecies species2) {
+ private void setSpeciesProperties(GTPPAlleleBeeSpecies species2) {
this.mSpeciesProperties.accept(species2);
}
- private final void setAlleles(IAllele[] template) {
+ private void setAlleles(IAllele[] template) {
this.mAlleles.accept(template);
}
- private final void registerMutations() {
+ private void registerMutations() {
this.mMutations.accept(this);
}
@@ -209,59 +212,47 @@ public enum GTPP_BeeDefinition implements IBeeDefinition {
BeeManager.beeRoot.registerTemplate(template);
}
- private final IBeeMutationCustom registerMutation(IAlleleBeeSpecies parent1, IAlleleBeeSpecies parent2,
- int chance) {
+ private IBeeMutationCustom registerMutation(IAlleleBeeSpecies parent1, IAlleleBeeSpecies parent2, int chance) {
return registerMutation(parent1, parent2, chance, 1f);
}
- private final IBeeMutationCustom registerMutation(GTPP_BeeDefinition parent1, IAlleleBeeSpecies parent2,
- int chance) {
+ private IBeeMutationCustom registerMutation(GTPP_BeeDefinition parent1, IAlleleBeeSpecies parent2, int chance) {
return registerMutation(parent1, parent2, chance, 1f);
}
- private final IBeeMutationCustom registerMutation(IAlleleBeeSpecies parent1, GTPP_BeeDefinition parent2,
- int chance) {
+ private IBeeMutationCustom registerMutation(IAlleleBeeSpecies parent1, GTPP_BeeDefinition parent2, int chance) {
return registerMutation(parent1, parent2, chance, 1f);
}
- private final IBeeMutationCustom registerMutation(GTPP_BeeDefinition parent1, GTPP_BeeDefinition parent2,
- int chance) {
+ private IBeeMutationCustom registerMutation(GTPP_BeeDefinition parent1, GTPP_BeeDefinition parent2, int chance) {
return registerMutation(parent1, parent2, chance, 1f);
}
- private final IBeeMutationCustom registerMutation(String parent1, String parent2, int chance) {
- return registerMutation(getGregtechBeeType(parent1), getGregtechBeeType(parent2), chance, 1f);
- }
-
/**
* Diese neue Funtion erlaubt Mutationsraten unter 1%. Setze dazu die Mutationsrate als Bruch mit chance /
* chancedivider This new function allows Mutation percentages under 1%. Set them as a fraction with chance /
* chancedivider
*/
- private final IBeeMutationCustom registerMutation(IAlleleBeeSpecies parent1, IAlleleBeeSpecies parent2, int chance,
+ private IBeeMutationCustom registerMutation(IAlleleBeeSpecies parent1, IAlleleBeeSpecies parent2, int chance,
float chancedivider) {
return new GTPPBeeMutation(parent1, parent2, this.getTemplate(), chance, chancedivider);
}
- private final IBeeMutationCustom registerMutation(GTPP_BeeDefinition parent1, IAlleleBeeSpecies parent2, int chance,
+ private IBeeMutationCustom registerMutation(GTPP_BeeDefinition parent1, IAlleleBeeSpecies parent2, int chance,
float chancedivider) {
return registerMutation(parent1.species, parent2, chance, chancedivider);
}
- private final IBeeMutationCustom registerMutation(IAlleleBeeSpecies parent1, GTPP_BeeDefinition parent2, int chance,
+ private IBeeMutationCustom registerMutation(IAlleleBeeSpecies parent1, GTPP_BeeDefinition parent2, int chance,
float chancedivider) {
return registerMutation(parent1, parent2.species, chance, chancedivider);
}
- private final IBeeMutationCustom registerMutation(GTPP_BeeDefinition parent1, GTPP_BeeDefinition parent2,
- int chance, float chancedivider) {
+ private IBeeMutationCustom registerMutation(GTPP_BeeDefinition parent1, GTPP_BeeDefinition parent2, int chance,
+ float chancedivider) {
return registerMutation(parent1.species, parent2, chance, chancedivider);
}
- private final IBeeMutationCustom registerMutation(String parent1, String parent2, int chance, float chancedivider) {
- return registerMutation(getGregtechBeeType(parent1), getGregtechBeeType(parent2), chance, chancedivider);
- }
-
@Override
public final IAllele[] getTemplate() {
return Arrays.copyOf(template, template.length);
@@ -285,16 +276,4 @@ public enum GTPP_BeeDefinition implements IBeeDefinition {
public final IBeeDefinition getRainResist() {
return new BeeVariation.RainResist(this);
}
-
- public static IAlleleBeeSpecies getGregtechBeeType(String name) {
- try {
- // This is still cursed, but the species field is private and I don't want to go modify that right now
- GTBeeDefinition aBeeObject = GTBeeDefinition.valueOf(name);
- Field gtBeesField = ReflectionUtils.getField(GTBeeDefinition.class, "species");
- return ReflectionUtils.getFieldValue(gtBeesField, aBeeObject);
- } catch (Throwable t) {
- t.printStackTrace();
- return null;
- }
- }
}
diff --git a/src/main/java/gtPlusPlus/xmod/forestry/bees/registry/GTPP_Bees.java b/src/main/java/gtPlusPlus/xmod/forestry/bees/registry/GTPP_Bees.java
index bfdddcca8b..7ba5bc326a 100644
--- a/src/main/java/gtPlusPlus/xmod/forestry/bees/registry/GTPP_Bees.java
+++ b/src/main/java/gtPlusPlus/xmod/forestry/bees/registry/GTPP_Bees.java
@@ -7,7 +7,6 @@ import java.util.HashMap;
import gregtech.GTMod;
import gtPlusPlus.api.objects.Logger;
import gtPlusPlus.core.material.Material;
-import gtPlusPlus.core.util.reflect.ReflectionUtils;
import gtPlusPlus.xmod.forestry.bees.handler.GTPPCombType;
import gtPlusPlus.xmod.forestry.bees.handler.GTPPDropType;
import gtPlusPlus.xmod.forestry.bees.handler.GTPPPollenType;
@@ -45,7 +44,12 @@ public class GTPP_Bees {
combs = new GTPPComb();
Logger.BEES("Loading types.");
- initTypes();
+ // call values() to force initialization of enum entries
+ GTPP_BeeDefinition.values();
+ GTPPCombType.values();
+ GTPPDropType.values();
+ GTPPPollenType.values();
+ GTPPPropolisType.values();
Logger.BEES("Adding recipes.");
GTPPDrop.initDropsRecipes();
@@ -58,13 +62,4 @@ public class GTPP_Bees {
Logger.BEES("Done!");
}
}
-
- private static void initTypes() {
- // This is stupid
- ReflectionUtils.loadClass(GTPP_BeeDefinition.class.getName());
- ReflectionUtils.loadClass(GTPPCombType.class.getName());
- ReflectionUtils.loadClass(GTPPDropType.class.getName());
- ReflectionUtils.loadClass(GTPPPollenType.class.getName());
- ReflectionUtils.loadClass(GTPPPropolisType.class.getName());
- }
}