protected override void PrivatePerformAction(bool prompt) { try { Overwatch.Log("Kill All Homeless"); if ((!prompt) || (AcceptCancelDialog.Show(Common.Localize("KillAllHomeless:Prompt")))) { List <Household> list = new List <Household>(); int iSimCount = 0; foreach (Household household in Household.sHouseholdList) { if (household.IsSpecialHousehold) { continue; } if (household.InWorld) { continue; } if (Households.IsPassport(household)) { continue; } if (Households.IsRole(household)) { continue; } if (Households.IsLunarCycleZombie(household)) { continue; } if (Households.IsActiveDaycare(household)) { continue; } iSimCount += Households.NumSims(household); list.Add(household); } foreach (Household household in list) { Annihilation.Cleanse(household); } if (iSimCount > 0) { Overwatch.AlarmNotify(Common.Localize("KillAllHomeless:Success", false, new object[] { iSimCount })); } } } catch (Exception exception) { Common.Exception(Name, exception); } }