From ccdd4804537787fd57ae9f57380c965fa450c19f Mon Sep 17 00:00:00 2001 From: repo_alt Date: Wed, 15 Sep 2021 01:21:43 +0300 Subject: [PATCH] fixed species converter not being registered for bees also simplified generic forestry converter --- .../forestry/ConverterIAlleles.java | 2 +- .../forestry/ConverterIIndividual.java | 60 ++++--------------- 2 files changed, 13 insertions(+), 49 deletions(-) diff --git a/src/main/scala/li/cil/oc/integration/forestry/ConverterIAlleles.java b/src/main/scala/li/cil/oc/integration/forestry/ConverterIAlleles.java index 158b4d5bc..4a8eb49fb 100644 --- a/src/main/scala/li/cil/oc/integration/forestry/ConverterIAlleles.java +++ b/src/main/scala/li/cil/oc/integration/forestry/ConverterIAlleles.java @@ -34,7 +34,7 @@ public class ConverterIAlleles implements Converter { } } - private void convertAlleleSpecies(final IAlleleSpecies value, final Map output) { + static void convertAlleleSpecies(final IAlleleSpecies value, final Map output) { output.put("name", value.getName()); output.put("uid", value.getUID()); output.put("humidity", value.getHumidity().name); diff --git a/src/main/scala/li/cil/oc/integration/forestry/ConverterIIndividual.java b/src/main/scala/li/cil/oc/integration/forestry/ConverterIIndividual.java index 981675d44..9768b9b18 100644 --- a/src/main/scala/li/cil/oc/integration/forestry/ConverterIIndividual.java +++ b/src/main/scala/li/cil/oc/integration/forestry/ConverterIIndividual.java @@ -15,19 +15,7 @@ import forestry.api.arboriculture.IAlleleLeafEffect; import forestry.api.arboriculture.IAlleleTreeSpecies; import forestry.api.arboriculture.ITree; import forestry.api.arboriculture.ITreeGenome; -import forestry.api.genetics.IAllele; -import forestry.api.genetics.IAlleleArea; -import forestry.api.genetics.IAlleleBoolean; -import forestry.api.genetics.IAlleleFloat; -import forestry.api.genetics.IAlleleFlowers; -import forestry.api.genetics.IAlleleInteger; -import forestry.api.genetics.IAllelePlantType; -import forestry.api.genetics.IAlleleTolerance; -import forestry.api.genetics.IChromosome; -import forestry.api.genetics.IChromosomeType; -import forestry.api.genetics.IGenome; -import forestry.api.genetics.IIndividual; -import forestry.api.genetics.IIndividualLiving; +import forestry.api.genetics.*; import forestry.api.lepidopterology.EnumButterflyChromosome; import forestry.api.lepidopterology.IAlleleButterflyEffect; import forestry.api.lepidopterology.IAlleleButterflySpecies; @@ -35,6 +23,7 @@ import forestry.api.lepidopterology.IButterfly; import forestry.api.lepidopterology.IButterflyGenome; import li.cil.oc.api.driver.Converter; +import java.util.HashMap; import java.util.Map; /* @@ -73,41 +62,16 @@ public class ConverterIIndividual implements Converter { private static final Map, IAlleleConverter> converters = ImmutableMap., IAlleleConverter>builder() - .put(IAlleleFloat.class, new IAlleleConverter() { - @Override - public Object convert(IAlleleFloat allele) { - return allele.getValue(); - } - }) - .put(IAlleleInteger.class, new IAlleleConverter() { - @Override - public Object convert(IAlleleInteger allele) { - return allele.getValue(); - } - }) - .put(IAlleleBoolean.class, new IAlleleConverter() { - @Override - public Object convert(IAlleleBoolean allele) { - return allele.getValue(); - } - }) - .put(IAlleleArea.class, new IAlleleConverter() { - @Override - public Object convert(IAlleleArea allele) { - return allele.getValue(); - } - }) - .put(IAllelePlantType.class, new IAlleleConverter() { - @Override - public Object convert(IAllelePlantType allele) { - return allele.getPlantTypes(); - } - }) - .put(IAlleleGrowth.class, new IAlleleConverter() { - @Override - public Object convert(IAlleleGrowth allele) { - return allele.getProvider().getInfo(); - } + .put(IAlleleFloat.class, (IAlleleConverter) IAlleleFloat::getValue) + .put(IAlleleInteger.class, (IAlleleConverter) IAlleleInteger::getValue) + .put(IAlleleBoolean.class, (IAlleleConverter) IAlleleBoolean::getValue) + .put(IAlleleArea.class, (IAlleleConverter) IAlleleArea::getValue) + .put(IAllelePlantType.class, (IAlleleConverter) IAllelePlantType::getPlantTypes) + .put(IAlleleGrowth.class, (IAlleleConverter) allele -> allele.getProvider().getInfo()) + .put(IAlleleBeeSpecies.class, (IAlleleConverter) allele -> { + Map output = new HashMap<>(); + ConverterIAlleles.convertAlleleSpecies(allele, output); + return output; }) .build();