Merge pull request #233 from mikeprimm/master

Fix reported trap in Armor calculation when player has incomplete set of armor
This commit is contained in:
mikeprimm 2011-06-23 06:13:32 -07:00
commit 654769af1e

View File

@ -2,6 +2,7 @@ package org.dynmap;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.ItemStack;
import org.bukkit.Material;
public class Armor { public class Armor {
/** /**
@ -17,7 +18,12 @@ public class Armor {
double baseArmorPoints = 0; double baseArmorPoints = 0;
ItemStack inventory[] = player.getInventory().getArmorContents(); ItemStack inventory[] = player.getInventory().getArmorContents();
for(int i=0;i<inventory.length;i++) { for(int i=0;i<inventory.length;i++) {
final short maxDurability = inventory[i].getType().getMaxDurability(); if(inventory[i] == null)
continue;
Material m = inventory[i].getType();
if(m == null)
continue;
final short maxDurability = m.getMaxDurability();
if(maxDurability < 0) if(maxDurability < 0)
continue; continue;
final short durability = inventory[i].getDurability(); final short durability = inventory[i].getDurability();