Igranje je ena od oblik zabave, ki je na voljo ljudem. Igre vseh vrst so na voljo na spletu, v mobilnih napravah, namiznih računalnikih itd. Zdaj ni čas za ustvarjanje ene od teh zahtevnih iger.
Z uporabo Pythona bomo naredili igro tic-tac-toe CLI. Uporabimo Python za izdelavo preproste igre Tic Tac Toe. Pomagal vam bo pri ustvarjanju logike igre in učenju organiziranja kode.
Križci in krožci
Preden začnemo kodirati, sem mislil, da bi na hitro povzel igro in razpravljal o svojem načrtu za njen razvoj.
Najprej bomo postavili predpostavko, da X-ji vedno prevzamejo pobudo in se prvi premaknejo, kar daje uporabniku možnost ukrepanja.
S konzole bo vneseno število med 1 in 9. V mreži, kjer vsako število ustreza drugemu številu (zgoraj levo je 1, spodaj desno je 9).
Računalnik bo samodejno določil in naredil svojo potezo, ko se uporabnik premakne. Uporabil bom eno primarno igralno zanko, ki kliče več različnih rutin.
Katera funkcija se končuje, je verjetno označena v vsaki glavi te besedilne lekcije.
Oblikovanje plošče
Našo ploščo bomo prikazali z uporabo mreže, kot sem že omenil. Za to bomo v Pythonu naredili seznam z imenom board, ki se bo začel z 10 praznimi vrednostmi.
Ker lahko uporabnik vnese samo številke od 1 do 9, ne pa od 0 do 8, imamo 10 praznih vrednosti namesto 9. Da bi stvari poenostavili, bomo prvemu vnosu na seznamu dodelili vrednost »prazno besedilo«.
Na ta način lahko uporabimo 1–9 namesto 0–8 za indeksiranje vnosov na našem seznamu.
vstavipis()
Letter in Pos bosta dva vhoda za to funkcijo. Zahtevano pismo bo samo postavil na zahtevano mesto.
spaceIsFree(pos)
Preprosto povedano, ta metoda nas bo obvestila, če je navedeno območje prosto. Zato tam že ni pisma. Pos, njegov edini argument, bo celo število med 1 in 9.
tiskalna plošča (plošča)
Tabla je poslana kot argument tej metodi, ki jo prikaže na konzoli.
jeZmagovalec()
Glede na trenutno tablo nas bo ta funkcija obvestila, če je priložena črka zmagala. Ima dva parametra: le in board (pismo).
To mora biti "X" ali "O." Preprosto poglejte, ali je navedena črka prisotna na vsaki potencialni zmagovalni liniji na plošči.
glavni ()
Ko želimo začeti igro, bomo poklicali to metodo. Poklical bo vsako posamezno od mnogih funkcij našega programa in usmeril, kako naj se program izvaja.
isBoardFull()
Ko je podana kot vnos, bo ta metoda preprosto vrnila True, če je tabla polna, in False v nasprotnem primeru.
igralecMove()
Pri tej metodi bomo od uporabnika zahtevali premik in ga potrdili. Črka bo dodana na tablo, če je poteza zakonita. Če ne, bomo še naprej zahtevali povratne informacije uporabnika.
CompMove() – AI
AI se bo zdaj začel. Ta funkcija bo nadzorovala gibanje računalnikov. Ocenil bo tablo in izbral najboljšo potezo.
Sledi seznam algoritmov, ki jih bomo uporabili za to.
- Če trenutnega koraka ni mogoče dokončati, nadaljujte z naslednjim.
- Če lahko, naredite zmagovalno potezo.
- Premaknite se na ta položaj ob naslednjem koraku, če ima igralec potencialno zmagovalno potezo.
- Izberite vogal in ga obrnite. Če je na voljo več možnosti, izberite naključno.
- Postavite se na sredino.
- Razmislite o enem od robov. Če je na voljo več možnosti, izberite naključno.
- Če se ni mogoče premakniti, se igra konča z izenačenjem.
selectRandom()
Glede na seznam možnih lokacij bo ta funkcija naključno izbrala dejanje, ki ga bo izvedla.
Začetek igre
Igro lahko zdaj začnemo, ko smo končali vse naloge. Vse, kar bi morali storiti, je poklicati main, če bi radi samo enkrat zagnali igro.
Toda v naši situaciji želimo, da se igra nadaljuje, dokler se uporabnik ne odloči, da ne želi več igrati, zato bomo glavni vrstici dodali majhno zanko while.
Popolna koda
Tukaj je celotna koda za našo igro, ki je zdaj končana.
izhod
zaključek
Ura!
Igra, ki ste jo naredili povsem iz nič. To ni igra, ki jo igramo redno. Pomaga pa pri pisanju logike in ohranjanju jasne strukture v kodi.
Srečno kodiranje!
Pustite Odgovori