|
|
@ -276,14 +276,17 @@ public enum NPCManager { |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
public static void applyGuardStanceModifiers(Mob guard){ |
|
|
|
public static void setDamageAndSpeedForGuard(Mob guard){ |
|
|
|
float damageModifier = 1; |
|
|
|
|
|
|
|
float attackRatingModifier = 1; |
|
|
|
//handle stance for guard mob
|
|
|
|
float defenseModifier = 1; |
|
|
|
String stancePowerName = ""; |
|
|
|
float attackSpeedModifier = 1; |
|
|
|
|
|
|
|
float powerDamageModifier = 1; |
|
|
|
|
|
|
|
//handle stance modifiers for guard mob
|
|
|
|
if(guard.agentType.equals(Enum.AIAgentType.GUARDWALLARCHER)){ |
|
|
|
if(guard.agentType.equals(Enum.AIAgentType.GUARDWALLARCHER)){ |
|
|
|
//apply rogue offensive stance
|
|
|
|
//apply rogue bonuses
|
|
|
|
stancePowerName = "STC-R-O"; |
|
|
|
attackRatingModifier += 0.5f; |
|
|
|
|
|
|
|
defenseModifier += 0.5f; |
|
|
|
}else { |
|
|
|
}else { |
|
|
|
Integer contractID; |
|
|
|
Integer contractID; |
|
|
|
if (guard.agentType.equals(Enum.AIAgentType.GUARDMINION)) { |
|
|
|
if (guard.agentType.equals(Enum.AIAgentType.GUARDMINION)) { |
|
|
@ -293,16 +296,27 @@ public enum NPCManager { |
|
|
|
} |
|
|
|
} |
|
|
|
if (Enum.MinionType.ContractToMinionMap.get(contractID) != null && Enum.MinionType.ContractToMinionMap.get(contractID).isMage()){ |
|
|
|
if (Enum.MinionType.ContractToMinionMap.get(contractID) != null && Enum.MinionType.ContractToMinionMap.get(contractID).isMage()){ |
|
|
|
//apply mage offensive Stance
|
|
|
|
//apply mage offensive Stance
|
|
|
|
stancePowerName = "STC-M-O"; |
|
|
|
powerDamageModifier += 0.5f; |
|
|
|
} else{ |
|
|
|
} else{ |
|
|
|
//apply fighter offensive stance
|
|
|
|
//apply fighter offensive stance
|
|
|
|
stancePowerName = "STC-F-O"; |
|
|
|
damageModifier += 0.5f; |
|
|
|
|
|
|
|
attackSpeedModifier -= 0.36f; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
guard.minDamageHandOne *= damageModifier; |
|
|
|
|
|
|
|
guard.minDamageHandTwo *= damageModifier; |
|
|
|
|
|
|
|
guard.maxDamageHandOne *= damageModifier; |
|
|
|
|
|
|
|
guard.maxDamageHandTwo *= damageModifier; |
|
|
|
|
|
|
|
guard.atrHandOne *= attackRatingModifier; |
|
|
|
|
|
|
|
guard.atrHandTwo *= attackRatingModifier; |
|
|
|
|
|
|
|
guard.defenseRating *= defenseModifier; |
|
|
|
|
|
|
|
guard.speedHandOne *= attackSpeedModifier; |
|
|
|
|
|
|
|
guard.speedHandTwo *= attackSpeedModifier; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//TODO figure out how to apply +50% powerdamage to mage guards
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
public static void setDamageAndSpeedForGuard(Mob guard){ |
|
|
|
|
|
|
|
|
|
|
|
int stancePowerRank = MobAI.getGuardPowerRank(guard); |
|
|
|
|
|
|
|
PowersBase stancePower = PowersManager.getPowerByIDString(stancePowerName); |
|
|
|
|
|
|
|
PowersManager.useMobPower(guard,guard,stancePower,stancePowerRank); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if(guard.equip == null) { |
|
|
|
if(guard.equip == null) { |
|
|
|
guard.minDamageHandOne = (int)(guard.mobBase.getDamageMin()); |
|
|
|
guard.minDamageHandOne = (int)(guard.mobBase.getDamageMin()); |
|
|
|