/// <summary> /// timer aktualizujacy obecna ilosc jednostek /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void timerUpdater_Tick(object sender, EventArgs e) { labelElvishArcherQuantity.Text = ElvishArcher.ElvishList.Count.ToString(); labelElvishWarriorQuantity.Text = ElvishWarrior.ElvishList.Count.ToString(); labelElvishMasterQuantity.Text = ElvishMaster.ElvishList.Count.ToString(); labelElvishArcherTrainingCostTime.Text = (ElvishArcher.TrainingTime() / 1000).ToString(); labelElvishWarriorTrainingCostTime.Text = (ElvishWarrior.TrainingTime() / 1000).ToString(); labelElvishMasterTrainingCostTime.Text = (ElvishMaster.TrainingTime() / 1000).ToString(); }
private void FormTraining_Load(object sender, EventArgs e) { // ustawia obraz elfickiego łucznika, obraz znajduje sie w resources projektu pictureBoxElvishArcher.Image = Properties.Resources.elvishArcher2; // ustawia obraz elfickiego wojownika, obraz znajduje sie w resources projektu pictureBoxElvishWarrior.Image = Properties.Resources.elvishWarrior; // ustawia obraz elfickiego mistrza, obraz znajduje sie w resources projektu pictureBoxElvishMaster.Image = Properties.Resources.elvishMaster2; labelElvishArcherQuantity.Text = ElvishArcher.ElvishList.Count.ToString(); labelElvishWarriorQuantity.Text = ElvishWarrior.ElvishList.Count.ToString(); labelElvishMasterQuantity.Text = ElvishMaster.ElvishList.Count.ToString(); // Tworzenie obiektu klasy ElvishArcher i wyswietlnie w poszczegolnych labelach kosztow treningow jednostki elfi lucznik int[] cost = ElvishArcher.TrainingCost(); labelElvishArcherTrainingCostFood.Text = cost[0].ToString(); labelElvishArcherTrainingCostWood.Text = cost[1].ToString(); labelElvishArcherTrainingCostStone.Text = cost[2].ToString(); labelElvishArcherTrainingCostIron.Text = cost[3].ToString(); labelElvishArcherTrainingCostCrystals.Text = cost[4].ToString(); labelElvishArcherTrainingCostPopulation.Text = cost[5].ToString(); // tworzenie obiektu klasy ElvishWarrior i wyswietlenie jego kosztow szkolenia cost = ElvishWarrior.TrainingCost(); labelElvishWarriorTrainingCostFood.Text = cost[0].ToString(); labelElvishWarriorTrainingCostWood.Text = cost[1].ToString(); labelElvishWarriorTrainingCostStone.Text = cost[2].ToString(); labelElvishWarriorTrainingCostIron.Text = cost[3].ToString(); labelElvishWarriorTrainingCostCrystals.Text = cost[4].ToString(); labelElvishWarriorTrainingCostPopulation.Text = cost[5].ToString(); // Wyswietlnie w poszczegolnych labelach kosztow treningow jednostki elfi mistrz cost = ElvishMaster.TrainingCost(); labelElvishMasterTrainingCostFood.Text = cost[0].ToString(); labelElvishMasterTrainingCostWood.Text = cost[1].ToString(); labelElvishMasterTrainingCostStone.Text = cost[2].ToString(); labelElvishMasterTrainingCostIron.Text = cost[3].ToString(); labelElvishMasterTrainingCostCrystals.Text = cost[4].ToString(); labelElvishMasterTrainingCostPopulation.Text = cost[5].ToString(); // wyswietli czas szkolenia poszczegolnyc jednostek labelElvishArcherTrainingCostTime.Text = (ElvishArcher.TrainingTime() / 1000).ToString(); labelElvishWarriorTrainingCostTime.Text = (ElvishWarrior.TrainingTime() / 1000).ToString(); labelElvishMasterTrainingCostTime.Text = (ElvishMaster.TrainingTime() / 1000).ToString(); // timer aktualizuje wyswietlana liczbe jednostek timerUpdater.Interval = 100; timerUpdater.Start(); }
/// <summary> /// Funckja wywolywana podczas klikniecia na przycisk z zamiaerem treningu elfiego lucznika /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void buttonElvishArcherTrain_Click(object sender, EventArgs e) { // sprawdzenie czy uzytkownik posiada wystarczajaca ilosc zasobow if (IfEnoughtResources(labelElvishArcherTrainingCostFood, labelElvishArcherTrainingCostWood, labelElvishArcherTrainingCostStone, labelElvishArcherTrainingCostIron, labelElvishArcherTrainingCostCrystals, labelElvishArcherTrainingCostPopulation) == true) { // ustawienie timera timerElvishArcherTraining.Interval = ElvishArcher.TrainingTime(); // ustawienie timera odpowiedzialnego za progressbar timerElvishArcherProgressBar.Interval = ElvishArcher.TrainingTime() / 110 + 1; // wystartowanie timera odpowiedzialnego za progressbar timerElvishArcherProgressBar.Start(); // wystartowanie timera timerElvishArcherTraining.Start(); // zablokowanie klawisza buttonElvishArcherTrain.Enabled = false; } else { MessageBox.Show("Brak wystarczajacych ilosci zasobow"); } }