示例#1
0
        //Konstruktor domyślny
        //Konstruktor z parametrami
        public Gracz(string nazwa, string obrazekNaMapie, string obrazekMowienia, int doswiadczenie, int zloto, int silaPodstawa, int zrecznoscPodstawa, int witalnoscPodstawa, int inteligencjaPodstawa,
            double obrazeniaPodstawa, double pancerzPodstawa, double hPPodstawa, double energiaPodstawa,
            double szansaNaTrafieniePodstawa, double szansaNaKrytycznePodstawa,
            Ekwipunek zalozonaBron, Ekwipunek zalozonyPancerz, Ekwipunek zalozonaTarcza,
            List<Ekwipunek> plecak, List<Zadanie> zadania)
            : base()
        {
            _obrazekMapa = obrazekNaMapie;
            _nazwa = nazwa;
            Zloto = zloto;
            ObrazekMowienia = obrazekMowienia;
            SilaPodstawa = silaPodstawa;
            ZrecznoscPodstawa = zrecznoscPodstawa;
            WitalnoscPodstawa = witalnoscPodstawa;
            InteligencjaPodstawa = inteligencjaPodstawa;
            ObrazeniaPodstawa = obrazeniaPodstawa;
            PancerzPodstawa = pancerzPodstawa;
            HPPodstawa = hPPodstawa;
            EnergiaPodstawa = energiaPodstawa;
            SzansaNaTrafieniePodstawa = szansaNaTrafieniePodstawa;
            SzansaNaKrytycznePodstawa = szansaNaKrytycznePodstawa;
            ZalozonaBron = zalozonaBron;
            ZalozonyPancerz = zalozonyPancerz;

            ZalozonaTarcza = zalozonaTarcza;

            if (plecak != null)
            {
                Plecak = new List<Ekwipunek>(plecak);
            }
            else
            {
                Plecak = new List<Ekwipunek>();
            }
            if (zadania != null)
            {
                Zadania = new List<Zadanie>(zadania);
            }
            else
            {
                Zadania = new List<Zadanie>();
            }

            sumaPoczatkowychStatystyk = silaPodstawa + zrecznoscPodstawa + inteligencjaPodstawa + witalnoscPodstawa;
        }
示例#2
0
        public static void UstawObrazEkwipunku(PictureBox Kontrolka, Ekwipunek przedmiot)
        {
            try
            {
                Kontrolka.BackgroundImageLayout = ImageLayout.None;
                Kontrolka.SizeMode = PictureBoxSizeMode.Zoom;

                using (Image obrazekTla = new Bitmap("Resources/Grafiki menu/Tło przedmiotu.png"))
                {

                    Kontrolka.BackgroundImage = new Bitmap(obrazekTla, Kontrolka.Width, Kontrolka.Height);
                    if (przedmiot != null)
                    {
                        Kontrolka.Image = new Bitmap(przedmiot.Obrazek);
                    }

                }
            }
            catch (System.ArgumentException e)
            {
                Kontrolka.Image = new Bitmap("Resources/Grafiki menu/Błędny obraz.png");
                MessageBox.Show(e.Message + "\nŚcieżka do obrazu:\n" + przedmiot!=null?przedmiot.Obrazek:"brak przedmiotu", "Błąd wczytywania obrazu", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1);
            }
        }
