45 lines
1.3 KiB
Java
45 lines
1.3 KiB
Java
package net.minecraft.client.resources.metadata.animation;
|
|
|
|
import java.util.Arrays;
|
|
import java.util.Map;
|
|
import java.util.stream.Collectors;
|
|
import net.fabricmc.api.EnvType;
|
|
import net.fabricmc.api.Environment;
|
|
|
|
@Environment(EnvType.CLIENT)
|
|
public class VillagerMetaDataSection {
|
|
public static final VillagerMetadataSectionSerializer SERIALIZER = new VillagerMetadataSectionSerializer();
|
|
public static final String SECTION_NAME = "villager";
|
|
private final VillagerMetaDataSection.Hat hat;
|
|
|
|
public VillagerMetaDataSection(VillagerMetaDataSection.Hat hat) {
|
|
this.hat = hat;
|
|
}
|
|
|
|
public VillagerMetaDataSection.Hat getHat() {
|
|
return this.hat;
|
|
}
|
|
|
|
@Environment(EnvType.CLIENT)
|
|
public static enum Hat {
|
|
NONE("none"),
|
|
PARTIAL("partial"),
|
|
FULL("full");
|
|
|
|
private static final Map<String, VillagerMetaDataSection.Hat> BY_NAME = (Map<String, VillagerMetaDataSection.Hat>)Arrays.stream(values())
|
|
.collect(Collectors.toMap(VillagerMetaDataSection.Hat::getName, hat -> hat));
|
|
private final String name;
|
|
|
|
private Hat(final String name) {
|
|
this.name = name;
|
|
}
|
|
|
|
public String getName() {
|
|
return this.name;
|
|
}
|
|
|
|
public static VillagerMetaDataSection.Hat getByName(String name) {
|
|
return (VillagerMetaDataSection.Hat)BY_NAME.getOrDefault(name, NONE);
|
|
}
|
|
}
|
|
}
|