store only biome IDs not instances

reorganized utility methods
This commit is contained in:
octarine-noise
2014-08-21 15:23:28 +02:00
parent 4bc6a4a2f9
commit 85b4880391
13 changed files with 247 additions and 237 deletions

View File

@@ -1,13 +1,11 @@
package mods.betterfoliage.client.gui;
import java.util.Arrays;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
import mods.betterfoliage.common.config.Config;
import mods.betterfoliage.common.util.BiomeUtils;
import net.minecraft.world.biome.BiomeGenBase;
import com.google.common.base.Predicates;
import com.google.common.collect.Collections2;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.Lists;
@@ -19,31 +17,20 @@ import cpw.mods.fml.client.config.IConfigElement;
public class BiomeListConfigEntry extends SelectListConfigEntry<BiomeGenBase> {
public static List<BiomeGenBase> reedBiomeList = Lists.newArrayList();
public static List<BiomeGenBase> algaeBiomeList = Lists.newArrayList();
public static List<BiomeGenBase> coralBiomeList = Lists.newArrayList();
public BiomeListConfigEntry(GuiConfig owningScreen, GuiConfigEntries owningEntryList, IConfigElement<?> configElement) {
super(owningScreen, owningEntryList, configElement);
}
@Override
protected List<BiomeGenBase> getBaseSet(String qualifiedName) {
List<BiomeGenBase> biomes = Lists.newArrayList(Collections2.filter(Arrays.asList(BiomeGenBase.getBiomeGenArray()), Predicates.notNull()));
Collections.sort(biomes, new Comparator<BiomeGenBase>() {
@Override
public int compare(BiomeGenBase o1, BiomeGenBase o2) {
return o1.biomeName.compareTo(o2.biomeName);
}
});
return biomes;
protected List<BiomeGenBase> getBaseSet(String name) {
return BiomeUtils.getAllBiomes();
}
@Override
protected List<BiomeGenBase> getDefaultSelected(String name) {
if (name.equals("reedBiomeList")) return reedBiomeList;
if (name.equals("algaeBiomeList")) return algaeBiomeList;
if (name.equals("coralBiomeList")) return coralBiomeList;
if (name.equals("reedBiomeList")) return Lists.newArrayList(Collections2.filter(getBaseSet(name), BiomeUtils.biomeIdFilter(Config.reedBiomeList)));
if (name.equals("algaeBiomeList")) return Lists.newArrayList(Collections2.filter(getBaseSet(name), BiomeUtils.biomeIdFilter(Config.algaeBiomeList)));
if (name.equals("coralBiomeList")) return Lists.newArrayList(Collections2.filter(getBaseSet(name), BiomeUtils.biomeIdFilter(Config.coralBiomeList)));
return ImmutableList.<BiomeGenBase>of();
}

View File

@@ -1,6 +1,6 @@
package mods.betterfoliage.client.gui;
import mods.betterfoliage.common.util.Utils;
import mods.betterfoliage.common.util.RenderUtils;
import net.minecraft.client.resources.I18n;
import net.minecraft.util.EnumChatFormatting;
import cpw.mods.fml.client.config.GuiConfig;
@@ -14,7 +14,7 @@ public class NonVerboseArrayEntry extends GuiConfigEntries.ArrayEntry {
public NonVerboseArrayEntry(GuiConfig owningScreen, GuiConfigEntries owningEntryList, IConfigElement<?> configElement) {
super(owningScreen, owningEntryList, configElement);
Utils.stripTooltipDefaultText(toolTip);
RenderUtils.stripTooltipDefaultText(toolTip);
String shortDefaults = I18n.format("betterfoliage.arrayEntryDisplay", configElement.getDefaults().length);
toolTip.addAll(this.mc.fontRenderer.listFormattedStringToWidth(EnumChatFormatting.AQUA + I18n.format("fml.configgui.tooltip.default", shortDefaults),300));
}

View File

@@ -4,7 +4,7 @@ import java.util.Collections;
import java.util.List;
import java.util.Set;
import mods.betterfoliage.common.util.Utils;
import mods.betterfoliage.common.util.RenderUtils;
import net.minecraft.client.gui.GuiScreen;
import net.minecraft.client.resources.I18n;
import net.minecraft.util.EnumChatFormatting;
@@ -28,7 +28,7 @@ public abstract class SelectListConfigEntry<T> extends CategoryEntry {
@SuppressWarnings("unchecked")
public SelectListConfigEntry(GuiConfig owningScreen, GuiConfigEntries owningEntryList, IConfigElement<?> configElement) {
super(owningScreen, owningEntryList, configElement);
Utils.stripTooltipDefaultText(toolTip);
RenderUtils.stripTooltipDefaultText(toolTip);
}
@Override