Exemplo n.º 1
0
 /// <summary>
 /// przycisk ataku na empire1
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void buttonAttackEmpire1_Click(object sender, EventArgs e)
 {
     // atak na empire1 przez gracza
     if (Empire.FIGHT(myEmpire, empire1))
     {
         // informacja o wyniku walki
         MessageBox.Show("You won the fight! Rivalry empire conquered!");
         empire1.SetConquered(true);
     }
     else
     {
         // informacja o wyniku walki
         MessageBox.Show("You lost the fight! All your warriors died!");
     }
     // aktualizacja stanu wojsk oraz zasobów w obu wioskach
     LabelResourcesUpdate();
     SetLabelsWarriorsStatus();
     LabelArmyPowerUpdate();
     LabelsEmpiresUpdate();
     // ustawienie progressBar na ekranie
     ProgressBarsUpdate();
 }
Exemplo n.º 2
0
        /// <summary>
        /// funkcja przeprowadzająca działania związane z tyknięciem zegara
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void timerCounter_Tick(object sender, EventArgs e)
        {
            // warunek kończący rozgrywkę
            if (empire1.IsConquered() == true && empire2.IsConquered() == true && empire3.IsConquered() == true)
            {
                // zatrzymanie zegara
                timerCounter.Stop();
                // wyświetlenie gratulacji na ekranie
                MessageBox.Show("Congratulations you won ! World belongs to you !");
                // zamknięcie aplikacji
                Close();
            }

            // zwiększenie godziny o 1
            hour++;
            // aktualizacja godziny wyświetlanej na ekranie
            labelHour.Text = hour.ToString();

            // aktualizacja zasobów wiosek w czasie

            myEmpire.UpdateResources();
            empire1.UpdateResources();
            empire2.UpdateResources();
            empire3.UpdateResources();

            // aktualizacja zasobów wiosek na ekranie
            LabelResourcesUpdate();

            // aktualizacja stanu wojsk przeciwników co 24h:
            if (hour == 1)
            {
                if (empire1.IsConquered() == false)
                {
                    empire1.RecruitAll(1, 1, 0);
                }
                if (empire2.IsConquered() == false)
                {
                    empire2.RecruitAll(3, 0, 1);
                }
                if (empire3.IsConquered() == false)
                {
                    empire3.RecruitAll(5, 10, 5);
                }
                // wyświetlenie na ekranie
                LabelsEmpiresUpdate();
            }


            // aktualizacja liczby dni gdy miną 24 godziny
            if (hour == 24)
            {
                // wyzerowanie liczby godzin
                hour = 0;
                // zwiększenie dni o 1
                day++;
                // aktualizacja wyświetlanych na ekranie danych dotyczących czasu
                labelHour.Text = hour.ToString();
                labelDay.Text  = day.ToString();
                // Wydarzenia w trakcie rozgrywki

                // ataki :

                // ostrzeżenie przed atakiem
                if (day == 4 && empire1.IsConquered() == false)
                {
                    labelHint.Text = empire1.GetName() + " is going to attack your village tomorrow !";
                }
                // atak empire1 na gracza jeśli prędzej nie zostało podbite
                if (day == 5 && empire1.IsConquered() == false)
                {
                    // walka
                    if (Empire.FIGHT(empire1, myEmpire))
                    {
                        // informacja o rezultacie walki
                        MessageBox.Show(empire1.GetName() + " attacked your village, killed your warriors and stole your resources");
                    }
                    else
                    {
                        // informacja o rezultacie walki
                        MessageBox.Show(empire1.GetName() + " attacked your village but your warriors repulsed their attack");
                    }
                    // aktualizacja stanu wojsk i zasobów
                    LabelResourcesUpdate();
                    SetLabelsWarriorsStatus();
                    LabelArmyPowerUpdate();
                    LabelsEmpiresUpdate();
                    labelHint.Text = "Develop your empire to conquer other settlements and protect your own";
                }
                // ostrzeżenie przed atakiem
                if (day == 9 && empire2.IsConquered() == false)
                {
                    labelHint.Text = empire2.GetName() + " is going to attack your village tomorrow!";
                }
                // atak empire2 na gracza jeśli prędzej nie zostało podbite
                if (day == 10 && empire2.IsConquered() == false)
                {
                    // walka
                    if (Empire.FIGHT(empire2, myEmpire))
                    {
                        // informacja o rezultacie walki
                        MessageBox.Show(empire2.GetName() + " attacked your village, killed your warriors and stole your resources");
                    }
                    else
                    {
                        // informacja o rezultacie walki
                        MessageBox.Show(empire2.GetName() + " attacked your village but your warriors repulsed their attack");
                    }
                    // aktualizacja stanu wojsk i zasobów
                    LabelResourcesUpdate();
                    SetLabelsWarriorsStatus();
                    LabelArmyPowerUpdate();
                    LabelsEmpiresUpdate();
                    labelHint.Text = "Develop your empire to conquer other settlements and protect your own";
                }
                // ostrzeżenie przed atakiem
                if (day == 13 && empire3.IsConquered() == false)
                {
                    labelHint.Text = empire3.GetName() + " is going to attack your village at day 15 !";
                }
                // atak empire3 na gracza jeśli prędzej nie zostało podbite
                if (day == 15 && empire3.IsConquered() == false)
                {
                    // walka
                    if (Empire.FIGHT(empire3, myEmpire))
                    {
                        // informacja o rezultacie walki
                        MessageBox.Show(empire3.GetName() + " attacked your village, killed your warriors and stole your resources");
                    }
                    else
                    {
                        // informacja o rezultacie walki
                        MessageBox.Show(empire3.GetName() + " attacked your village but your warriors repulsed their attack");
                    }
                    // aktualizacja stanu wojsk i zasobów
                    LabelResourcesUpdate();
                    SetLabelsWarriorsStatus();
                    LabelArmyPowerUpdate();
                    LabelsEmpiresUpdate();
                    labelHint.Text = "Develop your empire to conquer other settlements and protect your own";
                }
                // ostrzeżenie przed atakiem
                if (day == 18 && empire3.IsConquered() == false)
                {
                    labelHint.Text = empire3.GetName() + " is going to attack your village at day 20 !";
                }
                // informacja o zmianie zamiarów
                if (day == 19 && empire3.IsConquered() == true)
                {
                    labelHint.Text = empire3.GetName() + " abandoned an idea to attack your village";
                }
                // ponowny atak empire3 na gracza jeśli prędzej nie zostało podbite
                if (day == 20 && empire3.IsConquered() == false)
                {
                    // walka
                    if (Empire.FIGHT(empire3, myEmpire))
                    {
                        // informacja o rezultacie walki
                        MessageBox.Show(empire3.GetName() + " attacked your village, killed your warriors and stole your resources");
                    }
                    else
                    {
                        // informacja o rezultacie walki
                        MessageBox.Show(empire3.GetName() + " attacked your village but your warriors repulsed their attack");
                    }
                    // aktualizacja stanu wojsk i zasobów
                    LabelResourcesUpdate();
                    SetLabelsWarriorsStatus();
                    LabelArmyPowerUpdate();
                    LabelsEmpiresUpdate();
                    labelHint.Text = "Develop your empire to conquer other settlements and protect your own";
                }
            }
            if (day == 20)
            {
                labelHint.Text = "Develop your empire to conquer other settlements and protect your own";
            }
            myEmpire.UpdateResources();
            // aktualizacja progressBar na ekranie
            ProgressBarsUpdate();
        }