void upgrade_OnMouseRelease(object sender, Operation_Cronos.Input.MouseEventArgs e) { int price = GetUpgradeCost(); if (GameManager.GetMoney(GameManager.CurrentYear) >= price) { GameManager.SpendMoney(GameManager.CurrentYear, price); GameInterface.SetMoney(GameManager.GetMoney(GameManager.CurrentYear)); //do upgrade if (selectedConstruction.ConstructionType != ConstructionType.Population) { selectedConstruction.SelectConstruction = false; selectedConstruction.UpgradeYear = GameManager.CurrentYear; selectedConstruction.Slot.Upgrade(GameManager.CurrentYear); GameMap.RefreshBuilding(selectedConstruction.Slot); GameMap.Upgrade(selectedConstruction.Slot, GameManager.CurrentYear); } else { selectedConstruction.Slot.ShortenReservation(GameManager.CurrentYear); GameMap.RefreshBuilding(selectedConstruction.Slot); switch (selectedConstruction.ConstructionName) { case Construction.PopulationVillage: GameMap.UpgradePopulationConstruction(selectedConstruction.Slot, Construction.PopulationTown); break; case Construction.PopulationTown: GameMap.UpgradePopulationConstruction(selectedConstruction.Slot, Construction.PopulationCity); break; case Construction.PopulationCity: GameMap.UpgradePopulationConstruction(selectedConstruction.Slot, Construction.PopulationMetropolis); ; break; } GameMap.RefreshBuilding(selectedConstruction.Slot); int year = GameManager.CurrentYear; GameManager.UpdateYear(year); Close(); } } else { //Debug.AddToLog("Not enough cashcaval"); textUpgradeCost.Text = "Can not afford to upgrade"; textUpgradeCost.Tint = Color.Red; } }
void close_OnMouseRelease(object sender, Operation_Cronos.Input.MouseEventArgs e) { if (selectedConstruction.ConstructionType == ConstructionType.Education || selectedConstruction.ConstructionType == ConstructionType.Health || selectedConstruction.ConstructionType == ConstructionType.Population || selectedConstruction.ConstructionType == ConstructionType.Energy) SoundManager.StopSound((Sounds)Enum.Parse(typeof(Sounds), selectedConstruction.ConstructionType.ToString())); else SoundManager.StopSound((Sounds)Enum.Parse(typeof(Sounds), selectedConstruction.ConstructionName.ToString())); selectedConstruction.SelectConstruction = false; this.IsVisible = false; this.Enabled = false; }
void destroy_OnMouseRelease(object sender, Operation_Cronos.Input.MouseEventArgs e) { selectedConstruction.SelectConstruction = false; if (selectedConstruction.Slot.GetReservation(GameManager.CurrentYear).Status(GameManager.CurrentYear) == ConstructionStatus.InConstruction) { GameMap.UndoBuild(GameManager.CurrentYear, selectedConstruction.Slot); selectedConstruction.Slot.UndoReservation(GameManager.CurrentYear); } else selectedConstruction.Slot.ShortenReservation(GameManager.CurrentYear); GameMap.RefreshBuilding(selectedConstruction.Slot); int year = GameManager.CurrentYear; GameManager.UpdateYear(year); Close(); }
void repair_OnMouseRelease(object sender, Operation_Cronos.Input.MouseEventArgs e) { int price = GetRepairCost(); //GameManager.BuildingProperties.BuildingBaseProperties(selectedConstruction.ConstructionName, selectedConstruction.ConstructionYear, selectedConstruction.UpgradeYear, GameManager.CurrentYear).Price; if (GameManager.GetMoney(GameManager.CurrentYear) >= price) { GameManager.SpendMoney(GameManager.CurrentYear, price); GameInterface.SetMoney(GameManager.GetMoney(GameManager.CurrentYear)); //do repair BuildingsBaseProperties properties = new BuildingsBaseProperties(); selectedConstruction.SelectConstruction = false; selectedConstruction.Slot.ProlongReservation(GameManager.CurrentYear); selectedConstruction.ConstructionLifetime = (GameManager.CurrentYear - selectedConstruction.ConstructionYear) + properties.BuildingBaseProperties(selectedConstruction.ConstructionName, selectedConstruction.ConstructionYear, selectedConstruction.UpgradeYear, GameManager.CurrentYear).Lifetime; GameMap.RefreshBuilding(selectedConstruction.Slot); Close(); int year = GameManager.CurrentYear; GameManager.UpdateYear(year); } else { //Debug.AddToLog("Not enough cashcaval"); textRepairCost.Text = "Can not afford to repair"; textRepairCost.Tint = Color.Red; } }
void upArrow_OnMousePress(object sender, Operation_Cronos.Input.MouseEventArgs e) { if (e.Button == Operation_Cronos.Input.MouseButton.LeftButton) { OnYearIncreased(this, e); } }
void minimize_OnMousePress(object sender, Operation_Cronos.Input.MouseEventArgs e) { OnMinimize(this, new EventArgs()); SoundManager.PlaySound(Sounds.SlidingSoundLong); }
void close_OnMousePress(object sender, Operation_Cronos.Input.MouseEventArgs e) { this.IsVisible = false; this.Enabled = false; }
void minimize_OnMousePress(object sender, Operation_Cronos.Input.MouseEventArgs e) { if (parameters.IsOpen) { parameters.SlideIn(); SoundManager.PlaySound(Sounds.SlidingSoundShort); } else { parameters.SlideOut(); SoundManager.PlaySound(Sounds.SlidingSoundShort); } }
void GameMap_OnMouseRelease(object sender, Operation_Cronos.Input.MouseEventArgs e) { if (selectedObject != null) { Debug.AddToLog("Selected object: " + selectedObject.ToString()); } ClearSelection(); }
void TimeBar_OnMouseMove(object sender, Operation_Cronos.Input.MouseEventArgs e) { int relativeMouseX = e.ScreenPosition.X - this.X; if (draggable != null) { if (relativeMouseX - draggable.MousePositionInside.X > TimeBar.LeftSlideLimit && relativeMouseX - draggable.MousePositionInside.X < TimeBar.RightSlideLimit) { ((InputVisualComponent)draggable).XRelative = relativeMouseX - draggable.MousePositionInside.X; } else { if (relativeMouseX - draggable.MousePositionInside.X < TimeBar.LeftSlideLimit) { ((InputVisualComponent)draggable).XRelative = TimeBar.LeftSlideLimit; } else { if (relativeMouseX - draggable.MousePositionInside.X > TimeBar.RightSlideLimit) { ((InputVisualComponent)draggable).XRelative = TimeBar.RightSlideLimit; } } } fraction = ((float)slider.XRelative - LeftSlideLimit) / (float)Length; Year = startYear + (int)((float)(endYear - startYear) * fraction); } }
void icon_OnMousePress(object sender, Operation_Cronos.Input.MouseEventArgs e) { ControlPanelButton icon = (ControlPanelButton)sender; Refresh((Research)icon.Data); }