//verifies to make sure sub-budgets don't exceed master budget public static void VerifyValues(AirlineBudget budget) { long userMarketingBudget = budget.RadioBudget + budget.TelevisionBudget + budget.PrintBudget + budget.InternetBudget; if (userMarketingBudget > budget.MarketingBudget) { budget.RadioBudget = budget.TelevisionBudget = budget.PrintBudget = budget.InternetBudget = budget.MarketingBudget / 4; } long userMaintBudget = budget.PartsBudget + budget.EnginesBudget + budget.OverhaulBudget + budget.RemoteBudget; if (userMaintBudget > budget.MaintenanceBudget) { budget.PartsBudget = budget.EnginesBudget = budget.OverhaulBudget = budget.RemoteBudget = budget.MaintenanceBudget / 4; } long userCSBudget = budget.ServCenterBudget + budget.CompBudget + budget.PromoBudget + budget.PRBudget; if (userCSBudget > budget.CSBudget) { budget.ServCenterBudget = budget.CompBudget = budget.PromoBudget = budget.PRBudget = budget.CSBudget / 4; } long userSecurityBudget = budget.AirportBudget + budget.EquipmentBudget + budget.InFlightBudget + budget.ITBudget; if (userSecurityBudget > budget.SecurityBudget) { budget.AirportBudget = budget.EquipmentBudget = budget.InFlightBudget = budget.ITBudget = budget.SecurityBudget / 4; } }
//sets initial overview panel private void SetOverviewPanel(Airline humanAirline, int n) { IDictionary <DateTime, AirlineBudget> testBudget = GameObject.GetInstance().HumanAirline.TestBudget; AirlineBudget budget = BudgetHelpers.GetOneYearBudget(GameObject.GetInstance().GameTime, n); intFleetSizeValue.Text = humanAirline.getFleetSize().ToString(); intFleetSizeValue1.Text = budget.FleetSize.ToString(); mCashValue.Text = humanAirline.Money.ToString("C0"); mCashValue1.Text = budget.Cash.ToString("C0"); mBudgetValue.Text = BudgetHelpers.SetDefaults(humanAirline).ToString("C0"); mBudgetValue1.Text = budget.TotalBudget.ToString("C0"); mrBudgetValue.Text = BudgetHelpers.GetRemainingBudget().ToString("C0"); mrBudgetValue1.Text = budget.RemainingBudget.ToString("C0"); //the *0.15 is arbitrary padding meoyCashValue.Text = (humanAirline.Money - BudgetHelpers.GetRemainingBudget() - (humanAirline.Budget.TotalBudget * 0.15)).ToString("C0"); meoyCashValue1.Text = budget.EndYearCash.ToString("C0"); mAvgAirlinerValue.Text = BudgetHelpers.GetAvgFleetValue().ToString("C0"); mAvgAirlinerValue1.Text = (budget.FleetValue / budget.FleetSize).ToString("C0"); mTotalFleetValue.Text = BudgetHelpers.GetFleetValue().ToString("C0"); mTotalFleetValue1.Text = budget.FleetValue.ToString("C0"); intTotalEmployees.Text = GameObject.GetInstance().HumanAirline.getNumberOfEmployees().ToString(); intTotalEmployees1.Text = budget.TotalEmployees.ToString(); mTotalPayroll.Text = (AirlineHelpers.GetMonthlyPayroll(GameObject.GetInstance().HumanAirline) * 12).ToString("C0"); mTotalPayroll1.Text = budget.TotalPayroll.ToString("C0"); intSubsValue.Text = GameObject.GetInstance().HumanAirline.Subsidiaries.Count().ToString("C0"); intSubsValue1.Text = budget.TotalSubValue.ToString("C0"); mAvgSubsValue.Text = BudgetHelpers.GetAvgSubValue(humanAirline).ToString("C0"); mAvgAirlinerValue1.Text = (budget.TotalSubValue / budget.Subsidiaries).ToString("C0"); //mTotalSubsValue.Text = BudgetHelpers.GetTotalSubValues(humanAirline).ToString("C0"); }
//returns the budget from 1 year ago public static AirlineBudget GetOneYearBudget(DateTime date, int n) { Airline humanAirline = GameObject.GetInstance().HumanAirline; if (GameObject.GetInstance().StartDate > GameObject.GetInstance().GameTime.AddMonths(-12)) { AirlineBudget oldBudget = (from d in humanAirline.TestBudget where (d.Key.Month == date.Month) && (d.Key.Year == (date.Year - n)) select d.Value).FirstOrDefault(); return(oldBudget); } else { return(humanAirline.Budget); } }
//returns a bogus budget for testing public static IDictionary <DateTime, AirlineBudget> GetTestBudget(Airline airline) { AirlineBudget budget = GameObject.GetInstance().HumanAirline.Budget; Random random = new Random(); for (int i = 1; i < 61; i++) { budget.BudgetActive = GameObject.GetInstance().GameTime.AddMonths(-1); budget.BudgetExpires = GameObject.GetInstance().GameTime.AddMonths(-1 + 12); budget.Cash = random.Next(1, 100000000); budget.AirportBudget = random.Next(1, 500000); budget.CompBudget = random.Next(1, 500000); budget.CSBudget = random.Next(1, 2000000); budget.EndYearCash = random.Next(1, 100000000); budget.EnginesBudget = random.Next(1, 1000000); budget.EquipmentBudget = random.Next(1, 500000); budget.FleetSize = random.Next(1, 250); budget.FleetValue = random.Next(10, 10000); budget.InFlightBudget = random.Next(1, 500000); budget.InternetBudget = random.Next(1, 500000); budget.ITBudget = random.Next(1, 500000); budget.MaintenanceBudget = random.Next(1, 4000000); budget.MarketingBudget = random.Next(1, 2000000); budget.OverhaulBudget = random.Next(1, 1000000); budget.PartsBudget = random.Next(1, 1000000); budget.PRBudget = random.Next(1, 500000); budget.PrintBudget = random.Next(1, 500000); budget.PromoBudget = random.Next(1, 500000); budget.RadioBudget = random.Next(1, 500000); budget.RemainingBudget = random.Next(1, 10000000); budget.RemoteBudget = random.Next(1, 1000000); budget.SecurityBudget = random.Next(1, 2000000); budget.ServCenterBudget = random.Next(1, 500000); budget.Subsidiaries = random.Next(0, 4); budget.TelevisionBudget = random.Next(1, 500000); budget.TotalBudget = random.Next(4, 10000000); budget.TotalEmployees = random.Next(1, 10000); budget.TotalPayroll = random.Next(500000, 10000000); budget.TotalSubValue = random.Next(200000000, 1000000000); if (airline.TestBudget.ContainsKey(budget.BudgetActive.AddMonths(-1))) { } else { airline.TestBudget.Add(budget.BudgetActive.AddMonths(-1), budget); } } return(airline.TestBudget); }