示例#3
0
        List<int> PorownaneWartosciDoListy(Ekwipunek pierwszyElement, char dzialanie, Ekwipunek drugiElement, char drugieDzialanie, Ekwipunek trzeciElement)
        {
            List<int> listaZWynikami = null;
            if (pierwszyElement != null)
            {
                listaZWynikami = new List<int>();
                if (drugiElement == null || dzialanie == ' ')
                {
                    listaZWynikami.Add(pierwszyElement.Sila);
                    listaZWynikami.Add(pierwszyElement.Zrecznosc);
                    listaZWynikami.Add(pierwszyElement.Witalnosc);
                    listaZWynikami.Add(pierwszyElement.Inteligencja);
                    listaZWynikami.Add((int)pierwszyElement.Obrazenia);
                    listaZWynikami.Add((int)pierwszyElement.Pancerz);
                    listaZWynikami.Add((int)pierwszyElement.HP);
                    listaZWynikami.Add((int)pierwszyElement.Energia);
                    listaZWynikami.Add((int)pierwszyElement.SzansaNaTrafienie);
                    listaZWynikami.Add((int)pierwszyElement.SzansaNaKrytyczne);
                }
                else if (trzeciElement == null || drugieDzialanie == ' ')
                {
                    switch (dzialanie)
                    {
                        case '+':
                            listaZWynikami.Add(pierwszyElement.Sila + drugiElement.Sila);
                            listaZWynikami.Add(pierwszyElement.Zrecznosc + drugiElement.Zrecznosc);
                            listaZWynikami.Add(pierwszyElement.Witalnosc + drugiElement.Witalnosc);
                            listaZWynikami.Add(pierwszyElement.Inteligencja + drugiElement.Inteligencja);
                            listaZWynikami.Add((int)pierwszyElement.Obrazenia + (int)drugiElement.Obrazenia);
                            listaZWynikami.Add((int)pierwszyElement.Pancerz + (int)drugiElement.Pancerz);
                            listaZWynikami.Add((int)pierwszyElement.HP + (int)drugiElement.HP);
                            listaZWynikami.Add((int)pierwszyElement.Energia + (int)drugiElement.Energia);
                            listaZWynikami.Add((int)pierwszyElement.SzansaNaTrafienie + (int)drugiElement.SzansaNaTrafienie);
                            listaZWynikami.Add((int)pierwszyElement.SzansaNaKrytyczne + (int)drugiElement.SzansaNaKrytyczne);
                            break;
                        case '-':
                            listaZWynikami.Add(pierwszyElement.Sila - drugiElement.Sila);
                            listaZWynikami.Add(pierwszyElement.Zrecznosc - drugiElement.Zrecznosc);
                            listaZWynikami.Add(pierwszyElement.Witalnosc - drugiElement.Witalnosc);
                            listaZWynikami.Add(pierwszyElement.Inteligencja - drugiElement.Inteligencja);
                            listaZWynikami.Add((int)pierwszyElement.Obrazenia - (int)drugiElement.Obrazenia);
                            listaZWynikami.Add((int)pierwszyElement.Pancerz - (int)drugiElement.Pancerz);
                            listaZWynikami.Add((int)pierwszyElement.HP - (int)drugiElement.HP);
                            listaZWynikami.Add((int)pierwszyElement.Energia - (int)drugiElement.Energia);
                            listaZWynikami.Add((int)pierwszyElement.SzansaNaTrafienie - (int)drugiElement.SzansaNaTrafienie);
                            listaZWynikami.Add((int)pierwszyElement.SzansaNaKrytyczne - (int)drugiElement.SzansaNaKrytyczne);
                            break;
                    }
                }
                else
                {
                    switch (dzialanie)
                    {
                        case '+':
                            switch (drugieDzialanie)
                            {
                                case '+':
                                    listaZWynikami.Add(pierwszyElement.Sila + drugiElement.Sila + trzeciElement.Sila);
                                    listaZWynikami.Add(pierwszyElement.Zrecznosc + drugiElement.Zrecznosc + trzeciElement.Zrecznosc);
                                    listaZWynikami.Add(pierwszyElement.Witalnosc + drugiElement.Witalnosc + trzeciElement.Witalnosc);
                                    listaZWynikami.Add(pierwszyElement.Inteligencja + drugiElement.Inteligencja + trzeciElement.Inteligencja);
                                    listaZWynikami.Add((int)pierwszyElement.Obrazenia + (int)drugiElement.Obrazenia + (int)trzeciElement.Obrazenia);
                                    listaZWynikami.Add((int)pierwszyElement.Pancerz + (int)drugiElement.Pancerz + (int)trzeciElement.Pancerz);
                                    listaZWynikami.Add((int)pierwszyElement.HP + (int)drugiElement.HP + (int)trzeciElement.HP);
                                    listaZWynikami.Add((int)pierwszyElement.Energia + (int)drugiElement.Energia + (int)trzeciElement.Energia);
                                    listaZWynikami.Add((int)pierwszyElement.SzansaNaTrafienie + (int)drugiElement.SzansaNaTrafienie + (int)trzeciElement.SzansaNaTrafienie);
                                    listaZWynikami.Add((int)pierwszyElement.SzansaNaKrytyczne + (int)drugiElement.SzansaNaKrytyczne + (int)trzeciElement.SzansaNaKrytyczne);
                                    break;
                                case '-':
                                    listaZWynikami.Add(pierwszyElement.Sila + drugiElement.Sila - trzeciElement.Sila);
                                    listaZWynikami.Add(pierwszyElement.Zrecznosc + drugiElement.Zrecznosc - trzeciElement.Zrecznosc);
                                    listaZWynikami.Add(pierwszyElement.Witalnosc + drugiElement.Witalnosc - trzeciElement.Witalnosc);
                                    listaZWynikami.Add(pierwszyElement.Inteligencja + drugiElement.Inteligencja - trzeciElement.Inteligencja);
                                    listaZWynikami.Add((int)pierwszyElement.Obrazenia + (int)drugiElement.Obrazenia - (int)trzeciElement.Obrazenia);
                                    listaZWynikami.Add((int)pierwszyElement.Pancerz + (int)drugiElement.Pancerz - (int)trzeciElement.Pancerz);
                                    listaZWynikami.Add((int)pierwszyElement.HP + (int)drugiElement.HP - (int)trzeciElement.HP);
                                    listaZWynikami.Add((int)pierwszyElement.Energia + (int)drugiElement.Energia - (int)trzeciElement.Energia);
                                    listaZWynikami.Add((int)pierwszyElement.SzansaNaTrafienie + (int)drugiElement.SzansaNaTrafienie - (int)trzeciElement.SzansaNaTrafienie);
                                    listaZWynikami.Add((int)pierwszyElement.SzansaNaKrytyczne + (int)drugiElement.SzansaNaKrytyczne - (int)trzeciElement.SzansaNaKrytyczne);
                                    break;
                            }
                            break;
                        case '-':
                            switch (drugieDzialanie)
                            {
                                case '+':
                                    listaZWynikami.Add(pierwszyElement.Sila - drugiElement.Sila + trzeciElement.Sila);
                                    listaZWynikami.Add(pierwszyElement.Zrecznosc - drugiElement.Zrecznosc + trzeciElement.Zrecznosc);
                                    listaZWynikami.Add(pierwszyElement.Witalnosc - drugiElement.Witalnosc + trzeciElement.Witalnosc);
                                    listaZWynikami.Add(pierwszyElement.Inteligencja - drugiElement.Inteligencja + trzeciElement.Inteligencja);
                                    listaZWynikami.Add((int)pierwszyElement.Obrazenia - (int)drugiElement.Obrazenia + (int)trzeciElement.Obrazenia);
                                    listaZWynikami.Add((int)pierwszyElement.Pancerz - (int)drugiElement.Pancerz + (int)trzeciElement.Pancerz);
                                    listaZWynikami.Add((int)pierwszyElement.HP - (int)drugiElement.HP + (int)trzeciElement.HP);
                                    listaZWynikami.Add((int)pierwszyElement.Energia - (int)drugiElement.Energia + (int)trzeciElement.Energia);
                                    listaZWynikami.Add((int)pierwszyElement.SzansaNaTrafienie - (int)drugiElement.SzansaNaTrafienie + (int)trzeciElement.SzansaNaTrafienie);
                                    listaZWynikami.Add((int)pierwszyElement.SzansaNaKrytyczne - (int)drugiElement.SzansaNaKrytyczne + (int)trzeciElement.SzansaNaKrytyczne);
                                    break;
                                case '-':
                                    listaZWynikami.Add(pierwszyElement.Sila - drugiElement.Sila - trzeciElement.Sila);
                                    listaZWynikami.Add(pierwszyElement.Zrecznosc - drugiElement.Zrecznosc - trzeciElement.Zrecznosc);
                                    listaZWynikami.Add(pierwszyElement.Witalnosc - drugiElement.Witalnosc - trzeciElement.Witalnosc);
                                    listaZWynikami.Add(pierwszyElement.Inteligencja - drugiElement.Inteligencja - trzeciElement.Inteligencja);
                                    listaZWynikami.Add((int)pierwszyElement.Obrazenia - (int)drugiElement.Obrazenia - (int)trzeciElement.Obrazenia);
                                    listaZWynikami.Add((int)pierwszyElement.Pancerz - (int)drugiElement.Pancerz - (int)trzeciElement.Pancerz);
                                    listaZWynikami.Add((int)pierwszyElement.HP - (int)drugiElement.HP - (int)trzeciElement.HP);
                                    listaZWynikami.Add((int)pierwszyElement.Energia - (int)drugiElement.Energia - (int)trzeciElement.Energia);
                                    listaZWynikami.Add((int)pierwszyElement.SzansaNaTrafienie - (int)drugiElement.SzansaNaTrafienie - (int)trzeciElement.SzansaNaTrafienie);
                                    listaZWynikami.Add((int)pierwszyElement.SzansaNaKrytyczne - (int)drugiElement.SzansaNaKrytyczne - (int)trzeciElement.SzansaNaKrytyczne);
                                    break;
                            }
                            break;
                    }
                }
            }

            return listaZWynikami;
        }
