Bojovník – Java – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Bojovník – Java – Fórum – Programujte.comBojovník – Java – Fórum – Programujte.com

 

Daník Rantoš
~ Anonymní uživatel
1 příspěvek
8. 11. 2011   #1
-
0
-

Ahoj, potřeboval bych od vás nakopnout aspoň na třídu Bojovník. Tady je zadání:

Vytvořte třídu pro postavu bojovníka ze hry, která bude mít jako vlastnosti počet zkušeností, sílu úderu, obranu a level. Vytvořte konstruktory, metody set, get a toString.
Vytvořte metodu, která umožní zvyšovat zkušenosti. Počet zkušeností, které chcete přidat, budou vstupním parametrem metody. Při překročení hodnoty zkušeností 10*level, se zkušenosti "vynulují" (odečte se od nich hodnota nutná pro zvýšení levelu tedy 10*level) a zvedne se síla úderu o 2 a obrana a level o 1 (na takovéto zvednutí levelu vytvořte samostatnou metodu, kterou budete volat v rámci metody pro zvýšení zkušeností).
Vytvořte metodu, která umožní boj dvou bojovníků, oba bojovníci získají zkušenosti podle vzorce 2*síla úderu - obrana protivníka.
Vytvořte v programu 2 bojovníky (použijte oba konstruktory), a nechte je 5xzápasit.
Vypisujte průběžně výsledky.
Vytvořte druhou třídu, která převezme všechny vlastnosti a schopnosti předchozí třídy, ale přidá ještě navíc magii. Výpočet pro boj se změní na (2*síla úderu - obrana protivníka)*(magie - obrana protivníka).
Vytvořte v programu bojovníka s magií a nechte jej 5x zápasit s jedním z předchozích bojovníků. Vypisujte průběžně výsledky.

Díky ;)

Nahlásit jako SPAM
IP: 88.103.42.–
amertak0
Návštěvník
8. 11. 2011   #2
-
0
-

Třeba nějak tak? Je to v C#, ale k nakopnutí snad stačí, boj si asi udělej sám. Jinak ale nevím, jestli to mám uplně dobře.

public class Kouzelnik : Bojovnik
    {
        private int magie;

        public int Magie
        {
            get
            {
                return magie;
            }
            set
            {
                magie = value;
            }
        }

        public Kouzelnik(string name = "", int zkusenosti = 0, int uder = 0, int obrana = 0, int level = 1, int magie = 0)
            : base(name, zkusenosti, uder, obrana, level)
        {
            Name = name;
            Zkusenosti = zkusenosti;
            Uder = uder;
            Level = level;
            Magie = magie;
        }

        public new void PridatZkusenosti(int add)
        {
            Zkusenosti += add;

            if (Zkusenosti >= 10 * Level)
            {
                Zkusenosti -= 10 * Level;
                ZvedniLevel();
                ZvednoutSiluUderu(2);
                ZvednoutObranu(1);
                ZvedniMagii(1);
            }

            if (Zkusenosti < 0)
                Zkusenosti = 0;
        }

        protected void ZvedniMagii(int add)
        {
            Magie += add;
        }

        public override string ToString()
        {
            return "Kouzelnik " + Name + " (level " + Level + ") má " + Zkusenosti + " zkušeností, síla úderu " + Uder + ", magie + " + Magie + " a obrana " + Obrana + "\n";
        }
    }

    public class Bojovnik
    {
        private int zkusenosti;
        private int uder;
        private int obrana;
        private int level;
        private string name;

        #region Gettery/Settery
        public string Name
        {
            get
            {
                return name;
            }
            set
            {
                name = value;
            }
        }

        public int Zkusenosti
        {
            get
            {
                return zkusenosti;
            }
            set
            {
                zkusenosti = value;
            }
        }

        public int Uder
        {
            get
            {
                return uder;
            }
            set
            {
                uder = value;
            }
        }

        public int Obrana
        {
            get
            {
                return obrana;
            }
            set
            {
                obrana = value;
            }
        }

        public int Level
        {
            get
            {
                return level;
            }
            set
            {
                level = value;
            }
        }

        #endregion

        public Bojovnik(string name = "", int zkusenosti = 0, int uder = 0, int obrana = 0, int level = 1)
        {
            Name = name;
            Zkusenosti = zkusenosti;
            Uder = uder;
            Obrana = obrana;
            Level = level;
        }

        public void PridatZkusenosti(int add)
        {
            Zkusenosti += add;

            if (Zkusenosti >= 10 * Level)
            {
                Zkusenosti -= 10 * Level;
                ZvedniLevel();
                ZvednoutSiluUderu(2);
                ZvednoutObranu(1);
            }

            if (Zkusenosti < 0)
                Zkusenosti = 0;
        }

        protected void ZvedniLevel()
        {
            Level++;
        }

        protected void ZvednoutSiluUderu(int add)
        {
            Uder += add;
        }

        protected void ZvednoutObranu(int add)
        {
            Obrana += add;
        }

        public override string ToString()
        {
            return "Bojovnik " + Name + " (level " + Level + ") má " + Zkusenosti + " zkušeností, síla úderu " + Uder + " a obrana " + Obrana + "\n";
        }
    }
