Program Pexeso je určen pro dva aľ čtyři hráče pexesa.Po spuątění se objeví hrací plocha se zakrytými kartičkami a čtyřmi zelenými panely hráčů v rozích okna. Jak praví jednořádková nápověda na spodu okna, v tuto chvíli se jeątě nehraje. Uľivatelé, budoucí hráči pexesa, zadají svá jména do textových políček na čtyřech panelech. Hraje-li méně neľ plný počet hráčů, je třeba u nepouľitých panelů políčka vymazat.
Volbou Začít hru z nabídky Hra se hra spouątí. Počítač zamíchá kartičky pexesa, skryje nepotřebné panely hráčů a zvýrazní panel prvního hráče, který hru zahajuje. Hráč klepnutím zvolí dvě kartičky, prohlédne si je a dá stejnou příleľitost i protihráčů a pak je opět přiklopí. Automaticky se zvýrazní panel druhého hráče a hráči se tak pravidelně střídají.
Jakmile hráč narazí na dvě stejné kartičky, přemístí se kartičky z hrací plochy na hráčův panel a hráči se přičte jeden bod. V souladu s pravidly pexesa má pak právo odkrývat kartičky jeątě jednou.
Hra končí vyčerpáním vąech kartiček na hrací ploąe. Jakmile k tomu dojde, počítač hru sám formálně zakončí vyhláąením výsledků. Předčasně lze hru ukončit volbou z nabídky Hra, kdy počítač navíc odkryje vąechny zbylé kartičky na hrací ploąe, a samozřejmě téľ ukončením celého programu.
Po skončení hry mají uľivatelé opět moľnost zadat do panelů jména hráčů a hru spustit, kartičky se samozřejmě zamíchají jinak.
Program Pexeso byl napsán v prostředí Delphi 3, jeho jádrem je jediný formulář s připravenými panely, řádkovou nápovědou, nabídkami a rovněľ skrytým seznamem obrázků kartiček. Po spuątění se navíc na rací ploąe vytvoří 64 kartiček pexesa - komponent typuTImage
.Pro celou hru pexesa je klíčová vlastnost
stav
celého formuláře. Její čtení představuje obyčejné čtení z tajné proměnné, při zápisu do této proměnné se vąak vyvolá procedura, která kromě změny hodnoty interní proměnné provede téľ vąechny potřebné úpravy hrací plochy - zvýrazní jiného hráče, upraví řádkovou nápovědu, zkontroluje, jestli poslední dvě odkryté kartičky nenesly stejný obrázek a předá je v takovém případě úspěąnému hráči, případně zakončí celou hru vyhláąením výsledků.Vlastnost
stav
nabývá několika povolených hodnot. Hodnota-1
je nastavena, pokud se právě nehraje. Vyąąí hodnoty pak indikují, který hráč je právě na tahu astav mod 4
udává, v jaké fázi tahu je:0
, má-li odkrýt první kartičku,1
, má-li odkrýt druhou,2
, jsou -li jiľ obě kartičky odkryty a3
, čeká-li počítač na zakrytí druhé kartičky.Vąechny kartičky reagují na klepnutí myąi stejnou metodou
kartickaClick
, v níľ zároveň ověřují, zda je podle pravidel přípustné jejich otočení (jestli např. nejsou jiľ dvě kartičky odkryty). Vlastnosttag
kaľdé kartičky udává v absolutní hodnotě číslo obrázku, který byl kartičce při míchání přiřazen, znaménko této vlastnosti pak říká, zda je kartička právě zakryta nebo odkryta. Otočení kartičky tedy představuje jen kontrolu stavu hry, změnu obrázku kartičky, negování jejíhotagu
a zvýąení stavu hry o jednu fázi. O vąe ostatní se postará správce vlastnostitag
.Za povąimnutí stojí jeątě modifikovatelná velikost kartiček. V prostředí Delphi stačí změnit přísluąné vlastnosti v seznamu obrázků a načíst nové obrázky (musí být uloľeny s přadovými čísly 1 aľ 32, číslo 0 je vyhrazeno pro obrázek rubu kartiček), o velikost kartiček na hrací ploąe se jiľ postará program sám při jejich vytváření.
K dispozici je zde zdrojovy projekt pro Delphi 3. Soucasti baliku je i kompilovany spustitelny soubor, ale pochybuji, ze bude na vasem pocitaci opravdu spustitelny... Mam sve zkusenosti s Deplhi.Navic si muzete stahnout balik pouzitych obrazku a pripadne si projekt prekompilovat s vetsimi nebo mensimi kartickami. Staci zmenit velikost ImageListu a karticky znovu nacist. Hned po nacteni doporucuji zvolit Stretch a prepsat transparentni barvu na clNone, jinak se karticky importuji pitome.
pexeso.arj
(1 MB)
obrazky.arj
(160 kB)