Beispiel #1
0
        void UpdateStats()
        {
            Stats = Type.Stats.Clone();
            foreach (var upgrade in Upgrades)
            {
                Stats.Combine(upgrade.Effect);
            }
            if (Deployed)
            {
                UnitStats terrainBonus = Combat.GetTerrainBonus(Hex.Terrain);
                Stats.Combine(terrainBonus);

                if (Entrenched)
                {
                    UnitStats entrenchmentBonus = new UnitStats();
                    entrenchmentBonus.SoftDefence        = 1;
                    entrenchmentBonus.HardDefence        = 1;
                    entrenchmentBonus.BombardmentDefence = 1;
                    Stats.Combine(entrenchmentBonus);
                }
            }
        }