private void PlayerSquadInstance_OnFormationChanged(FormationStats formation) { var d = formation.GetDescription(); d.Icon = FormationButton.Instance.GetIcon(formation.FORMATION); formationInd.Present(d.Icon, d); }
private void PlayerSquadInstance_OnFormationChanged(FormationStats formation) { StartCoroutine(Tools.Others.Cooldown( formation.COOLDOWN, StartCooldown, EndCooldown, cooldownText )); }
void Squad_OnFormationChanged(FormationStats value) { Formation = value.FORMATION; if (group != null) { if (value.FORMATION == FormationStats.Formations.PHALANX) { group.enabled = false; } else { group.enabled = true; } } }
void OnFormationChanged(FormationStats formation) { OnEquipmentChanged(null); }
private void Squad_OnFormationChanged(FormationStats obj) { Present(); }
public static UnitStats CalcStats(UnitStats baseStats, EquipmentStats[] equipmentStats, FormationStats formationStats) { int i; float k; int equipCnt = equipmentStats.Length; for (i = 0; i < equipCnt; i++) { baseStats.equipmentMass += equipmentStats[i].Mass; } k = 1; for (i = 0; i < equipCnt; i++) { k += equipmentStats[i].AddAttack; } baseStats.attack *= k * (1 + formationStats.UNIT_ADDITIONAL_ATTACK); baseStats.attack = baseStats.attack > MAX_ATTACK ? MAX_ATTACK : baseStats.attack; k = 1; for (i = 0; i < equipCnt; i++) { k += equipmentStats[i].AddDefence; } baseStats.defence *= k * (1 + formationStats.UNIT_ADDITIONAL_DEFENCE); baseStats.defence = baseStats.defence > MAX_DEFENCE ? MAX_DEFENCE : baseStats.defence; for (i = 0; i < equipCnt; i++) { //if(equipmentStats[i].Type != EquipmentStats.TypeOfEquipment.SHIELD) baseStats.armour += equipmentStats[i].Armour; } float t = 0; float st = 0; for (i = 0; i < equipCnt; i++) { if (equipmentStats[i].Type != EquipmentStats.TypeOfEquipment.SHIELD) { t += equipmentStats[i].MissileBlock; } else { st = equipmentStats[i].MissileBlock; } } if (formationStats.FORMATION != FormationStats.Formations.RISEDSHIELDS) { st *= 0.5f; } baseStats.missileBlock += t + st; float armDmg = 0, baseDmg = 0; for (i = 0; i < equipCnt; i++) { armDmg += equipmentStats[i].Damag.ArmourDamage; baseDmg += equipmentStats[i].Damag.BaseDamage; } baseStats.damage = new Damage( (baseStats.damage.BaseDamage + baseDmg) * (1 + formationStats.UNIT_ADDITIONAL_DAMAGE), baseStats.damage.ArmourDamage + armDmg ); for (i = 0; i < equipCnt; i++) { if (equipmentStats[i].Type == EquipmentStats.TypeOfEquipment.WEAPON) { if (!equipmentStats[i].CanReformToPhalanxInFight && formationStats.FORMATION != FormationStats.Formations.PHALANX) { baseStats.attackDistance += 1; } else { baseStats.attackDistance += equipmentStats[i].AttackDistance; } } } k = 1; for (i = 0; i < equipCnt; i++) { k += equipmentStats[i].AddDefenceHalfSector; } baseStats.defenceHalfSector *= k * (1 + formationStats.UNIT_ADDITIONAL_DEFENCE_SECTOR); k = 1; for (i = 0; i < equipCnt; i++) { k += equipmentStats[i].AddSpeed; } baseStats.speed *= k * (1 + formationStats.UNIT_ADDITIONAL_SPEED); k = 1; for (i = 0; i < equipCnt; i++) { k += equipmentStats[i].AddAcceleretion; } baseStats.acceleration *= k; k = 1; for (i = 0; i < equipCnt; i++) { k += equipmentStats[i].AddRotationSpeed; } baseStats.rotationSpeed *= k * (1 + formationStats.UNIT_ADDITIONAL_ROTATION_SPEED); for (i = 0; i < equipCnt; i++) { if (!(equipmentStats[i].Type == EquipmentStats.TypeOfEquipment.SHIELD && formationStats.FORMATION == FormationStats.Formations.RISEDSHIELDS)) { baseStats.chargeImpact += equipmentStats[i].ChargeImpact; } } baseStats.chargeDeflect += formationStats.UNIT_CHARGE_IMPACT; for (i = 0; i < equipCnt; i++) { if (!(equipmentStats[i].Type == EquipmentStats.TypeOfEquipment.SHIELD && formationStats.FORMATION == FormationStats.Formations.RISEDSHIELDS)) { baseStats.chargeDeflect += equipmentStats[i].ChargeDeflect; } } baseStats.chargeDeflect += formationStats.UNIT_CHARGE_DEFLECT; k = 1; for (i = 0; i < equipCnt; i++) { k += equipmentStats[i].AddChargeDamage; } baseStats.unitChargeAddDamage *= k; return(baseStats); }