use of net.minecraft.world.entity.npc.VillagerData in project MyPet by xXKeyleXx.
the class EntityMyVillager method defineSynchedData.
@Override
protected void defineSynchedData() {
super.defineSynchedData();
getEntityData().define(AGE_WATCHER, false);
if (MyPetApi.getCompatUtil().isCompatible("1.14.1")) {
getEntityData().define(UNUSED_WATCHER, 0);
}
getEntityData().define(PROFESSION_WATCHER, new VillagerData(VillagerType.PLAINS, VillagerProfession.NONE, 1));
}
use of net.minecraft.world.entity.npc.VillagerData in project MyPet by xXKeyleXx.
the class EntityMyZombieVillager method updateVisuals.
@Override
public void updateVisuals() {
getEntityData().set(BABY_WATCHER, getMyPet().isBaby());
String professionKey = MyVillager.Profession.values()[getMyPet().getProfession()].getKey();
VillagerProfession profession = Registry.VILLAGER_PROFESSION.get(new ResourceLocation(professionKey));
// TODO
VillagerType type = Registry.VILLAGER_TYPE.get(new ResourceLocation(getMyPet().getType().getKey()));
getEntityData().set(PROFESSION_WATCHER, new VillagerData(type, profession, getMyPet().getTradingLevel()));
Bukkit.getScheduler().runTaskLater(MyPetApi.getPlugin(), () -> {
if (getMyPet().getStatus() == MyPet.PetState.Here) {
for (EquipmentSlot slot : EquipmentSlot.values()) {
setPetEquipment(slot, CraftItemStack.asNMSCopy(getMyPet().getEquipment(slot)));
}
}
}, 5L);
}
use of net.minecraft.world.entity.npc.VillagerData in project MyPet by xXKeyleXx.
the class EntityMyZombieVillager method updateVisuals.
@Override
public void updateVisuals() {
getEntityData().set(BABY_WATCHER, getMyPet().isBaby());
String professionKey = MyVillager.Profession.values()[getMyPet().getProfession()].getKey();
VillagerProfession profession = Registry.VILLAGER_PROFESSION.get(new ResourceLocation(professionKey));
// TODO
VillagerType type = Registry.VILLAGER_TYPE.get(new ResourceLocation(getMyPet().getType().getKey()));
getEntityData().set(PROFESSION_WATCHER, new VillagerData(type, profession, getMyPet().getTradingLevel()));
Bukkit.getScheduler().runTaskLater(MyPetApi.getPlugin(), () -> {
if (getMyPet().getStatus() == MyPet.PetState.Here) {
for (EquipmentSlot slot : EquipmentSlot.values()) {
setPetEquipment(slot, CraftItemStack.asNMSCopy(getMyPet().getEquipment(slot)));
}
}
}, 5L);
}
use of net.minecraft.world.entity.npc.VillagerData in project Tropicraft by Tropicraft.
the class EntityKoaBase method updateTrades.
/**
* New main override for villager "trades" aka offers
* @return
*/
@Override
protected void updateTrades() {
VillagerData villagerdata = this.getVillagerData();
Int2ObjectMap<VillagerTrades.ItemListing[]> int2objectmap = getOfferMap();
if (int2objectmap != null && !int2objectmap.isEmpty()) {
VillagerTrades.ItemListing[] avillagertrades$itrade = int2objectmap.get(villagerdata.getLevel());
if (avillagertrades$itrade != null) {
MerchantOffers merchantoffers = this.getOffers();
this.addOffersFromItemListings(merchantoffers, avillagertrades$itrade, 2);
}
}
}
Aggregations