Nahlásit jako SPAM
IP: 89.102.32.–
Alena Reichlová
~ Anonymní uživatel
2 příspěvky
9. 11. 2011   #3
-
+3
-
Zajímavé

#1 Daník Rantoš
Zejtra si promluvíme, pane Rantoš.

S pozdravem Mgr. Reichlova

Nahlásit jako SPAM
IP: 213.195.226.–
Pavel
~ Anonymní uživatel
383 příspěvků
9. 11. 2011   #4
-
0
-

A sakra paní učitelka z Ječné se asi zlobí:-D......

Mgr. co místo zítra píše zejtra :-D ....

Bývalý student

Nahlásit jako SPAM
IP: 88.101.66.–
amertak0
Návštěvník
9. 11. 2011   #5
-
0
-

Tady to začíná být zajímavé :D

Nahlásit jako SPAM
IP: 89.102.32.–
Wagner Daniel
~ Anonymní uživatel
1 příspěvek
10. 11. 2011   #6
-
0
-

Nevím kdo tohle zfalšoval, ale daník se na tohle rozhodně neptal, nehledě na to, že sedí vedle mě a ktýhle práci ještě ani nedostal zadání.

Jo a kdyby to psal daník, tak si do jména přidá Ing. jak je jeho zvykem...

Nahlásit jako SPAM
IP: 85.161.20.–
Tomáš Komender
~ Anonymní uživatel
1 příspěvek
10. 11. 2011   #7
-
0
-

Vážený pane Rantoši a Wágnere.

Zadání máte k dispozici nejméně týden předem. Ikdyž je zadáno pro jinou třídu, můžete vědět, že zadání jsou totožná.Dle logů LSD web serveru byl soubor vložen 31.10.2011 v 10:22  a pro Vaši třídu konkrétně 3.11.2011 v 10:34, což znamená, že zadání k této práci dostal, stejně tak jako každý jiný student.

Mimochodem, výmluva "on to někdo zfalšoval" používají třináctiletí chlapečci v hrách jako jsou různe MMORPG či FPS typu "já nehackoval, to byl brácha/kamarád/atp.."

S přáním krásného zbytku dne, Tomáš Komender.

PS: :-)
 

Nahlásit jako SPAM
IP: 62.168.43.–
Alena Reichlová
~ Anonymní uživatel
2 příspěvky
10. 11. 2011   #8
-
-1
-
Mimo téma

Dobře Tome, žádný sraní se studentama!

Nahlásit jako SPAM
IP: 83.208.100.–
10. 11. 2011   #9
-
0
-

#8 Alena Reichlová
Vážený anonyme, chovejte se prosím slušně a nevydávejte se za jiné uživatele. Je to v rozporu s pravidly diskuze.

Nahlásit jako SPAM
IP: 91.217.52.–
Dušan Janošík | web: djanosik.cz, @djanosik
Marek Kyzivát
~ Anonymní uživatel
1 příspěvek
10. 11. 2011   #10
-
0
-

" L , O , L " :D tak to je mazec lidi :D

Nahlásit jako SPAM
IP: 109.80.61.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 7 hostů

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý