private void buildButton_Click(object sender, EventArgs e) //build button { var acc = getSelectedAcc(); var vill = getSelectedVillage(acc); var indicies = buildingsList.SelectedIndices; if (indicies.Count > 0) { selectedBuilding = vill.Build.Buildings[indicies[0]]; } else { return; //no building selected :( } if (buildRadioButton.Checked) { var task = new BuildingTask { TaskType = BuildingHelper.BuildingType.General, Level = (int)buildLevelUpDown.Value, BuildingId = selectedBuilding.Id }; //Create building task, construct new building if (selectedBuilding.Type == Classificator.BuildingEnum.Site) { Enum.TryParse(buildTypeComboBox.SelectedItem.ToString(), out Classificator.BuildingEnum building); task.Building = building; task.ConstructNew = true; } else //upgrade existing building { task.Building = selectedBuilding.Type; } BuildingHelper.AddBuildingTask(acc, vill, task); } else if (demolishRadioButton.Checked) { DemolishTask dt = new DemolishTask { Building = selectedBuilding.Type, BuildingId = selectedBuilding.Id, Level = (int)buildLevelUpDown.Value }; vill.Build.DemolishTasks.Add(dt); //TODO: ReStartDemolish TaskExecutor.AddTaskIfNotExistInVillage(acc, vill, new DemolishBuilding() { ExecuteAt = DateTime.Now, vill = vill }); } UpdateBuildTab(); }
private void buildButton_Click(object sender, EventArgs e) //build button { var acc = GetSelectedAcc(); var vill = GetSelectedVillage(acc); var indicies = buildingsList.SelectedIndices; if (indicies.Count > 0) { selectedBuilding = vill.Build.Buildings[indicies[0]]; } else { return; //no building selected :( } if (buildRadioButton.Checked) { var task = new BuildingTask { TaskType = BuildingType.General, Level = (int)buildLevelUpDown.Value, BuildingId = selectedBuilding.Id }; // Building already planned on this ID var plannedBuilding = vill.Build.Tasks.FirstOrDefault(x => x.BuildingId == task.BuildingId); //Create building task, construct new building if (selectedBuilding.Type == BuildingEnum.Site) { if (plannedBuilding == null) // No building has been planned on this ID { Enum.TryParse(buildTypeComboBox.SelectedItem.ToString(), out BuildingEnum building); task.Building = building; task.ConstructNew = true; } else // Building was already planned { task.Building = plannedBuilding.Building; } } else //upgrade existing building { task.Building = selectedBuilding.Type; } BuildingHelper.AddBuildingTask(acc, vill, task); } else if (demolishRadioButton.Checked) { DemolishTask dt = new DemolishTask { Building = selectedBuilding.Type, BuildingId = selectedBuilding.Id, Level = (int)buildLevelUpDown.Value }; vill.Build.DemolishTasks.Add(dt); //TODO: ReStartDemolish TaskExecutor.AddTaskIfNotExistInVillage(acc, vill, new DemolishBuilding() { Vill = vill }); } UpdateUc(); }