示例#4
0
        void OdswiezLabelZPorownaniemPrzedmiotow(Ekwipunek przenoszonyPrzedmiot)
        {
            NazwyStatystyk();

            LabelWartosciStatystyk.Text = "\n";
            LabelWartosciStatystyk.Text += gracz.Doswiadczenie + "/" + gracz.DoswiadczenieWymaganeNaKonkretnyPoziom[gracz.Poziom-1] + "\n";
            LabelWartosciStatystyk.Text += gracz.Poziom + "\n";
            LabelWartosciStatystyk.Text += gracz.PunktyStatystykDoRozdania + "\n";                         //Pozostałe punkty do rozdania
            LabelWartosciStatystyk.Text += gracz.Sila + "\n";                       //Siła
            LabelWartosciStatystyk.Text += gracz.Zrecznosc + "\n";                  //Zręczność
            LabelWartosciStatystyk.Text += gracz.Witalnosc + "\n";                  //Witalność
            LabelWartosciStatystyk.Text += gracz.Inteligencja + "\n";               //Inteligencja
            LabelWartosciStatystyk.Text += gracz.Obrazenia + "\n";                  //Obrażenia
            LabelWartosciStatystyk.Text += gracz.Pancerz + "\n";                    //Pancerz
            LabelWartosciStatystyk.Text += gracz.HP + "\n";                         //Zdrowie
            LabelWartosciStatystyk.Text += gracz.Energia + "\n";                    //Energia
            LabelWartosciStatystyk.Text += gracz.SzansaNaTrafienie + "%\n";         //Szansa na trafienie
            LabelWartosciStatystyk.Text += gracz.SzansaNaKrytyczne + "%\n";         //Szansa na trafienie krytyczne

            if(przenoszonyPrzedmiot.TypPrzedmiotu==Klasy.TypPrzedmiotu.BronJednoreczna)
            {
                WyswietlWartosciPorownan(PorownaneWartosciDoListy(przenoszonyPrzedmiot, '-', gracz.ZalozonaBron, ' ', null));//Porównaj dwie bronie jednoręczne (bez tarczy)
            }
            else if(przenoszonyPrzedmiot.TypPrzedmiotu==Klasy.TypPrzedmiotu.BronDwureczna || przenoszonyPrzedmiot.TypPrzedmiotu==Klasy.TypPrzedmiotu.BronMiotana)
            {
                if(gracz.ZalozonaBron!=null && gracz.ZalozonaBron.TypPrzedmiotu==Klasy.TypPrzedmiotu.BronJednoreczna)
                {
                    if(gracz.ZalozonaTarcza!=null && gracz.ZalozonaTarcza.TypPrzedmiotu==Klasy.TypPrzedmiotu.Tarcza)
                    {
                        WyswietlWartosciPorownan(PorownaneWartosciDoListy(przenoszonyPrzedmiot, '-', gracz.ZalozonaBron, '-', gracz.ZalozonaTarcza));//Porównaj założoną broń jednoręczną + założoną tarczę z najechaną bronią dwuręczną
                    }
                    else//Jeżeli gracz nie ma na sobie tarczy
                    {
                        WyswietlWartosciPorownan(PorownaneWartosciDoListy(przenoszonyPrzedmiot, '-', gracz.ZalozonaBron, ' ', null));//Porównaj najechaną broń dwuręczną z wyposażoną bronią jednoręczną
                    }
                }
                else
                {
                    WyswietlWartosciPorownan(PorownaneWartosciDoListy(przenoszonyPrzedmiot, '-', gracz.ZalozonaBron, '-', gracz.ZalozonaTarcza));
                }
            }
            else if (przenoszonyPrzedmiot.TypPrzedmiotu==Klasy.TypPrzedmiotu.Zbroja)//Jeżeli przenoszony przedmiot jest pancerzem
            {
                    WyswietlWartosciPorownan(PorownaneWartosciDoListy(przenoszonyPrzedmiot, '-', gracz.ZalozonyPancerz, ' ', null));//Porównaj pancerz najechany z założonym
            }
            else if (przenoszonyPrzedmiot.TypPrzedmiotu==Klasy.TypPrzedmiotu.Tarcza)//Jeżeli przenoszony przedmiot jest tarczą
            {
                if (gracz.ZalozonaTarcza != null)
                {
                    if (gracz.ZalozonaTarcza.TypPrzedmiotu == Klasy.TypPrzedmiotu.Tarcza)//Jeżeli gracz ma założoną tarczę
                    {//Nie trzeba sprawdzać if(WyposazonaBron.Contains("bron1h")), bo broń jednoręczna nie konfliktuje z tarczą

                        WyswietlWartosciPorownan(PorownaneWartosciDoListy(przenoszonyPrzedmiot, '-', gracz.ZalozonaTarcza, ' ', null));//Porównaj tarczę najechaną z założoną
                    }
                    else if (gracz.ZalozonaBron!=null &&( gracz.ZalozonaBron.TypPrzedmiotu==Klasy.TypPrzedmiotu.BronDwureczna || gracz.ZalozonaBron.TypPrzedmiotu==Klasy.TypPrzedmiotu.BronMiotana))//Jeżeli gracz ma założoną broń dwuręczną
                    {
                        WyswietlWartosciPorownan(PorownaneWartosciDoListy(przenoszonyPrzedmiot, '-', gracz.ZalozonaBron, ' ', null));//Wyświetl statystyki najechanej tarczy - statystyki założonej broni dwuręcznej
                    }
                }
                else//Jeżeli gracz nie ma na sobie ani tarczy ani broni dwuręcznej
                {
                    WyswietlWartosciPorownan(PorownaneWartosciDoListy(przenoszonyPrzedmiot, ' ', null, ' ', null));//Wyświetl statystyki najechanej tarczy
                }
            }
        }
