|
|
@ -544,7 +544,7 @@ public class PlayerCombatStats { |
|
|
|
} |
|
|
|
} |
|
|
|
for(String armorUsed : armorsUsed){ |
|
|
|
for(String armorUsed : armorsUsed){ |
|
|
|
if(this.owner.skills.containsKey(armorUsed)) { |
|
|
|
if(this.owner.skills.containsKey(armorUsed)) { |
|
|
|
armorSkill += this.owner.skills.get(armorUsed).getTotalSkillPercet();//calculateBuffedSkillLevel(armorUsed,this.owner);
|
|
|
|
armorSkill += this.owner.skills.get(armorUsed).getModifiedAmount();//calculateBuffedSkillLevel(armorUsed,this.owner);
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
if(armorsUsed.size() > 0) |
|
|
|
if(armorsUsed.size() > 0) |
|
|
@ -552,7 +552,7 @@ public class PlayerCombatStats { |
|
|
|
|
|
|
|
|
|
|
|
float blockSkill = 0.0f; |
|
|
|
float blockSkill = 0.0f; |
|
|
|
if(this.owner.skills.containsKey("Block")) |
|
|
|
if(this.owner.skills.containsKey("Block")) |
|
|
|
blockSkill = calculateBuffedSkillLevel("Block",this.owner); |
|
|
|
blockSkill = this.owner.skills.get("Block").getModifiedAmount(); |
|
|
|
|
|
|
|
|
|
|
|
float shieldDefense = 0.0f; |
|
|
|
float shieldDefense = 0.0f; |
|
|
|
if(this.owner.charItemManager.getEquipped(2) != null && this.owner.charItemManager.getEquipped(2).getItemBase().isShield()){ |
|
|
|
if(this.owner.charItemManager.getEquipped(2) != null && this.owner.charItemManager.getEquipped(2).getItemBase().isShield()){ |
|
|
@ -584,17 +584,19 @@ public class PlayerCombatStats { |
|
|
|
masteryName = weapon.getItemBase().getMastery(); |
|
|
|
masteryName = weapon.getItemBase().getMastery(); |
|
|
|
} |
|
|
|
} |
|
|
|
if(this.owner.skills.containsKey(skillName)) |
|
|
|
if(this.owner.skills.containsKey(skillName)) |
|
|
|
weaponSkill = this.owner.skills.get(skillName).getTotalSkillPercet();//calculateBuffedSkillLevel(skillName,this.owner);//this.owner.skills.get(skillName).getModifiedAmount();//calculateModifiedSkill(skillName,this.owner);//this.owner.skills.get(skillName).getModifiedAmount();
|
|
|
|
weaponSkill = this.owner.skills.get(skillName).getModifiedAmount();//calculateBuffedSkillLevel(skillName,this.owner);//this.owner.skills.get(skillName).getModifiedAmount();//calculateModifiedSkill(skillName,this.owner);//this.owner.skills.get(skillName).getModifiedAmount();
|
|
|
|
|
|
|
|
|
|
|
|
if(this.owner.skills.containsKey(masteryName)) |
|
|
|
if(this.owner.skills.containsKey(masteryName)) |
|
|
|
masterySkill = this.owner.skills.get(masteryName).getTotalSkillPercet();//calculateBuffedSkillLevel(masteryName,this.owner);//this.owner.skills.get(masteryName).getModifiedAmount();//calculateModifiedSkill(masteryName,this.owner);//this.owner.skills.get(masteryName).getModifiedAmount();
|
|
|
|
masterySkill = this.owner.skills.get(masteryName).getModifiedAmount();//calculateBuffedSkillLevel(masteryName,this.owner);//this.owner.skills.get(masteryName).getModifiedAmount();//calculateModifiedSkill(masteryName,this.owner);//this.owner.skills.get(masteryName).getModifiedAmount();
|
|
|
|
|
|
|
|
|
|
|
|
float dexterity = getDexAfterPenalty(this.owner); |
|
|
|
float dexterity = this.owner.statDexCurrent;//getDexAfterPenalty(this.owner);
|
|
|
|
|
|
|
|
|
|
|
|
float luckyRune = 1.0f; |
|
|
|
float luckyRune = 1.0f; |
|
|
|
for(CharacterRune rune : this.owner.runes){ |
|
|
|
for(CharacterRune rune : this.owner.runes){ |
|
|
|
if(rune.getRuneBase().getName().equals("Lucky")) |
|
|
|
if(rune.getRuneBase().getName().equals("Lucky")) { |
|
|
|
luckyRune += 0.05f; |
|
|
|
luckyRune += 0.05f; |
|
|
|
|
|
|
|
break; |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
float flatBonuses = 0.0f; |
|
|
|
float flatBonuses = 0.0f; |
|
|
@ -612,10 +614,12 @@ public class PlayerCombatStats { |
|
|
|
} else { |
|
|
|
} else { |
|
|
|
for (AbstractEffectModifier mod : this.owner.effects.get(effID).getEffectModifiers()) { |
|
|
|
for (AbstractEffectModifier mod : this.owner.effects.get(effID).getEffectModifiers()) { |
|
|
|
if (mod.modType.equals(Enum.ModType.DCV)) { |
|
|
|
if (mod.modType.equals(Enum.ModType.DCV)) { |
|
|
|
float value = mod.getMinMod(); |
|
|
|
if(mod.getPercentMod() != 0) { |
|
|
|
int trains = this.owner.effects.get(effID).getTrains(); |
|
|
|
float value = mod.getMinMod(); |
|
|
|
float modValue = value + (trains * mod.getRamp()); |
|
|
|
int trains = this.owner.effects.get(effID).getTrains(); |
|
|
|
flatBonuses += modValue; |
|
|
|
float modValue = value + (trains * mod.getRamp()); |
|
|
|
|
|
|
|
flatBonuses += modValue; |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
@ -638,6 +642,13 @@ public class PlayerCombatStats { |
|
|
|
defense *= luckyRune; |
|
|
|
defense *= luckyRune; |
|
|
|
defense *= stanceMod; |
|
|
|
defense *= stanceMod; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if(this.owner.bonuses != null) { |
|
|
|
|
|
|
|
float percentBonuses = this.owner.bonuses.getFloatPercentPositive(Enum.ModType.DCV, Enum.SourceType.None); |
|
|
|
|
|
|
|
percentBonuses -= this.owner.bonuses.getFloatPercentNegative(Enum.ModType.DCV, Enum.SourceType.None); |
|
|
|
|
|
|
|
percentBonuses -= luckyRune - 1; |
|
|
|
|
|
|
|
percentBonuses -= stanceMod - 1; |
|
|
|
|
|
|
|
defense *= 1 + percentBonuses; |
|
|
|
|
|
|
|
} |
|
|
|
defense = Math.round(defense); |
|
|
|
defense = Math.round(defense); |
|
|
|
|
|
|
|
|
|
|
|
this.defense = (int) defense; |
|
|
|
this.defense = (int) defense; |
|
|
@ -647,7 +658,7 @@ public class PlayerCombatStats { |
|
|
|
if(pc.charItemManager == null) |
|
|
|
if(pc.charItemManager == null) |
|
|
|
return pc.statDexCurrent; |
|
|
|
return pc.statDexCurrent; |
|
|
|
|
|
|
|
|
|
|
|
float dex = pc.statDexBase; |
|
|
|
float dex = pc.statDexCurrent; |
|
|
|
if(pc.bonuses != null) |
|
|
|
if(pc.bonuses != null) |
|
|
|
dex += pc.bonuses.getFloat(Enum.ModType.Attr, Enum.SourceType.Dexterity); |
|
|
|
dex += pc.bonuses.getFloat(Enum.ModType.Attr, Enum.SourceType.Dexterity); |
|
|
|
|
|
|
|
|
|
|
|