add item to hand if blacksmith is human
This commit is contained in:
parent
377d93062a
commit
0066fbfe0c
@ -128,6 +128,8 @@ public class BlacksmithCharacter extends Character {
|
|||||||
npc.chat(player, startReforgeMsg);
|
npc.chat(player, startReforgeMsg);
|
||||||
session.setTask(plugin.getServer().getScheduler().scheduleAsyncDelayedTask(plugin,
|
session.setTask(plugin.getServer().getScheduler().scheduleAsyncDelayedTask(plugin,
|
||||||
new ReforgeTask(npc, player), (new Random().nextInt(maxReforgeDelay) + minReforgeDelay) * 20));
|
new ReforgeTask(npc, player), (new Random().nextInt(maxReforgeDelay) + minReforgeDelay) * 20));
|
||||||
|
if (npc.getBukkitEntity() instanceof Player)
|
||||||
|
((Player) npc.getBukkitEntity()).setItemInHand(player.getItemInHand());
|
||||||
player.setItemInHand(null);
|
player.setItemInHand(null);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -145,6 +147,8 @@ public class BlacksmithCharacter extends Character {
|
|||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
npc.chat(player, reforgeItemInHand() ? successMsg : failMsg);
|
npc.chat(player, reforgeItemInHand() ? successMsg : failMsg);
|
||||||
|
if (npc.getBukkitEntity() instanceof Player)
|
||||||
|
((Player) npc.getBukkitEntity()).setItemInHand(null);
|
||||||
player.getWorld().dropItemNaturally(npc.getBukkitEntity().getLocation(), reforge);
|
player.getWorld().dropItemNaturally(npc.getBukkitEntity().getLocation(), reforge);
|
||||||
session = null;
|
session = null;
|
||||||
}
|
}
|
||||||
@ -165,13 +169,11 @@ public class BlacksmithCharacter extends Character {
|
|||||||
}
|
}
|
||||||
// Damage the item
|
// Damage the item
|
||||||
short durability = (short) (reforge.getDurability() + reforge.getDurability() * random.nextInt(5));
|
short durability = (short) (reforge.getDurability() + reforge.getDurability() * random.nextInt(5));
|
||||||
System.out.println("durability: " + durability);
|
|
||||||
short maxDurability = reforge.getType().getMaxDurability();
|
short maxDurability = reforge.getType().getMaxDurability();
|
||||||
if (durability <= 0)
|
if (durability <= 0)
|
||||||
durability = (short) (maxDurability / 3);
|
durability = (short) (maxDurability / 3);
|
||||||
else if (reforge.getDurability() + durability > maxDurability)
|
else if (reforge.getDurability() + durability > maxDurability)
|
||||||
durability = (short) (maxDurability - random.nextInt(maxDurability - 25));
|
durability = (short) (maxDurability - random.nextInt(maxDurability - 25));
|
||||||
System.out.println("durabilityModified: " + durability);
|
|
||||||
reforge.setDurability((short) (durability));
|
reforge.setDurability((short) (durability));
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user