示例#5
0
        void OdswiezInformacjeONejchanymPrzedmiocie(Ekwipunek przedmiot)
        {
            Program.UstawObrazZDopasowaniemWielkosciObrazuDoKontrolkiJakoImage(PictureBoxPrzenoszony, przedmiot.Obrazek);
            LabelNazwaPrzedmiotu.Text = przedmiot.Nazwa;

            LabelOpisStatystykPrzedmiotu.Text = "Wartość";
            LabelOpisStatystykPrzedmiotu.Text += "\nSiła";
            LabelOpisStatystykPrzedmiotu.Text += "\nZręczność";
            LabelOpisStatystykPrzedmiotu.Text += "\nWitalność";
            LabelOpisStatystykPrzedmiotu.Text += "\nInteligencja";
            LabelOpisStatystykPrzedmiotu.Text += "\nObrazenia";
            LabelOpisStatystykPrzedmiotu.Text += "\nPancerz";
            LabelOpisStatystykPrzedmiotu.Text += "\nPunkty życia";
            LabelOpisStatystykPrzedmiotu.Text += "\nEnergia";
            LabelOpisStatystykPrzedmiotu.Text += "\nSzansa na trafienie";
            LabelOpisStatystykPrzedmiotu.Text += "\nSzansa na krytyczne";

            LabelWartosciStatystykPrzedmiotu.Text = przedmiot.Cena.ToString();
            LabelWartosciStatystykPrzedmiotu.Text += "\n" + przedmiot.Sila;
            LabelWartosciStatystykPrzedmiotu.Text += "\n" + przedmiot.Zrecznosc;
            LabelWartosciStatystykPrzedmiotu.Text += "\n" + przedmiot.Witalnosc;
            LabelWartosciStatystykPrzedmiotu.Text += "\n" + przedmiot.Inteligencja;
            LabelWartosciStatystykPrzedmiotu.Text += "\n" + przedmiot.Obrazenia;
            LabelWartosciStatystykPrzedmiotu.Text += "\n" + przedmiot.Pancerz;
            LabelWartosciStatystykPrzedmiotu.Text += "\n" + przedmiot.HP;
            LabelWartosciStatystykPrzedmiotu.Text += "\n" + przedmiot.Energia;
            LabelWartosciStatystykPrzedmiotu.Text += "\n" + przedmiot.SzansaNaTrafienie;
            LabelWartosciStatystykPrzedmiotu.Text += "\n" + przedmiot.SzansaNaKrytyczne;
        }