Diskuze: Pomoc s lehkou karetní hrou (Konzolová aplikace)
Zobrazeno 6 zpráv z 6.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
Pár rad:
K první otázce. Mohl bys přidat do první podmínky kontrolu, jestli není překročen počet karet.
if(volba == "ano" && kartyHrace < 21 && kartyPC < 21)
A druhé otázce nerozumím, zkus ji přeformulovat prosím.
Ta druhá otázka je trošku krkolomná
Myslíš něco ve stylu, pokud je vygenerované číslo větší jak dva, tak se
ti do konzole napíše "Dostal jsi číslo x"
Jestli ano, ulož si nejdříve vygenerované číslo do proměnné a následně
se koukni, zdali je číslo větší nežli dva
int cislo = nahodnaCisla.Next(0, 11);
if(cislo > 1)
{
Console.WriteLine("Dostal/a jsi " + cislo.ToString() + " karty");
}
kartyHrace += cislo;
Měl jsem na mysli, jak upravit kód tak, aby mi to vyhodilo nějakou hlášku např. "překročil jste limit". Takhle když si napsáním "ano" přidává hráč karty, tak po napsání "ne" se mu to vyhodnotí a napíše to buď remíza, prohra apod. Když si ale hráč bere přes "ano" další a další karty, tak jde překročit číslo 21 lehce (21 má být limit k výhře, protože čím blíž jste tomu číslu, tak tím určí jestli vyhraje hráč nebo počítač, kdo je blíž vyhrává) Já ale překročit číslo 21 po přidávání karet přes "ano" nechci. Zkoušel jsem to obejít amatérsky přes to
else if (kartyHrace >21)
{
Console.WriteLine("Přesáhl/a jste limit. Prohráváte ! ");
}
Jenže u tohohle musí hráč po překročení limitu napsat "ne". Rád bych,
aby to automaticky vyhodilo nějakou tu hlášku při (číslo > 21).
Co se týče goto, tak jsem to našel tuhle hru v jedné knížce na jednoduché
hry, tam to ale není pojištěné vůbec a při překročení čísla 21
nedokáže hra dál odpovědět. Proto jsem to amatérsky obešel, protože jsem
začátečník a jinak jsem to nevymyslel Díky moc za pomoc, doufám že
jsem svůj problém popsal lépe
Stačí si někam (do nějaké proměnné) ukládat součet hodnot na kartách, které se "rozdávají" hráči. Po rozdání každé karty se její hodnota přičte a zkontroluje se součet. Dokud je součet menší než 21, nabídne možnost líznutí další karty Jakmile se nějakou kartou dostanu přes 21, vyskočí hláška a další kartu už nenabídne...
Zobrazeno 6 zpráv z 6.