diff --git a/src/engine/mobileAI/utilities/CombatUtilities.java b/src/engine/mobileAI/utilities/CombatUtilities.java index 8b8a7c38..6423055e 100644 --- a/src/engine/mobileAI/utilities/CombatUtilities.java +++ b/src/engine/mobileAI/utilities/CombatUtilities.java @@ -156,6 +156,8 @@ public class CombatUtilities { switch (target.getObjectType()) { case PlayerCharacter: PlayerCharacter pc = (PlayerCharacter)target; + if(pc.combatStats == null) + pc.combatStats = new PlayerCombatStats(pc); pc.combatStats.calculateDefense(); defense = pc.combatStats.defense; break; diff --git a/src/engine/objects/PlayerCombatStats.java b/src/engine/objects/PlayerCombatStats.java index 1bb178d1..3ad2006f 100644 --- a/src/engine/objects/PlayerCombatStats.java +++ b/src/engine/objects/PlayerCombatStats.java @@ -850,7 +850,7 @@ public class PlayerCombatStats { if(this.owner.charItemManager != null){ if(this.owner.charItemManager.getEquipped(7) != null){ for(String effID : this.owner.charItemManager.getEquipped(7).effects.keySet()) { - for (AbstractEffectModifier mod : this.owner.effects.get(effID).getEffectModifiers()) { + for (AbstractEffectModifier mod : this.owner.charItemManager.getEquipped(7).effects.get(effID).getEffectModifiers()) { if (mod.modType.equals(Enum.ModType.DCV)) { if (mod.getPercentMod() == 0) { float value = mod.getMinMod(); @@ -866,7 +866,7 @@ public class PlayerCombatStats { //left ring if(this.owner.charItemManager.getEquipped(8) != null){ for(String effID : this.owner.charItemManager.getEquipped(8).effects.keySet()) { - for (AbstractEffectModifier mod : this.owner.effects.get(effID).getEffectModifiers()) { + for (AbstractEffectModifier mod : this.owner.charItemManager.getEquipped(8).effects.get(effID).getEffectModifiers()) { if (mod.modType.equals(Enum.ModType.DCV)) { if (mod.getPercentMod() == 0) { float value = mod.getMinMod(); @@ -882,7 +882,7 @@ public class PlayerCombatStats { //necklace if(this.owner.charItemManager.getEquipped(9) != null){ for(String effID : this.owner.charItemManager.getEquipped(9).effects.keySet()) { - for (AbstractEffectModifier mod : this.owner.effects.get(effID).getEffectModifiers()) { + for (AbstractEffectModifier mod : this.owner.charItemManager.getEquipped(8).effects.get(effID).getEffectModifiers()) { if (mod.modType.equals(Enum.ModType.DCV)) { if (mod.getPercentMod() == 0) { float value = mod.getMinMod();