Exemplo n.º 1
0
 public void RemoveFromTower(TowerUiData tower, IntVariable variable)
 {
     foreach (var modifiedCurrency in tower.ModifiedPrice.Where(p => p.Currency.Variable == variable))
     {
         modifiedCurrency.Amount.RemoveModifier(this);
     }
 }
Exemplo n.º 2
0
        public void AddToTower(TowerUiData tower, IntVariable variable)
        {
            if ((WhiteList.Count > 0 && !WhiteList.Contains(variable)) || BlackList.Contains(variable))
            {
                return;
            }

            foreach (var modifiedCurrency in tower.ModifiedPrice.Where(p => p.Currency.Variable == variable))
            {
                modifiedCurrency.Amount.AddModifier(this);
            }
        }
Exemplo n.º 3
0
        public void ImportModifiers(TowerUiData tower)
        {
            foreach (var modifier in _allModifiers)
            {
                switch (modifier)
                {
                case BaseTowerModifier towerModifier:
                    towerModifier.AddToTower(tower);
                    break;

                case TowerCostModifier towerCostModifier:
                    foreach (var price in tower.ModifiedPrice)
                    {
                        towerCostModifier.AddToTower(tower, price.Currency.Variable);
                    }
                    break;
                    // add more stuff
                }
            }
        }
Exemplo n.º 4
0
 public override void AddToTower(TowerUiData tower)
 {
     tower.NumberOfTargets.AddModifier(this);
 }
Exemplo n.º 5
0
 public override void RemoveFromTower(TowerUiData tower)
 {
     tower.NumberOfTargets.RemoveModifier(this);
 }
Exemplo n.º 6
0
 public override void AddToTower(TowerUiData tower)
 {
     tower.FiringSpeed.AddModifier(this);
 }
Exemplo n.º 7
0
 public override void RemoveFromTower(TowerUiData tower)
 {
     tower.FiringSpeed.RemoveModifier(this);
 }
Exemplo n.º 8
0
 public abstract void AddToTower(TowerUiData tower);
Exemplo n.º 9
0
 public abstract void RemoveFromTower(TowerUiData tower);
Exemplo n.º 10
0
 public override void AddToTower(TowerUiData tower)
 {
     tower.Range.AddModifier(this);
 }
Exemplo n.º 11
0
 public override void RemoveFromTower(TowerUiData tower)
 {
     tower.Range.RemoveModifier(this);
 }