]> git.lizzy.rs Git - BoundingBoxOutlineReloaded.git/blob - src/main/java/com/irtimaled/bbor/common/models/DimensionId.java
83924e3c4099bdb5280cd034cc9077551592a7ac
[BoundingBoxOutlineReloaded.git] / src / main / java / com / irtimaled / bbor / common / models / DimensionId.java
1 package com.irtimaled.bbor.common.models;
2
3 import net.minecraft.util.ResourceLocation;
4 import net.minecraft.world.dimension.DimensionType;
5
6 import java.util.HashMap;
7 import java.util.Map;
8
9 public class DimensionId {
10     private static final Map<ResourceLocation, DimensionId> dimensionIdMap = new HashMap<>();
11
12     public static DimensionId from(DimensionType dimensionType) {
13         return from(DimensionType.getKey(dimensionType));
14     }
15
16     public static DimensionId from(ResourceLocation value) {
17         return dimensionIdMap.computeIfAbsent(value, DimensionId::new);
18     }
19
20     public static DimensionId OVERWORLD = DimensionId.from(DimensionType.OVERWORLD);
21
22     private final ResourceLocation value;
23
24     public DimensionId(ResourceLocation value) {
25         this.value = value;
26     }
27
28     public ResourceLocation getValue() {
29         return value;
30     }
31
32     public DimensionType getDimensionType() {
33         return DimensionType.byName(value);
34     }
35
36     @Override
37     public String toString() {
38         return value.toString();
39     }
40 }