|
|
|
@ -261,6 +261,8 @@ public enum NPCManager {
@@ -261,6 +261,8 @@ public enum NPCManager {
|
|
|
|
|
//apply rogue bonuses
|
|
|
|
|
attackRatingModifier += 0.5f; |
|
|
|
|
defenseModifier += 0.5f; |
|
|
|
|
damageModifier += 0.5f; |
|
|
|
|
attackSpeedModifier -= 0.36f; |
|
|
|
|
}else { |
|
|
|
|
Integer contractID; |
|
|
|
|
if (guard.agentType.equals(Enum.AIAgentType.GUARDMINION)) { |
|
|
|
@ -292,29 +294,39 @@ public enum NPCManager {
@@ -292,29 +294,39 @@ public enum NPCManager {
|
|
|
|
|
|
|
|
|
|
public static void setDamageAndSpeedForGuard(Mob guard){ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
float rankModifier = 1 + (guard.getRank() * 0.1f); |
|
|
|
|
int primaryStat = 0; |
|
|
|
|
if(guard.equip == null) { |
|
|
|
|
guard.minDamageHandOne = (int)(guard.mobBase.getDamageMin()); |
|
|
|
|
guard.maxDamageHandOne = (int)(guard.mobBase.getDamageMax()); |
|
|
|
|
guard.minDamageHandOne = (int)((guard.mobBase.getDamageMin()) * rankModifier); |
|
|
|
|
guard.maxDamageHandOne = (int)((guard.mobBase.getDamageMax()) * rankModifier); |
|
|
|
|
guard.speedHandOne = 30.0f; |
|
|
|
|
}else{ |
|
|
|
|
if(guard.equip.containsKey(1)){ |
|
|
|
|
//has main hand weapon
|
|
|
|
|
ItemBase weapon = guard.equip.get(1).getItemBase(); |
|
|
|
|
guard.minDamageHandOne = (int)(guard.mobBase.getDamageMin() + weapon.getMinDamage()); |
|
|
|
|
guard.maxDamageHandOne = (int)(guard.mobBase.getDamageMax() + weapon.getMaxDamage()); |
|
|
|
|
if(weapon.isStrBased()) |
|
|
|
|
primaryStat = guard.getStatStrCurrent(); |
|
|
|
|
else |
|
|
|
|
primaryStat = guard.getStatDexCurrent(); |
|
|
|
|
guard.minDamageHandOne = (int)((guard.mobBase.getDamageMin() + weapon.getMinDamage()) * rankModifier) + primaryStat; |
|
|
|
|
guard.maxDamageHandOne = (int)((guard.mobBase.getDamageMax() + weapon.getMaxDamage()) * rankModifier) + primaryStat; |
|
|
|
|
guard.speedHandOne = weapon.getSpeed(); |
|
|
|
|
guard.rangeHandOne = weapon.getRange(); |
|
|
|
|
} else if(guard.equip.containsKey(2) && !guard.equip.get(2).getItemBase().isShield()){ |
|
|
|
|
//has off hand weapon
|
|
|
|
|
ItemBase weapon = guard.equip.get(2).getItemBase(); |
|
|
|
|
guard.minDamageHandTwo = (int)(guard.mobBase.getDamageMin() + weapon.getMinDamage()); |
|
|
|
|
guard.maxDamageHandTwo = (int)(guard.mobBase.getDamageMax() + weapon.getMaxDamage()); |
|
|
|
|
if(weapon.isStrBased()) |
|
|
|
|
primaryStat = guard.getStatStrCurrent(); |
|
|
|
|
else |
|
|
|
|
primaryStat = guard.getStatDexCurrent(); |
|
|
|
|
guard.minDamageHandTwo = (int)((guard.mobBase.getDamageMin() + weapon.getMinDamage()) * rankModifier) + primaryStat; |
|
|
|
|
guard.maxDamageHandTwo = (int)((guard.mobBase.getDamageMax() + weapon.getMaxDamage()) * rankModifier) + primaryStat; |
|
|
|
|
guard.speedHandTwo = weapon.getSpeed(); |
|
|
|
|
guard.rangeHandTwo = weapon.getRange(); |
|
|
|
|
} else { |
|
|
|
|
guard.minDamageHandOne = (int)(guard.mobBase.getDamageMin()); |
|
|
|
|
guard.maxDamageHandOne = (int)(guard.mobBase.getDamageMax()); |
|
|
|
|
primaryStat = guard.getStatStrCurrent(); |
|
|
|
|
guard.minDamageHandOne = (int)((guard.mobBase.getDamageMin()) * rankModifier) + primaryStat; |
|
|
|
|
guard.maxDamageHandOne = (int)((guard.mobBase.getDamageMax()) * rankModifier) + primaryStat; |
|
|
|
|
guard.speedHandOne = 30.0f; |
|
|
|
|
guard.rangeHandOne = 3; |
|
|
|
|
} |
|
|
|
|