public void Hire(Tile tile, Person person, ActivityType employmentType, IActivityTarget target) { person.ActivityType = employmentType; person.ActivityTarget = target; AddWorkerToTarget(target, person); }
public void Fire(IActivityTarget target) { foreach (var person in target.People) { Fire (person); } if (target.People.Length > 0) { target.People = new Person[]{ }; } }
public void Fire(IActivityTarget target) { foreach (var person in target.People) { Fire(person); } if (target.People.Length > 0) { target.People = new Person[] { }; } }
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 (); }
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(); }
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; } }
public void Hire(Tile tile, Person person, ActivityType employmentType, IActivityTarget target) { person.ActivityType = employmentType; person.ActivityTarget = target; AddWorkerToTarget (target, person); }
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); } }