public static int CalculateAttackCost(Gang attackerGang, GangWarManager.AttackStrength attackType)
        {
            int attackTypeInt         = (int)attackType;
            int pow2NonZeroAttackType = (attackTypeInt * attackTypeInt + 1);

            return(ModOptions.instance.baseCostToTakeTurf + ModOptions.instance.baseCostToTakeTurf * attackTypeInt * attackTypeInt * attackTypeInt +
                   attackerGang.GetFixedStrengthValue() * pow2NonZeroAttackType);
        }
 /// <summary>
 /// gets the reinforcement count for the defenders and estimates a total power based on that number and
 /// the gang's fixed strength value
 /// </summary>
 /// <param name="defenderGang"></param>
 /// <param name="contestedZone"></param>
 /// <returns></returns>
 public static int CalculateDefenderStrength(Gang defenderGang, TurfZone contestedZone)
 {
     return(defenderGang.GetFixedStrengthValue() *
            CalculateDefenderReinforcements(defenderGang, contestedZone));
 }
 /// <summary>
 /// gets the reinforcement count for the attackers and estimates a total power based on that number and
 /// the gang's fixed strength value
 /// </summary>
 /// <param name="defenderGang"></param>
 /// <param name="contestedZone"></param>
 /// <returns></returns>
 public static int CalculateAttackerStrength(Gang attackerGang, GangWarManager.AttackStrength attackType)
 {
     return(attackerGang.GetFixedStrengthValue() *
            CalculateAttackerReinforcements(attackerGang, attackType));
 }