package jas.spawner.modern.spawner.biome.group; import net.minecraft.world.biome.BiomeGenBase; public class BiomeHelper { // This is hacky, but neccesary, as It is what I get for relying on String names in an Integer ID system. private static String[] packageNames = new String[BiomeGenBase.getBiomeGenArray().length]; /** * Convert a BiomeGenBase biomeName to a universal package Biome Name. This is to combat developers who are using * identical biome names. * * @return BiomeName in the form Package+Class+BiomeName */ public static String getPackageName(BiomeGenBase biome) { String packageName = packageNames[biome.biomeID]; if (packageName != null) { return packageName; } else { packageName = biome.getClass().getName() + "." + biome.biomeName; packageNames[biome.biomeID] = packageName; return packageName; } } /** * Gets the a shortform of the package name. Usually used for display purposes to users when uniqueness is not * required. * * @return BiomeName in the form Package+Class+BiomeName */ public static String getShortPackageName(BiomeGenBase biome) { String[] currentParts = getPackageName(biome).split("\\."); String prefix = currentParts.length > 1 ? currentParts[0] : "DUPLICATE"; return prefix + "." + biome.biomeName; } }