Commits

md_5 authored deeecc7f080
SPIGOT-4820: Villager Type API
No tags

src/main/java/org/bukkit/craftbukkit/entity/CraftVillager.java

Modified
1 1 package org.bukkit.craftbukkit.entity;
2 2
3 3 import java.util.Locale;
4 4 import net.minecraft.server.EntityVillager;
5 5 import net.minecraft.server.IRegistry;
6 -import net.minecraft.server.MinecraftKey;
7 6 import org.apache.commons.lang.Validate;
8 7 import org.bukkit.craftbukkit.CraftServer;
8 +import org.bukkit.craftbukkit.util.CraftNamespacedKey;
9 9 import org.bukkit.entity.EntityType;
10 10 import org.bukkit.entity.Villager;
11 11
12 12 public class CraftVillager extends CraftAbstractVillager implements Villager {
13 13
14 14 public CraftVillager(CraftServer server, EntityVillager entity) {
15 15 super(server, entity);
16 16 }
17 17
18 18 @Override
31 31 }
32 32
33 33 @Override
34 34 public Profession getProfession() {
35 35 return Profession.valueOf(IRegistry.VILLAGER_PROFESSION.getKey(getHandle().getVillagerData().getProfession()).getKey().toUpperCase(Locale.ROOT));
36 36 }
37 37
38 38 @Override
39 39 public void setProfession(Profession profession) {
40 40 Validate.notNull(profession);
41 - getHandle().setVillagerData(getHandle().getVillagerData().withProfession(IRegistry.VILLAGER_PROFESSION.get(new MinecraftKey(profession.name().toLowerCase(Locale.ROOT)))));
41 + getHandle().setVillagerData(getHandle().getVillagerData().withProfession(IRegistry.VILLAGER_PROFESSION.get(CraftNamespacedKey.toMinecraft(profession.getKey()))));
42 + }
43 +
44 + @Override
45 + public Type getVillagerType() {
46 + return Type.valueOf(IRegistry.VILLAGER_TYPE.getKey(getHandle().getVillagerData().getType()).getKey().toUpperCase(Locale.ROOT));
47 + }
48 +
49 + @Override
50 + public void setVillagerType(Type type) {
51 + Validate.notNull(type);
52 + getHandle().setVillagerData(getHandle().getVillagerData().withType(IRegistry.VILLAGER_TYPE.get(CraftNamespacedKey.toMinecraft(type.getKey()))));
42 53 }
43 54 }

Everything looks good. We'll let you know here if there's anything you should know about.

Add shortcut