package net.minecraft.world; public class WorldType { /** List of world types. */ public static final WorldType[] worldTypes = new WorldType[16]; /** Default world type. */ public static final WorldType DEFAULT = (new WorldType(0, "default", 1)).setVersioned(); /** Flat world type. */ public static final WorldType FLAT = new WorldType(1, "flat"); /** Large Biome world Type. */ public static final WorldType LARGE_BIOMES = new WorldType(2, "largeBiomes"); /** amplified world type */ public static final WorldType AMPLIFIED = (new WorldType(3, "amplified")).setNotificationData(); public static final WorldType CUSTOMIZED = new WorldType(4, "customized"); public static final WorldType DEBUG_WORLD = new WorldType(5, "debug_all_block_states"); /** Default (1.1) world type. */ public static final WorldType DEFAULT_1_1 = (new WorldType(8, "default_1_1", 0)).setCanBeCreated(false); /** ID for this world type. */ private final int worldTypeId; private final String worldType; /** The int version of the ChunkProvider that generated this world. */ private final int generatorVersion; /** * Whether this world type can be generated. Normally true; set to false for out-of-date generator versions. */ private boolean canBeCreated; /** Whether this WorldType has a version or not. */ private boolean isWorldTypeVersioned; private boolean hasNotificationData; private static final String __OBFID = "CL_00000150"; private WorldType(int id, String name) { this(id, name, 0); } private WorldType(int id, String name, int version) { this.worldType = name; this.generatorVersion = version; this.canBeCreated = true; this.worldTypeId = id; worldTypes[id] = this; } public String getWorldTypeName() { return this.worldType; } /** * Returns generatorVersion. */ public int getGeneratorVersion() { return this.generatorVersion; } public WorldType getWorldTypeForGeneratorVersion(int version) { return this == DEFAULT && version == 0 ? DEFAULT_1_1 : this; } /** * Sets canBeCreated to the provided value, and returns this. */ private WorldType setCanBeCreated(boolean enable) { this.canBeCreated = enable; return this; } /** * Flags this world type as having an associated version. */ private WorldType setVersioned() { this.isWorldTypeVersioned = true; return this; } /** * Returns true if this world Type has a version associated with it. */ public boolean isVersioned() { return this.isWorldTypeVersioned; } public static WorldType parseWorldType(String type) { for (int var1 = 0; var1 < worldTypes.length; ++var1) { if (worldTypes[var1] != null && worldTypes[var1].worldType.equalsIgnoreCase(type)) { return worldTypes[var1]; } } return null; } public int getWorldTypeID() { return this.worldTypeId; } /** * enables the display of generator.[worldtype].info message on the customize world menu */ private WorldType setNotificationData() { this.hasNotificationData = true; return this; } }