Vadite svoje programiranje Python z nekaj preproste obdelave besedila in sprejemanja odločitev, da ustvarite igro, ki jo je mogoče igrati.
Besedilna pustolovska igra je zabaven projekt, ki se ga lahko lotite, če se učite programirati. S Pythonom lahko naredite besedilno pustolovsko igro, jo zaženete v ukazni vrstici in spremenite zgodbo glede na besedilo, ki ga igralec vnese.
Skript Python bo zajemal več vrst temeljnih konceptov programiranja. To vključuje izjave za tiskanje, stavke if in funkcije.
Kako ustvariti skript Python in dodati vsebino zgodbe
Skript lahko ustvarite s standardno besedilno datoteko s pripono .py. Če niste seznanjeni s sintakso Python, si oglejte nekaj osnovni primeri Pythona, ki vam lahko pomagajo, da se ga hitreje naučite. Lahko pogledate tudi druge uporabni Python enovrstičnici za opravljanje določenih nalog.
V glavni funkciji datoteke Python nastavite svojo zgodbo in pozdravno sporočilo.
- Ustvarite novo datoteko z imenom "AdventureGame.py".
- V datoteko dodajte glavno zagonsko funkcijo. Funkcija bo vključevala kratko uvodno zgodbo, ki bo igralca pozdravila v pustolovski igri. Nato bo poklical drugo imenovano funkcijo introScene().
če __ime__ == "__glavni__":
medtemPrav:
natisni("Dobrodošli v pustolovski igri!")
tiskanje("Kot navdušen popotnik, ste se odločili obiskati pariške katakombe.")
natisni("Vendar se med raziskovanjem znajdete izgubljeni.")
natisni("Lahko se odločite za hojo v več smereh, da bi našli izhod.")
print("Naj začetekz tvoje ime: ")
ime = vnos()
natisni("Vso srečo, " +ime+ ".")
introScene()
Kako ustvariti več prizorov in možnosti v zgodbi
Vaša zgodba bo vsebovala več prizorov ali "sob". Ustvarite lahko funkcijo za vsak prizor, tako da jo lahko pozneje znova uporabite, če igralec znova vstopi v isto sobo.
Vsak prizor bo imel tudi različne izbire, kam iti. Pred kodiranjem scenarijev je dobro začrtati svojo zgodbo, da se prepričate, da je vaša zgodba dobro organizirana.
Vsak prizor bo imel seznam veljavnih navodil in stavek if za več poti, ki jih igralec lahko ubere. Glede na pot, ki jo ubere igralec, bo program poklical naslednji prizor.
Ustvarite funkcije za prizore, ki se bodo pojavili v zgodbi.
- Ustvarite introScene() funkcijo nad glavno funkcijo. Dodajte sporočilo in navodila, po katerih lahko igralec hodi.
defintroScene():
navodila = ["levo","prav","naprej"]
natisni("Ste na razpotju in lahko se odločite, da greste po katerem koli od štirih hodnikov. Kam bi rad šel?")
uporabniški vnos = ""
medtem uporabniški vnos ne v navodila:
natisni("Možnosti: levo/desno/nazaj/naprej")
userInput = input()
če je uporabniški vnos == "levo":
showShadowFigure()
elif uporabniški vnos == "prav":
pokažiSkeletons()
elif uporabniški vnos == "naprej":
hauntedRoom()
elif uporabniški vnos == "nazaj":
natisni("Ugotovite, da se ta vrata odpirajo v steno.")
drugače:
natisni("Vnesite veljavno možnost.") - Odvisno od uporabnikovega vnosa bo program poklical drugo sceno. Na primer, če igralec vnese "levo", bo program prikazal prizor showShadowFigure() igralcu. Če gre igralec iz te sobe nazaj, ga bo igra vrnila na uvodno sceno. Če gredo levo ali desno, bodo vstopili v drugo sobo ali zašli v slepo ulico.
defshowShadowFigure():
navodila = ["prav","nazaj"]
natisni("V daljavi vidite temno senčno postavo. Prestrašeni ste. Kam bi rad šel?")
uporabniški vnos = ""
medtem uporabniški vnos ne v navodila:
natisni("Možnosti: desno/levo/nazaj")
userInput = input()
če je uporabniški vnos == "prav":
cameraScene()
elif uporabniški vnos == "levo":
natisni("Ugotovite, da se ta vrata odpirajo v steno.")
elif uporabniški vnos == "nazaj":
introScene()
drugače:
natisni("Vnesite veljavno možnost.") - Dodajte prizor kamere, če zavijejo desno. Tu lahko igralec najde enega od izhodov. Pokličite prenehati() funkcijo za konec igre. Igralec se lahko še vedno odloči za pomik nazaj na prejšnji prizor.
defcameraScene():
navodila = ["naprej","nazaj"]
natisni("Vidite kamero, ki je padla na tla. Nekdo je bil tukaj pred kratkim. Kam bi rad šel?")
uporabniški vnos = ""
medtem uporabniški vnos ne v navodila:
natisni("Možnosti: naprej/nazaj")
userInput = input()
če je uporabniški vnos == "naprej":
natisni("Uspelo ti je! Ti'našel sem izhod.")
prenehati()
elif uporabniški vnos == "nazaj":
showShadowFigure()
drugače:
natisni("Vnesite veljavno možnost.") - Nazaj na začetek pustolovske igre, še vedno boste morali dodati funkcije za preostale prizore. Dodajte hauntedRoom() prizor, če se igralec odloči premakniti naprej. To bo tudi končalo igro, odvisno od izbire igralca.
defhauntedRoom():
navodila = ["prav","levo","nazaj"]
natisni("Slišiš čudne glasove. Mislite, da ste prebudili nekaj mrtvih. Kam bi rad šel?")
uporabniški vnos = ""
medtem uporabniški vnos ne v navodila:
natisni("Možnosti: desno/levo/nazaj")
userInput = input()
če je uporabniški vnos == "prav":
print("Več goulom podobnih bitij začetek nastajajoče kot vstopiš v sobo. Ti so ubit.")
prenehati()
elif uporabniški vnos == "levo":
natisni("Uspelo ti je! Ti'našel sem izhod.")
prenehati()
elif uporabniški vnos == "nazaj":
introScene()
drugače:
natisni("Vnesite veljavno možnost.") - V igro lahko dodate tudi več zanimivih vsebin. Na samem vrhu datoteke ustvarite globalno spremenljivko, imenovano "orožje". To bo bodisi resnično ali napačno, odvisno od tega, ali ga igralec najde.
orožje = False
- V eni od sob nastavite spremenljivko orožja na true, če ga igralec najde. Igralec ga lahko po potrebi uporabi v sosednji sobi.
defshowSkeletons():
navodila = ["nazaj","naprej"]
globalno orožje
tiskanje("Vidiš zid okostnjakov kot stopiš v sobo. Nekdo te opazuje. Kam bi rad šel?")
uporabniški vnos = ""
medtem uporabniški vnos ne v navodila:
natisni("Možnosti: levo/nazaj/naprej")
userInput = input()
če je uporabniški vnos == "levo":
natisni("Ugotovite, da se ta vrata odpirajo v steno. Odprete nekaj suhih zidov in odkrijete nož.")
orožje = Prav
elif uporabniški vnos == "nazaj":
introScene()
elif uporabniški vnos == "naprej":
strangeCreature()
drugače:
natisni("Vnesite veljavno možnost.") - Če igralec najde orožje, lahko ubije sovražnika v sosednji sobi in poišče drug izhod. V nasprotnem primeru jih bo sovražnik ubil.
defčudno bitje():
dejanja = ["boj","pobegniti"]
globalno orožje
tiskanje("Pojavilo se je nenavadno bitje, podobno goljubu. Lahko tečete oz boriti se. Kaj bi radi narediti?")
uporabniški vnos = ""
medtem uporabniški vnos ne v dejanja:
natisni("Možnosti: beg/boj")
userInput = input()
če je uporabniški vnos == "boj":
če je orožje:
print("Vi ubiti goul z nož ti našel prej. Po če greste naprej, boste našli enega od izhodi. Čestitke!")
drugače:
natisni("Golu podobno bitje te je ubilo.")
prenehati()
elif uporabniški vnos == "pobegniti":
pokažiSkeletons()
drugače:
natisni("Vnesite veljavno možnost.")
Kako zagnati skript Python
Skript lahko zaženete s terminalom ali ukaznim pozivom. Ko vnesete vnos v terminal, se bo zgodba nadaljevala z naslednjim prizorom.
- S pomočjo terminala ali ukaznega poziva se pomaknite do mesta, kjer ste shranili datoteko.
cd C:\Uporabniki\Sharl\Desktop\Python
- Zaženite skript.
pythonAdventureGame.py
- Začetno sporočilo vas bo pozdravilo, da začnete igrati igro.
- Vnesite med razpoložljivimi možnostmi na seznamu, kot so "levo", "desno" ali "nazaj". Če vnesete neveljaven vnos, vas bo igra pozvala k veljavnemu.
- Igro lahko tudi ponovite, da izberete drugo pot.
Tukaj lahko prenesete celotno izvorno kodo projekta GitHub repozitorij.
Ustvarite preprosto igro z uporabo samo enega skripta Python
Besedilno pustolovsko igro lahko ustvarite s skriptom Python in jo zaženete v terminalu ali ukazni vrstici. Znotraj datoteke Python lahko predvajalniku predstavite pozdravno sporočilo in začetno zgodbo. Igralec lahko nato vnese svoja dejanja glede na možnosti, ki jih predstavite.
Če želite postati bolj zaokrožen razvijalec Pythona, si lahko ogledate nekaj uporabnih orodij, ki jih lahko uporabite ali integrirate s Pythonom.