From 0d207e832123267b180306afca5d9f7724808417 Mon Sep 17 00:00:00 2001 From: HappyPikachu Date: Thu, 23 Jun 2016 21:15:00 -0400 Subject: [PATCH] Update mob spawning for MC 1.10, fixes #353. Bump version number --- pom.xml | 2 +- .../me/blackvein/quests/util/QuestMob.java | 35 ++++++++++++++----- 2 files changed, 27 insertions(+), 10 deletions(-) diff --git a/pom.xml b/pom.xml index 6671eeeb5..a61a0a790 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ me.blackvein.quests quests - 2.6.5 + 2.6.6 quests https://github.com/FlyingPikachu/Quests/ jar diff --git a/src/main/java/me/blackvein/quests/util/QuestMob.java b/src/main/java/me/blackvein/quests/util/QuestMob.java index ddce0f907..9649fb98c 100644 --- a/src/main/java/me/blackvein/quests/util/QuestMob.java +++ b/src/main/java/me/blackvein/quests/util/QuestMob.java @@ -1,12 +1,12 @@ package me.blackvein.quests.util; - import me.blackvein.quests.Quests; +import net.minecraft.server.v1_10_R1.EnumItemSlot; +import org.bukkit.Bukkit; import org.bukkit.Location; import org.bukkit.World; -import org.bukkit.craftbukkit.v1_8_R1.entity.CraftEntity; -import org.bukkit.craftbukkit.v1_8_R1.entity.CraftLivingEntity; -import org.bukkit.craftbukkit.v1_8_R1.inventory.CraftItemStack; +import org.bukkit.craftbukkit.v1_10_R1.entity.CraftEntity; +import org.bukkit.craftbukkit.v1_10_R1.inventory.CraftItemStack; import org.bukkit.entity.Entity; import org.bukkit.entity.EntityType; import org.bukkit.entity.LivingEntity; @@ -102,13 +102,30 @@ public class QuestMob { ((LivingEntity) entity).setCustomNameVisible(true); } - for (int j = 0; j < 5; j++) { - if (inventory[j] != null) { - ((CraftEntity) entity).getHandle().setEquipment(j, CraftItemStack.asNMSCopy(inventory[j])); - } + try{ + ((CraftEntity) entity).getHandle().setEquipment(EnumItemSlot.MAINHAND, CraftItemStack.asNMSCopy(inventory[0])); + ((CraftEntity) entity).getHandle().setEquipment(EnumItemSlot.FEET, CraftItemStack.asNMSCopy(inventory[1])); + ((CraftEntity) entity).getHandle().setEquipment(EnumItemSlot.LEGS, CraftItemStack.asNMSCopy(inventory[2])); + ((CraftEntity) entity).getHandle().setEquipment(EnumItemSlot.CHEST, CraftItemStack.asNMSCopy(inventory[3])); + ((CraftEntity) entity).getHandle().setEquipment(EnumItemSlot.HEAD, CraftItemStack.asNMSCopy(inventory[4])); + } catch (Exception e) { + Bukkit.getLogger().severe("Entity NMS is invalid for this version of CraftBukkit. Please notify the developer"); + e.printStackTrace(); } + + /*for (int j = 0; j < 5; j++) { + if (inventory[j] != null) { + try{ + ((CraftEntity) entity).getHandle().setEquipment(j, CraftItemStack.asNMSCopy(inventory[j])); + } catch (Exception e) { + Bukkit.getLogger().severe("Entity NMS is invalid for this version of CraftBukkit. Please notify the developer"); + e.printStackTrace(); + } + } + }*/ - EntityEquipment eq = ((CraftLivingEntity) entity).getEquipment(); + //EntityEquipment eq = ((CraftLivingEntity) entity).getEquipment(); + EntityEquipment eq = ((LivingEntity)entity).getEquipment(); if (dropChances[0] != null) { eq.setItemInHandDropChance(dropChances[0]);