Exemplo n.º 1
0
        public void Hire(Tile tile, Person person, ActivityType employmentType, IActivityTarget target)
        {
            person.ActivityType   = employmentType;
            person.ActivityTarget = target;

            AddWorkerToTarget(target, person);
        }
Exemplo n.º 2
0
        public void Fire(IActivityTarget target)
        {
            foreach (var person in target.People) {
                Fire (person);
            }

            if (target.People.Length > 0) {
                target.People = new Person[]{ };
            }
        }
Exemplo n.º 3
0
        public void Fire(IActivityTarget target)
        {
            foreach (var person in target.People)
            {
                Fire(person);
            }

            if (target.People.Length > 0)
            {
                target.People = new Person[] { };
            }
        }
Exemplo n.º 4
0
        public void AddWorkerToTarget(IActivityTarget target, Person person)
        {
            var people = new List<Person> ();

            people.AddRange (
                (from p in target.People
                where p.Id == person.Id
                    select p
                ).ToArray()
            );
            people.Add (person);
            target.People = people.ToArray ();
        }
Exemplo n.º 5
0
        public void AddWorkerToTarget(IActivityTarget target, Person person)
        {
            var people = new List <Person> ();

            people.AddRange(
                (from p in target.People
                 where p.Id == person.Id
                 select p
                ).ToArray()
                );
            people.Add(person);
            target.People = people.ToArray();
        }
Exemplo n.º 6
0
 public int Hire(Tile tile, int numberOfWorkersToHire, ActivityType employmentType, IActivityTarget target)
 {
     if (numberOfWorkersToHire > tile.TotalInactive)
         return 0;
     else {
         //tile.Workers += numberOfWorkersToHire;
         int numberOfWorkersHired = 0;
         foreach (var person in tile.People) {
             if (person.CanWork && !person.IsActive
                 && numberOfWorkersHired < numberOfWorkersToHire) {
                 Hire (tile, person, employmentType, target);
                 numberOfWorkersHired++;
             }
         }
         return numberOfWorkersHired;
     }
 }
Exemplo n.º 7
0
        public void Hire(Tile tile, Person person, ActivityType employmentType, IActivityTarget target)
        {
            person.ActivityType = employmentType;
            person.ActivityTarget = target;

            AddWorkerToTarget (target, person);
        }
Exemplo n.º 8
0
 public int Hire(Tile tile, int numberOfWorkersToHire, ActivityType employmentType, IActivityTarget target)
 {
     if (numberOfWorkersToHire > tile.TotalInactive)
     {
         return(0);
     }
     else
     {
         //tile.Workers += numberOfWorkersToHire;
         int numberOfWorkersHired = 0;
         foreach (var person in tile.People)
         {
             if (person.CanWork && !person.IsActive &&
                 numberOfWorkersHired < numberOfWorkersToHire)
             {
                 Hire(tile, person, employmentType, target);
                 numberOfWorkersHired++;
             }
         }
         return(numberOfWorkersHired);
     }
 }