Mikuláš je tu! Získaj 90 % extra kreditov ZADARMO s promo kódom CERTIK90 pri nákupe od 1 199 kreditov. Len do nedele 7. 12. 2025! Zisti viac:
NOVINKA: Najžiadanejšie rekvalifikačné kurzy teraz s 50% zľavou + kurz AI ZADARMO. Nečakaj, táto ponuka dlho nevydrží! Zisti viac:

Diskusia – 7. diel - Bojovník do arény

Späť

Upozorňujeme, že diskusie pod našimi online kurzami sú nemoderované a primárne slúžia na získavanie spätnej väzby pre budúce vylepšenie kurzov. Pre študentov našich rekvalifikačných kurzov ponúkame možnosť priameho kontaktu s lektormi a študijným referentom pre osobné konzultácie a podporu v rámci ich štúdia. Toto je exkluzívna služba, ktorá zaisťuje kvalitnú a cielenú pomoc v prípade akýchkoľvek otázok alebo projektov.

Komentáre
Posledné komentáre sú na spodnej časti poslednej stránky.
Avatar
Petr.M
Člen
Avatar
Petr.M:15.12.2013 1:25

Dotaz vyřešen, jsem úplně blbej :)

Odpovedať
Sometimes you just do things. - Scott Jurek
Avatar
Odpovedá na David Hartinger
Zdeněk Pavlátka:4.2.2014 17:18
int zraneni = uder - (obrana + kostka.hod());
if (zraneni > 0)
{
        zivot -= zraneni;
        zprava = String.Format("{0} utrpěl poškození {1} hp", jmeno, zraneni);
        if (zivot <= 0)
        {
                zivot = 0;
                zprava += " a zemřel";
        }

} else
        zprava = String.Format("{0} odrazil útok", jmeno);
NastavZpravu(zprava);

V kódu nastavíš hodnotu atributu zprava a na konci zavoláš metodu, která ji nastaví na její vlastní hodnotu?

Editované
Odpovedať
Kolik jazyků umíš, tolikrát jsi programátor.
Avatar
potkolenky
Člen
Avatar
potkolenky:11.2.2014 16:36

Ahoj, proc musime predavat bojovnikum kostku? Hned na zacatku classu mame private Kostka kostka, neznamena to, ze pri vytvoreni kazdy bojovnik dostane prave tu zadouci kostku?

Avatar
David Hartinger
Vlastník
Avatar
Odpovedá na potkolenky
David Hartinger:11.2.2014 16:37

Ne, to znamená jen že bojovník má atribut typu kostka. Samo o sobě to do něj nic nevloží. To je jako by ses ptal proč předávat věk člověka při jeho vytvoření, když máme napsáno private int vek. Ten věk se tam sám nevloží.

Odpovedať
New kid back on the block with a R.I.P
Avatar
potkolenky
Člen
Avatar
potkolenky:11.2.2014 17:34

Ano, uz jsem na to prisel, sedim u toho cely den a prilis moc veci s nazvem kostka mi jde na mozek:) Dekuju za odpoved, at se dari

Avatar
David Hartinger
Vlastník
Avatar
Odpovedá na potkolenky
David Hartinger:11.2.2014 17:37

To je v pohodě, měl jsem z referencí taky prvně guláš :P

Odpovedať
New kid back on the block with a R.I.P
Avatar
D0ll0k
Člen
Avatar
D0ll0k:31.8.2014 13:15

Pěkný tutoriál. Jenže nechápu to, jak se má dát do metody Utoc() parametr instance bojovníka. To mám dát:

public void Utoc(Bojovnik)
        {
            int uder = utok + kostka.Hod();
            souper.BranSe(uder);
        }

Tohle mi hlásí chybu. A taky jsem nikde nezaregistroval, že by se vytvořil souper.
Mohl by mi někdo prosím poradit?

Odpovedať
Veni, vidi, programmato
Avatar
Odpovedá na D0ll0k
Matěj Kripner:31.8.2014 13:34

Trida Bojovnik je datový typ podobně jako String nebo int. Pokud chceš vytvořit parametr u funkce, musíš definovat jeho datový typ(Bojovnik) a jeho jméno. To co jsi vytvořil je podobné, jako kdybys napsal

public void Utoc(int)
{

}

Správně je to tedy takto:

public void Utoc(Bojovnik souper)
{
int uder = utok + kostka.Hod();
souper.BranSe(uder);
}
Avatar
D0ll0k
Člen
Avatar
Odpovedá na Matěj Kripner
D0ll0k:31.8.2014 14:32

No jó. Já jsem úplně blbej, zapoměl jsem napsat jméno. Abych řekl pravdu mám v tom trochu guláš. Ty výrazy úplně všechny neznám. Díky

Odpovedať
Veni, vidi, programmato
Avatar

Člen
Avatar
:22.9.2014 18:17

Ahojte. Chtěl jsem si udělat takovou jednoduchou karetní hru s fotbalisty, kde by měl každý samozřejmě nějaké atributy. Kód je zatím takový:
Class Karty

public string Jmeno;
        public int Rating;
        public int Pace;
        public int Dribling;
        public int Shooting;
        public int Defensive;
        public int Passing;
        public int Physical;
        public string NazevTymu;

        public Karty(string jmeno, int rating, int pace, int dribling, int shooting, int defensive, int passing, int physical)
        {
            Jmeno = jmeno;
            Rating = rating;
            Pace = pace;
            Dribling = dribling;
            Shooting = shooting;
            Defensive = defensive;
            Passing = passing;
            Physical = physical;
        }

        public string zadejNazevTymu()
        {
            Console.WriteLine("Nyní zadej název svého týmu");
            NazevTymu = Console.ReadLine();
            return NazevTymu;
        }

Class Program

Karty[] hraci = new Karty[20];
            hraci[0] = new Karty("Lionel Messi", 90, 94, 93, 87, 25, 82, 71);

(Pak tam mám samozřejmě všech 20 hráčů napsaných)

A nyní jde o to, že jsem chtěl vytvořit metodu pro zadání názvu týmu. Zatím je to jen SP, ale třeba k tomu jednou přidám i MP, a tak jsem chtěl mít možnost to znovupoužít. Vtip je ale v tom, že tu metodu můžu vyvolat/použít, jen pokud ji napasuji na konkrétního hráče (např. hraci[0].zadej­NazevTymu()), přičemž těch se to nijak netýká.
Jak to udělat, aby se ta metoda "nevázala" na hráče? Díky předem :)

Posledné komentáre sú na spodnej časti poslednej stránky.
Robíme čo je v našich silách, aby bola tunajšia diskusia čo najkvalitnejšia. Preto do nej tiež môžu prispievať len registrovaní členovia. Pre zapojenie sa do diskusie sa zaloguj. Ak ešte nemáš účet, zaregistruj sa, je to zadarmo.

Zobrazené 10 správy z 78.