/// <summary> /// Checks - outside /// </summary> /// <param name="change"></param> internal void Change(int change) { //population += change; ////throw new NotImplementedException(); ////because pool aren't implemented yet ////Pool.ReleaseObject(this); var newPopulation = population + change; if (newPopulation > 0) { population = newPopulation; lifeNeeds.Clear(); foreach (var item in pop.Type.getLifeNeedsPer1000Men()) { lifeNeeds.Add(item.Copy().Multiply(population / PopulationMultiplier)); } everydayNeeds.Clear(); foreach (var item in pop.Type.getEveryDayNeedsPer1000Men()) { everydayNeeds.Add(item.Copy().Multiply(population / PopulationMultiplier)); } luxuryNeeds.Clear(); foreach (var item in pop.Type.getLuxuryNeedsPer1000Men()) { luxuryNeeds.Add(item.Copy().Multiply(population / PopulationMultiplier)); } } else { pop.Kill(); } }