Example #1
0
 public void LostVillager(int amount, string[] names = null, bool leftNotKilled = false)
 {
     AddLoss(Resources.Type.PERSON, amount);
     if (names != null)
     {
         for (int i = 0; i < names.Length; ++i)
         {
             NamedEntry name = new NamedEntry();
             name.type  = NamedLossType.PERSON;
             name.name  = names[i];
             name.count = leftNotKilled ? 1 : -1;
             namedLoss.Add(name);
         }
     }
     else
     {
         for (int i = 0; i < amount; ++i)
         {
             NamedEntry name = new NamedEntry();
             name.type  = NamedLossType.PERSON;
             name.name  = MesopotamianGenerator.instance.GetMesopotamian().mesopoNAMEian;
             name.count = leftNotKilled ? 1 : -1;
             namedLoss.Add(name);
         }
     }
 }
Example #2
0
    public void LostTile(string tileName, int amount = 1)
    {
        for (int i = 0; i < namedLoss.Count; ++i)
        {
            if (namedLoss[i].type == NamedLossType.TILE && namedLoss[i].name == tileName)
            {
                // if it exists increase it's (negative) magnitude:
                NamedEntry entry = namedLoss[i];
                entry.count -= amount;
                namedLoss[i] = entry;
                return;
            }
        }

        // otherwise add it:
        NamedEntry e;

        e.type  = NamedLossType.TILE;
        e.name  = tileName;
        e.count = -amount;
        namedLoss.Add(e);
    }