public void FixedUpdate() { #endif #if DEBUG monitor.add("Trash"); #endif double now = Planetarium.GetUniversalTime(); #if DEBUG monitor.add("GetUniversalTime"); #endif CivPopRepository repo = GetRepository(); UpdateRepository(repo); #if DEBUG monitor.add("UpdateRepository"); #endif contractors.Update(now, repo); #if DEBUG monitor.add("contractors"); #endif death.Update(now, repo); #if DEBUG monitor.add("death"); #endif growth.Update(now, repo); #if DEBUG monitor.add("growth"); #endif if (HighLogic.CurrentGame.Mode == Game.Modes.CAREER) { rent.Update(now, repo); } #if DEBUG monitor.add("rent"); #endif Vessel vessel = FlightGlobals.ActiveVessel; if (vessel != null) { service.KillKerbals(repo, vessel); service.CreateKerbals(repo, vessel); } #if DEBUG monitor.add("Vessels"); #endif repoJSON = repo.ToJson(); #if DEBUG monitor.add("ToJson"); #endif }
public void run(int days) { now = 1; for (int today = 0; today <= days; today++) { now = today * TimeUnit.DAY + 1; growth.Update(now, repo); death.Update(now, repo); Console.WriteLine( (today / TimeUnit.DAYS_PER_YEARS) + "\t" + today + "\t" + repo.GetLivingRosterForVessel("vessel").Count() + "\t" + repo.GetLivingRosterForVessel("vessel").Where(k => k.GetGender() == CivPopKerbalGender.MALE).Count() + "\t" + repo.GetLivingRosterForVessel("vessel").Where(k => k.GetGender() == CivPopKerbalGender.FEMALE).Count() + "\t" + repo.GetLivingRosterForVessel("vessel").Where(kerbal => kerbal.GetExpectingBirthAt() > 0).Count() ); } }