Praktizējiet Python programmēšanu, veicot vienkāršu teksta apstrādi un lēmumu apstrādi, lai izveidotu spēlējamu spēli.
Teksta piedzīvojumu spēle ir jautrs projekts, ko varat uzņemties, ja mācāties programmēt. Varat izveidot teksta piedzīvojumu spēli, izmantojot Python, palaist to komandrindā un mainīt stāstu, pamatojoties uz spēlētāju ievadīto tekstu.
Python skripts aptvers vairāku veidu programmēšanas pamatjēdzienus. Tas ietver drukāšanas paziņojumus, if paziņojumus un funkcijas.
Kā izveidot Python skriptu un pievienot stāsta saturu
Varat izveidot skriptu, izmantojot standarta teksta failu ar paplašinājumu .py. Ja neesat pazīstams ar Python sintaksi, apskatiet dažus pamata Python piemēri, kas var palīdzēt to apgūt ātrāk. Var apskatīt arī citus noderīgi Python viena laineri noteiktu uzdevumu veikšanai.
Python faila galvenajā funkcijā iestatiet savu stāstu un sveiciena ziņojumu.
- Izveidojiet jaunu failu ar nosaukumu "AdventureGame.py".
- Failā pievienojiet galveno palaišanas funkciju. Funkcija ietvers īsu sākuma stāstu, lai sveiktu spēlētāju piedzīvojumu spēlē. Pēc tam tas izsauks citu izsaukto funkciju introScene().
ja __vārds__ == "__galvenais__":
kamērTaisnība:
drukāt ("Laipni lūdzam piedzīvojumu spēlē!")
drukāt("Kā Ja esat dedzīgs ceļotājs, jūs esat nolēmis apmeklēt Parīzes katakombas.")
drukāt ("Tomēr izpētes laikā jūs jūtaties apmaldījies.")
drukāt ("Varat izvēlēties staigāt vairākos virzienos, lai atrastu izeju.")
print ("Let's sāktar jūsu nosaukums: ")
nosaukums = ievade ()
drukāt ("Veiksmi, " +vārds+ ".")
introScene()
Kā stāstā izveidot vairākas ainas un opcijas
Jūsu stāstā būs vairākas ainas vai "istabas". Katrai ainai varat izveidot funkciju, lai vēlāk varētu to izmantot atkārtoti, ja atskaņotājs atkal nonāk tajā pašā telpā.
Katrai ainai būs arī dažādas izvēles, kur doties. Pirms scenāriju kodēšanas ieteicams izplānot savu stāstu, lai pārliecinātos, ka stāsts ir labi sakārtots.
Katrai ainai būs derīgu norāžu saraksts un ja-paziņojums par vairākiem ceļiem, ko spēlētājs var veikt. Atkarībā no ceļa, ko spēlētājs iet, programma izsauks nākamo ainu.
Izveidojiet funkcijas ainām, kas notiks stāstā.
- Izveidojiet introScene() funkcija virs galvenās funkcijas. Pievienojiet ziņojumu un norādes, kurās spēlētājs var ieiet.
defintroScene():
virzieni = ["pa kreisi","pa labi","uz priekšu"]
drukāt ("Jūs atrodaties krustcelēs un varat izvēlēties doties pa jebkuru no četriem gaiteņiem. Kur jūs vēlaties doties?")
userInput = ""
kamēr userInput nav iekšā norādes:
drukāt ("Iespējas: pa kreisi/pa labi/atpakaļ/uz priekšu")
userInput = ievade()
ja lietotāja ievade == "pa kreisi":
parādīt ShadowFigure()
elif userInput == "pa labi":
parādīt skeletus()
elif userInput == "uz priekšu":
Haunted Room ()
elif userInput == "atpakaļ":
drukāt ("Jūs atklājat, ka šīs durvis atveras sienā.")
cits:
drukāt ("Lūdzu, ievadiet derīgu opciju.") - Atkarībā no lietotāja ievades programma izsauks citu ainu. Piemēram, ja spēlētājs ieraksta "pa kreisi", programma parādīs ainu parādīt ShadowFigure() spēlētājam. Ja spēlētājs no šīs telpas atgriežas atpakaļ, spēle viņu atgriezīs ievada ainā. Ja viņi iet pa kreisi vai pa labi, viņi vai nu ieies citā telpā, vai nonāks strupceļā.
defparādīt ShadowFigure():
virzieni = ["pa labi","atpakaļ"]
drukāt ("Jūs redzat, kā tālumā parādās tumša ēnaina figūra. Tu esi izlīdis. Kur jūs vēlaties doties?")
userInput = ""
kamēr userInput nav iekšā norādes:
drukāt ("Iespējas: pa labi/pa kreisi/atpakaļ")
userInput = ievade()
ja lietotāja ievade == "pa labi":
kameras aina ()
elif userInput == "pa kreisi":
drukāt ("Jūs atklājat, ka šīs durvis atveras sienā.")
elif userInput == "atpakaļ":
introScene()
cits:
drukāt ("Lūdzu, ievadiet derīgu opciju.") - Pievienojiet kameras ainu, ja viņi pagriežas pa labi. Šeit spēlētājs var atrast vienu no izejām. Zvaniet uz atmest () funkcija, lai beigtu spēli. Spēlētājs joprojām var izvēlēties pāriet atpakaļ uz iepriekšējo ainu.
defkameraScene():
virzieni = ["uz priekšu","atpakaļ"]
drukāt ("Jūs redzat kameru, kas ir nomesta zemē. Kāds nesen šeit ir bijis. Kur jūs vēlaties doties?")
userInput = ""
kamēr userInput nav iekšā norādes:
drukāt ("Iespējas: uz priekšu/atpakaļ")
userInput = ievade()
ja lietotāja ievade == "uz priekšu":
drukāt ("Tu to izdarīji! Tu'esam atraduši izeju.")
atmest ()
elif userInput == "atpakaļ":
parādīt ShadowFigure()
cits:
drukāt ("Lūdzu, ievadiet derīgu opciju.") - Atgriežoties pie piedzīvojumu spēles sākuma, jums joprojām būs jāpievieno funkcijas atlikušajām ainām. Pievienojiet Haunted Room () aina, ja spēlētājs izvēlas virzīties uz priekšu. Tas arī beigs spēli atkarībā no spēlētāja izvēles.
defspoku istaba():
virzieni = ["pa labi","pa kreisi","atpakaļ"]
drukāt ("Jūs dzirdat dīvainas balsis. Jūs domājat, ka esat pamodinājis dažus mirušos. Kur jūs vēlaties doties?")
userInput = ""
kamēr userInput nav iekšā norādes:
drukāt ("Iespējas: pa labi/pa kreisi/atpakaļ")
userInput = ievade()
ja lietotāja ievade == "pa labi":
print("Vairāki gouliem līdzīgi radījumi sākt parādās kā tu ieej istabā. Tu ir nogalināts.")
atmest ()
elif userInput == "pa kreisi":
drukāt ("Tu to izdarīji! Tu'esam atraduši izeju.")
atmest ()
elif userInput == "atpakaļ":
introScene()
cits:
drukāt ("Lūdzu, ievadiet derīgu opciju.") - Varat arī pievienot spēlei interesantāku saturu. Izveidojiet globālu mainīgo pašā faila augšdaļā, ko sauc par "ieroci". Tas būs patiess vai nepatiess atkarībā no tā, vai spēlētājs to atradīs.
ierocis = Nepatiesi
- Vienā no istabām iestatiet ieroča mainīgo uz True, ja spēlētājs to atrod. Ja nepieciešams, spēlētājs to var izmantot blakus istabā.
defšovsSkeletoni():
virzieni = ["atpakaļ","uz priekšu"]
globāli ierocis
drukāt("Jūs redzat skeletu sienu kā tu ieej istabā. Kāds tevi vēro. Kur jūs vēlaties doties?")
userInput = ""
kamēr userInput nav iekšā norādes:
drukāt ("Iespējas: pa kreisi/atpakaļ/uz priekšu")
userInput = ievade()
ja lietotāja ievade == "pa kreisi":
drukāt ("Jūs atklājat, ka šīs durvis atveras sienā. Jūs atverat daļu no drywall, lai atklātu nazi.")
ierocis = Taisnība
elif userInput == "atpakaļ":
introScene()
elif userInput == "uz priekšu":
dīvains radījums ()
cits:
drukāt ("Lūdzu, ievadiet derīgu opciju.") - Ja spēlētājs atrod ieroci, viņš var nogalināt ienaidnieku nākamajā istabā un atrast citu izeju. Pretējā gadījumā ienaidnieks viņus nogalinās.
defdīvaina būtne():
darbības = ["cīnīties","bēgt"]
globāli ierocis
drukāt("Ir parādījusies dīvaina gulim līdzīga būtne. Jūs varat vai nu skriet vai cīnies ar to. Ko jūs vēlētos darīt?")
userInput = ""
kamēr userInput nav iekšā darbības:
drukāt ("Iespējas: bēgt/cīnīties")
userInput = ievade()
ja lietotāja ievade == "cīnīties":
ja ierocis:
print("Tu nogalināt gouls ar nazis tu atrasts agrāk. Pēc virzoties uz priekšu, jūs tādu atrodat no izejas. Apsveicu!")
cits:
drukāt ("Gūlam līdzīgais radījums tevi ir nogalinājis.")
atmest ()
elif userInput == "bēgt":
parādīt skeletus()
cits:
drukāt ("Lūdzu, ievadiet derīgu opciju.")
Kā palaist Python skriptu
Skriptu var palaist, izmantojot termināli vai komandu uzvedni. Ievadot ievadi terminālī, stāsts turpinās virzīties uz nākamo ainu.
- Izmantojot termināli vai komandu uzvedni, dodieties uz vietu, kur saglabājāt failu.
cd C:\Users\Sharl\Desktop\Python
- Palaidiet skriptu.
pitonsPiedzīvojumu spēle.py
- Sākuma ziņojums aicinās jūs sākt spēlēt spēli.
- Ievadiet no pieejamajām opcijām, piemēram, "pa kreisi", "pa labi" vai "atpakaļ". Ja ievadāt nederīgu ievadi, spēle liks jums ievadīt derīgu.
- Varat arī atskaņot spēli atkārtoti, lai izvēlētos citu ceļu.
Šeit varat lejupielādēt pilnu projekta avota kodu GitHub krātuve.
Izveidojiet vienkāršu spēli, izmantojot tikai vienu Python skriptu
Varat izveidot teksta piedzīvojumu spēli, izmantojot Python skriptu, un palaist to terminālī vai komandrindā. Python failā varat prezentēt atskaņotāju ar apsveikuma ziņojumu un sākotnējo stāstu. Pēc tam spēlētājs var ierakstīt savas darbības, pamatojoties uz jūsu piedāvātajām opcijām.
Ja vēlaties kļūt par visaptverošāku Python izstrādātāju, varat apskatīt dažus noderīgus rīkus, kurus varat izmantot vai integrēt ar Python.