package moe.ymc.acron.common; import com.google.gson.annotations.SerializedName; import net.minecraft.util.Identifier; import net.minecraft.world.dimension.DimensionType; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; public enum WorldKey { @SerializedName("overworld") OVERWORLD, @SerializedName("nether") NETHER, @SerializedName("end") END; private static final Logger LOGGER = LogManager.getLogger(); public static @Nullable WorldKey create(@NotNull Identifier identifier) { if (identifier.equals(DimensionType.OVERWORLD_ID)) { return OVERWORLD; } else if (identifier.equals(DimensionType.THE_NETHER_ID)) { return NETHER; } else if (identifier.equals(DimensionType.THE_END_ID)) { return END; } else { LOGGER.warn("Unknown world {}:{}. Returning NULL to the client.", identifier.getNamespace(), identifier.getPath()); return null; } } }