Exersați-vă programarea Python cu procesarea simplă a textului și gestionarea deciziilor pentru a crea un joc care poate fi jucat.
Un joc de aventură text este un proiect distractiv pe care îl poți întreprinde dacă înveți cum să programezi. Puteți crea un joc de aventură text folosind Python, îl puteți rula într-o linie de comandă și puteți schimba povestea în funcție de textul introdus de jucător.
Scriptul Python va acoperi mai multe tipuri de concepte fundamentale de programare. Aceasta include instrucțiuni print, instrucțiuni if și funcții.
Cum să creați scriptul Python și să adăugați conținut de poveste
Puteți crea un script folosind un fișier text standard cu extensia .py. Dacă nu sunteți familiarizat cu sintaxa Python, aruncați o privire la unele exemple de bază Python care vă pot ajuta să-l învățați mai repede. Poți să te uiți și la altele util Python one-lineers pentru a îndeplini anumite sarcini.
În funcția principală a fișierului Python, configurați povestea și mesajul de bun venit.
- Creați un fișier nou numit „AdventureGame.py”.
- În fișier, adăugați funcția principală de pornire. Funcția va include o scurtă poveste de deschidere pentru a întâmpina jucătorul în jocul de aventură. Apoi va apela o altă funcție numită introScene().
dacă __nume__ == "__principal__":
in timp ceAdevărat:
imprimare("Bun venit la Jocul de Aventură!")
imprimare("La fel de un călător pasionat, te-ai hotărât să vizitezi Catacombele Parisului.")
imprimare("Cu toate acestea, în timpul explorării, te trezești pierdut.")
imprimare("Puteți alege să mergeți în mai multe direcții pentru a găsi o ieșire.")
print("Să startcu ta Nume: ")
nume = input()
imprimare("Mult noroc, " +nume+ ".")
introScene()
Cum să creați mai multe scene și opțiuni în poveste
Povestea ta va conține mai multe scene sau „camere”. Puteți crea o funcție pentru fiecare scenă, astfel încât să o puteți reutiliza mai târziu dacă jucătorul ajunge din nou să intre în aceeași cameră.
Fiecare scenă va avea, de asemenea, opțiuni diferite de unde să mergi. Este o idee bună să vă mapați povestea înainte de a codifica scenariile, pentru a vă asigura că povestea este bine organizată.
Fiecare scenă va avea o listă de direcții valide și o declarație if pentru căile multiple pe care le poate parcurge jucătorul. În funcție de calea pe care o parcurge jucătorul, programul va apela scena următoare.
Creați funcții pentru scenele care vor apărea în poveste.
- Creați introScene() funcție deasupra funcției principale. Adăugați un mesaj și indicațiile în care poate merge jucătorul.
defintroScene():
direcții = ["stânga","dreapta","redirecţiona"]
imprimare("Te afli la o răscruce de drumuri și poți alege să mergi pe oricare dintre cele patru holuri. Unde ai vrea sa mergi?")
userInput = ""
in timp ce userInput nu în directii:
imprimare("Opțiuni: stânga/dreapta/înapoi/înainte")
userInput = input()
dacă userInput == "stânga":
showShadowFigure()
elif userInput == "dreapta":
arată scheletele()
elif userInput == "redirecţiona":
HauntedRoom()
elif userInput == "înapoi":
imprimare("Veți descoperi că această ușă se deschide într-un perete.")
altfel:
imprimare("Vă rugăm să introduceți o opțiune validă.") - În funcție de intrarea utilizatorului, programul va apela o altă scenă. De exemplu, dacă jucătorul scrie „stânga”, programul va afișa scena showShadowFigure() către jucător. Din această cameră, dacă jucătorul merge înapoi, jocul îl va duce înapoi la scena introducerii. Dacă merg la stânga sau la dreapta, fie vor intra în altă cameră, fie vor ajunge într-o fundătură.
defshowShadowFigure():
direcții = ["dreapta","înapoi"]
imprimare("Vedeți o figură întunecată în umbră care apare în depărtare. Ești înfiorat. Unde ai vrea sa mergi?")
userInput = ""
in timp ce userInput nu în directii:
imprimare("Opțiuni: dreapta/stânga/înapoi")
userInput = input()
dacă userInput == "dreapta":
cameraScene()
elif userInput == "stânga":
imprimare("Veți descoperi că această ușă se deschide într-un perete.")
elif userInput == "înapoi":
introScene()
altfel:
imprimare("Vă rugăm să introduceți o opțiune validă.") - Adăugați scena camerei pentru dacă viră la dreapta. Aici jucătorul poate găsi una dintre ieșiri. Suna părăsi() funcția de a încheia jocul. De asemenea, jucătorul poate alege să se deplaseze înapoi la scena anterioară.
defcameraScene():
direcții = ["redirecţiona","înapoi"]
imprimare("Vedeți o cameră care a fost aruncată pe pământ. Cineva a fost aici recent. Unde ai vrea sa mergi?")
userInput = ""
in timp ce userInput nu în directii:
imprimare("Opțiuni: înainte/înapoi")
userInput = input()
dacă userInput == "redirecţiona":
imprimare("Ai făcut! Tu'am gasit o iesire.")
părăsi()
elif userInput == "înapoi":
showShadowFigure()
altfel:
imprimare("Vă rugăm să introduceți o opțiune validă.") - Înapoi la începutul jocului de aventură, va trebui în continuare să adăugați funcțiile pentru scenele rămase. Adaugă HauntedRoom() scena pentru dacă jucătorul alege să avanseze. Acest lucru va încheia și jocul în funcție de alegerea jucătorului.
defcamera bântuită():
direcții = ["dreapta","stânga","înapoi"]
imprimare("Auzi voci ciudate. Crezi că ai trezit unii dintre morți. Unde ai vrea sa mergi?")
userInput = ""
in timp ce userInput nu în directii:
imprimare("Opțiuni: dreapta/stânga/înapoi")
userInput = input()
dacă userInput == "dreapta":
print("Mai multe creaturi asemănătoare goul start în curs de dezvoltare la fel de intri in camera. Tu sunteți ucis.")
părăsi()
elif userInput == "stânga":
imprimare("Ai făcut! Tu'am gasit o iesire.")
părăsi()
elif userInput == "înapoi":
introScene()
altfel:
imprimare("Vă rugăm să introduceți o opțiune validă.") - De asemenea, puteți adăuga mai mult conținut interesant jocului. Creați o variabilă globală, în partea de sus a fișierului, numită „arma”. Va fi fie adevărat, fie fals, în funcție de dacă jucătorul îl găsește.
armă = Fals
- Într-una dintre camere, setați variabila armă la true dacă jucătorul o găsește. Jucătorul îl poate folosi în camera alăturată dacă este necesar.
defarată Schelete():
direcții = ["înapoi","redirecţiona"]
global armă
imprimare("Vedeți un zid de schelete la fel de intri in camera. Cineva te urmărește. Unde ai vrea sa mergi?")
userInput = ""
in timp ce userInput nu în directii:
imprimare("Opțiuni: stânga/înapoi/înainte")
userInput = input()
dacă userInput == "stânga":
imprimare("Veți descoperi că această ușă se deschide într-un perete. Deschizi o parte din gips-carton pentru a descoperi un cuțit.")
armă = Adevărat
elif userInput == "înapoi":
introScene()
elif userInput == "redirecţiona":
creatura ciudata()
altfel:
imprimare("Vă rugăm să introduceți o opțiune validă.") - Dacă jucătorul găsește arma, poate ucide inamicul în camera alăturată și poate găsi o altă ieșire. În caz contrar, inamicul îi va ucide.
defcreatura ciudata():
acțiuni = ["luptă","fugi"]
global armă
imprimare("A apărut o creatură ciudată asemănătoare unui goul. Poți fie să alergi sau lupta cu ea. Ce ai vrea să faci do?")
userInput = ""
in timp ce userInput nu în actiuni:
imprimare("Opțiuni: fugi/luptă")
userInput = input()
dacă userInput == "luptă":
dacă armă:
print("Tu ucide goul cu cuțitul tu găsite mai devreme. După mergând înainte, găsești unul de iesirile. Felicitări!")
altfel:
imprimare("Creatura asemănătoare Goul te-a ucis.")
părăsi()
elif userInput == "fugi":
arată scheletele()
altfel:
imprimare("Vă rugăm să introduceți o opțiune validă.")
Cum să rulați scriptul Python
Puteți rula scriptul folosind un terminal sau un prompt de comandă. Pe măsură ce introduceți intrarea în terminal, povestea va continua să avanseze la scena următoare.
- Folosind un terminal sau un prompt de comandă, navigați la locația în care ați stocat fișierul.
CD C:\Utilizatori\Sharl\Desktop\Python
- Rulați scriptul.
pitonAdventureGame.py
- Mesajul de deschidere vă va întâmpina să începeți să jucați.
- Tastați din opțiunile disponibile listate, cum ar fi „stânga”, „dreapta” sau „înapoi”. Dacă introduceți o intrare nevalidă, jocul vă va solicita una validă.
- De asemenea, puteți reda jocul pentru a alege o altă cale.
Puteți descărca codul sursă complet al proiectului de aici GitHub repertoriu.
Creați un joc simplu folosind un singur script Python
Puteți crea un joc de aventură text folosind un script Python și îl puteți rula într-un terminal sau linie de comandă. În interiorul fișierului Python, puteți prezenta jucătorului un mesaj de bun venit și o poveste inițială. Jucătorul poate introduce apoi acțiunile pe baza opțiunilor pe care le prezentați.
Dacă doriți să deveniți un dezvoltator Python mai complet, puteți arunca o privire la unele dintre instrumentele utile pe care le puteți utiliza sau integra cu Python.