Πίνακας περιεχομένων:
- Βήμα 1: Η ευρεία επισκόπηση
- Βήμα 2: Προαπαιτούμενα
- Βήμα 3: "Hello World" στο Pygame Zero
- Βήμα 4: Σχεδιάζοντας τον ηθοποιό σας
- Βήμα 5: Ελέγξτε τον Ηθοποιό
- Βήμα 6: Χτίζοντας το κομμάτι
- Βήμα 7: Συντριβή αυτοκινήτου
- Βήμα 8: Εκτελέστε το παιχνίδι στο Raspberry Pi
- Βήμα 9: Κερδίσατε;
- Βήμα 10: Συμπέρασμα
Βίντεο: Δημιουργήστε το πρώτο σας αγωνιστικό παιχνίδι: 10 βήματα
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:36
Εάν έχετε κάνει κάποια κωδικοποίηση Python και θέλετε να γράψετε ένα παιχνίδι που μπορεί να έχετε στο Pygame Zero.
Σε αυτό το σεμινάριο θα γράψουμε ένα απλό παιχνίδι αγώνων.
Βήμα 1: Η ευρεία επισκόπηση
Η ενότητα Pygame προσθέτει πολλές λειτουργίες που σας βοηθούν να γράψετε παιχνίδια σε Python.
Το Pygame Zero πηγαίνει ένα βήμα παραπέρα για να σας αφήσει να παραλείψετε τη δύσκολη διαδικασία δημιουργίας όλων αυτών των βρόχων παιχνιδιών και τη ρύθμιση της δομής του προγράμματος σας.
Το Pygame Zero είναι μια εξαιρετική επιλογή για όποιον θέλει να ξεκινήσει να γράφει παιχνίδια στον υπολογιστή στο Raspberry Pi ή σε οποιοδήποτε μηχάνημα Linux.
Θα χρειαστείς:
- Μηχανή που τρέχει λειτουργικό σύστημα Linux
- Επεξεργαστής για τη σύνταξη προγράμματος python
- Πληκτρολόγιο
- Λίγη φαντασία
Αρχεία:
github.com/AhmNouira/-Racing-Game
Βήμα 2: Προαπαιτούμενα
Αρχικά θα χρησιμοποιήσω τον φορητό υπολογιστή μου με λειτουργικό σύστημα Ubuntu 18.04. Στη συνέχεια, θα τρέξουμε το παιχνίδι στο Raspberry Pi στο βήμα 8.
Πριν συνεχίσετε με αυτό το σεμινάριο, βεβαιωθείτε ότι έχετε συνδεθεί ως χρήστης με δικαιώματα sudo.
Εγκατάσταση pip για Python 3
Ξεκινήστε ενημερώνοντας τη λίστα πακέτων χρησιμοποιώντας την ακόλουθη εντολή:
sudo apt ενημέρωση
Χρησιμοποιήστε την ακόλουθη εντολή για να εγκαταστήσετε το pip για την Python 3:
sudo apt εγκατάσταση python3-pip
επαληθεύστε την εγκατάσταση ελέγχοντας την έκδοση pip:
pip3 -ανατροπή
Εγκατάσταση του Pygame Zero
pip3 install pgzero --user
Αυτό θα εγκαταστήσει επίσης το Pygame. Προ-μεταγλωττισμένα πακέτα Pygame
Έτσι, το πρώτο βήμα στο ταξίδι σας θα είναι να ανοίξετε το Python 3 IDLE ή τον αγαπημένο σας επεξεργαστή python.
Βήμα 3: "Hello World" στο Pygame Zero
Από προεπιλογή, το παράθυρο Pygame Zero ανοίγει σε μέγεθος 800 pixel πλάτος και 600 pixel ύψος. Μπορείτε να προσαρμόσετε
το μέγεθος του παραθύρου σας, υπάρχουν δύο προδιαγεγραμμένες μεταβλητές που μπορείτε να ορίσετε, εάν συμπεριλάβετε WIDTH = 700 HIGH = 800.
Το Pygame zero παρέχει προκαθορισμένες λειτουργίες για τον χειρισμό του βρόχου παιχνιδιού που εκτελεί κανονικά:
Η συνάρτηση draw ()
Μπορούμε να γράψουμε αυτήν τη συνάρτηση στο πρόγραμμά μας όπως ακριβώς θα ορίζαμε μια συνάρτηση στην Python.
Το Pygame Zero ακολουθεί τους ίδιους κανόνες μορφοποίησης με το Python, οπότε θα πρέπει να φροντίσετε να κάνετε σωστή εσοχή στον κώδικά σας.
#!/usr/bin/python3 # ορίστε τον διερμηνέα
import pgzrun # import pgzero module WIDTH = 700 # width of the window HEIGHT = 800 # height of the window def draw (): # pygame μηδενική κλήρωση οθόνης. συμπλήρωση ((128, 128, 128)) # γεμίστε την οθόνη με RGB έγχρωμη οθόνη.draw.text ("Hello World!", (270, 320), # draw "Hello World!" color = (255, 255, 255), fontsize = 40) pgzrun.go ()
Πρώτα απ 'όλα πρέπει να αποθηκεύσετε το αρχείο προγράμματος και να του δώσετε ένα όνομα.
Στη συνέχεια, ανοίξτε ένα παράθυρο τερματικού, μεταβείτε στη θέση του αρχείου σας και πληκτρολογήστε:
./.py
Βήμα 4: Σχεδιάζοντας τον ηθοποιό σας
Τώρα που έχουμε το σκηνικό μας, μπορούμε να δημιουργήσουμε τους Ηθοποιούς μας, είναι δυναμικά αντικείμενα στο Pygame Zero.
Μπορούμε να φορτώσουμε έναν Ηθοποιό πληκτρολογώντας στην κορυφή του προγράμματος:
car = Actor ("racecar")
Στο Pygame Zero οι εικόνες μας πρέπει να αποθηκευτούν σε έναν κατάλογο που ονομάζεται εικόνες, δίπλα στο αρχείο του προγράμματος μας. Έτσι, ο Ηθοποιός μας θα έψαχνε ένα αρχείο εικόνας στο φάκελο εικόνων που ονομάζεται racecar.png. Θα μπορούσε να είναι ένα αρχείο GIF ή ένα JPG, αλλά συνιστάται οι εικόνες σας να είναι αρχεία-p.webp
Μπορείτε να ορίσετε τη θέση του στην οθόνη πληκτρολογώντας:
car.pos = 350, 560
Στη συνέχεια, στη συνάρτηση draw () μπορούμε να πληκτρολογήσουμε
car.draw () # σύρετε το αγωνιστικό μας αυτοκίνητο στην καθορισμένη θέση του
Το πλήρες πρόγραμμα θα έχει ως εξής:
#!/usr/bin/python3
εισαγωγή pgzrun ΠΛΑΤΟΣ = 700 # πλάτος παραθύρου ΥIGHΟΣ = 800 # ύψος αυτοκινήτου παραθύρου = Ηθοποιός ("racecar") car.pos = 350, 560 def draw (): # pygame μηδενική κλήρωση οθόνης. συμπληρώστε ((128, 128, 128)) # γεμίστε την οθόνη με car.draw () pgzrun.go ()
Δοκιμάστε το πρόγραμμά σας για να βεβαιωθείτε ότι λειτουργεί.
Βήμα 5: Ελέγξτε τον Ηθοποιό
Μόλις έχουμε το αυτοκίνητό μας να σχεδιάζει στην οθόνη, το επόμενο στάδιο είναι να επιτρέψουμε στον παίκτη να το μετακινήσει.
Μπορούμε να το κάνουμε αυτό με το πάτημα πλήκτρων. Μπορούμε να διαβάσουμε την κατάσταση αυτών των κλειδιών μέσα σε μια άλλη προκαθορισμένη συνάρτηση που ονομάζεται ενημέρωση ().
Η συνάρτηση ενημέρωσης ()
Αυτή η λειτουργία ελέγχεται συνεχώς ενώ το παιχνίδι εκτελείται.
Πρέπει να γράψουμε κάποιο κώδικα για να ανιχνεύσουμε πατήματα πλήκτρων των πλήκτρων βέλους και επίσης να κάνουμε κάτι γι 'αυτό.
Θα προσθέσουμε λοιπόν αυτή τη συνάρτηση στο πρόγραμμά μας
def ενημέρωση ():
if keyboard.left: car.x -= 2 if keyboard.right: car.x += 2 if keyboard.up: car.y -= 2 if keyboard.down: car.y += 2
Αυτές οι γραμμές κώδικα θα μετακινήσουν το αυτοκίνητο Actor αριστερά, δεξιά, εμπρός και πίσω.
Βήμα 6: Χτίζοντας το κομμάτι
Τώρα που έχουμε ένα αυτοκίνητο στο οποίο μπορούμε να κατευθύνουμε, χρειαζόμαστε μια πίστα για να το οδηγήσει.
Θα φτιάξουμε το κομμάτι μας από τους Ηθοποιούς, μία σειρά τη φορά. Θα χρειαστεί να φτιάξουμε λίστες για να παρακολουθούμε τους Ηθοποιούς που δημιουργούμε.
Θα χρειαστεί επίσης να ορίσουμε μερικές ακόμη μεταβλητές για το κομμάτι.
Στη συνέχεια, ας δημιουργήσουμε μια νέα συνάρτηση που ονομάζεται makeTrack (), Η συνάρτηση θα προσθέσει ένα κομμάτι Actor στα αριστερά και ένα στα δεξιά, και τα δύο χρησιμοποιώντας την εικόνα bare-p.webp
trackLeft = # λίστα για αποθήκευση αριστερών φραγμών
trackRight = # λίστα για αποθήκευση δεξιών φραγμών trackCount = 0 # μετράτε τον αριθμό των φραγμών trackPosition = 350 trackWidth = 150 # πλάτος μεταξύ αριστερού και δεξιού φραγμού def makeTrack (): # συνάρτηση για να φτιάξετε ένα barrie στο αριστερό και το δεξί παγκόσμιο trackCount, trackLeft, trackRight, trackPosition, trackWidth trackLeft.append (Ηθοποιός ("γυμνός", pos = (trackPosition-trackWidth, 0))) trackRight.append (Ηθοποιός ("γυμνός", pos = (trackPosition + trackWidth, 0))) trackCount += 1
Το επόμενο πράγμα που πρέπει να κάνουμε είναι να μετακινήσουμε τα τμήματα της πίστας κάτω από την οθόνη προς το αυτοκίνητο.
Ας γράψουμε μια νέα συνάρτηση που ονομάζεται updateTrack (), Αυτή η συνάρτηση ενημερώνεται όπου θα εμφανίζονται τα μπλοκ κομματιών. Τα κομμάτια του κομματιού δημιουργούνται από τυχαίους αριθμούς, έτσι ώστε κάθε αναπαραγωγή να είναι διαφορετική.
trackDriction = Λάθος
SPEED = 4 # ορίζει την ταχύτητα του παιχνιδιού από τυχαία εισαγωγή randint # εισαγωγή της κλάσης randint από τυχαία ενότητα def updateTrack (): καθολικό trackCount, trackPosition, trackDirection, trackWidth, SPEED b = 0 ενώ b
Ανατρέξτε στο αρχείο zip παρακάτω με το όνομα "RaceGameDemo".
Αν τρέξουμε τον κωδικό μας αυτή τη στιγμή, θα πρέπει να δούμε μια πίστα να σκαρφαλώνει προς το αυτοκίνητο. Το μόνο πρόβλημα είναι ότι μπορούμε να μετακινήσουμε το αυτοκίνητο πάνω από τα φράγματα της πίστας και θέλουμε να κρατήσουμε το αυτοκίνητο μέσα σε αυτά με κάποια ανίχνευση σύγκρουσης.
Βήμα 7: Συντριβή αυτοκινήτου
Πρέπει να βεβαιωθούμε ότι το αυτοκίνητό μας δεν αγγίζει την πίστα Ηθοποιοί.
μπορούμε επίσης να δοκιμάσουμε για συγκρούσεις χρησιμοποιώντας τη μέθοδο colliderect () στη συνάρτηση updateTrack ().
Σε αυτό το παιχνίδι θα έχουμε τρεις διαφορετικές καταστάσεις στο παιχνίδι αποθηκευμένες στο μεταβλητό μας παιχνίδι
- gameStatus == 0 # παιχνίδι εκτελείται
- gameStatus == 1 # τροχαίο ατύχημα
- gameStatus == 2 # παιχνίδι τελείωσε
Θα χρειαστεί να αλλάξουμε τη συνάρτηση draw () και τη συνάρτηση update () για να ανταποκριθούμε στη μεταβλητή gameStatus.
Τελευταίες πινελιές
Το μόνο που χρειάζεται να κάνουμε τώρα είναι να εμφανίσουμε κάτι εάν το gameStatus έχει οριστεί σε 1 ή 2, για παράδειγμα θα πρέπει να εμφανίσουμε ένα κόκκινο
σημαία, αν το αυτοκίνητο έπεσε. Μπορούμε να το κάνουμε με τον παρακάτω κώδικα:
screen.blit ("redflag", (230, 230))
Για να δούμε αν το αυτοκίνητο έχει φτάσει στον τερματισμό, θα πρέπει να μετρήσουμε πόσες ενότητες πίστας έχουν δημιουργηθεί και, στη συνέχεια, ίσως όταν φτάσουμε στο 200, να ορίσουμε το gameStatus στο 2. Στη συνέχεια, εμφανίστε την καρό σημαία:
screen.blit ("finishflag", (230, 230))
Θα εμφανίσουμε επίσης κάποιο κείμενο στην οθόνη όπως το τρέχον σκορ του παιχνιδιού.
Ρίξτε μια ματιά στην πλήρη λίστα κωδικών για να δείτε πώς ταιριάζει όλο αυτό.
Βήμα 8: Εκτελέστε το παιχνίδι στο Raspberry Pi
Το Raspberry Pi pgzero έχει εγκατασταθεί από προεπιλογή από την κυκλοφορία του Raspbian Jessie τον Σεπτέμβριο του 2015.
Απλώς ενημερώστε το Raspberry Pi χρησιμοποιώντας την εντολή:
sudo apt-get ενημέρωση
Μεταβείτε στη θέση του αρχείου σας και πληκτρολογήστε το τερματικό.
pgzrun.py
Βήμα 9: Κερδίσατε;
Μπορείτε να κάνετε το παιχνίδι πιο εύκολο ή πιο δύσκολο αλλάζοντας τη μεταβλητή trackWidth για να κάνετε το κομμάτι διαφορετικό πλάτος. Μπορείτε να αλλάξετε την τιμή του SPEED για να κάνετε το κομμάτι να κινηθεί γρηγορότερα ή πιο αργά.
Βήμα 10: Συμπέρασμα
Το Pygame Zero είναι μια εξαιρετική επιλογή για όποιον θέλει να ξεκινήσει να γράφει παιχνίδια στον υπολογιστή.
Εάν έχετε οποιαδήποτε ερώτηση φυσικά, μπορείτε να αφήσετε ένα σχόλιο. Για να δείτε περισσότερα σχετικά με τα έργα μου, επισκεφτείτε το κανάλι μου:
myYouTube
myTwitter
myLinkedin
Ευχαριστώ που διαβάσατε αυτό το διδακτικό ^^ και να έχετε μια όμορφη μέρα. Τα λέμε. Αχμέτ Νουίρα.
Συνιστάται:
Γράφοντας το πρώτο σας πρόγραμμα υπολογιστή: 10 βήματα
Γράφοντας το πρώτο σας πρόγραμμα υπολογιστή: Γιατί προγραμματισμός; Ο προγραμματισμός ή η "κωδικοποίηση" του υπολογιστή φαίνεται πολύ εκφοβιστικό. Σως να μην πιστεύετε ότι δεν γνωρίζετε αρκετά για τους υπολογιστές και φοβάστε την ιδέα της αντιμετώπισης προβλημάτων που εμφανίζονται στον προσωπικό σας φορητό υπολογιστή. Αν πιστεύετε ότι το
Πώς να φτιάξετε το πρώτο σας απλό λογισμικό χρησιμοποιώντας Python: 6 βήματα
Πώς να φτιάξετε το πρώτο σας απλό λογισμικό χρησιμοποιώντας Python: Γεια σας, καλώς ήρθατε σε αυτό το Instructables. Εδώ θα σας πω πώς να φτιάξετε το δικό σας λογισμικό. Ναι, αν έχετε μια ιδέα … αλλά ξέρετε να εφαρμόσετε ή ενδιαφέρεστε να δημιουργήσετε νέα πράγματα, τότε είναι για εσάς …… Προϋπόθεση: Θα πρέπει να έχετε βασικές γνώσεις P
Δημιουργήστε το πρώτο σας IOT χρησιμοποιώντας Arduino χωρίς πρόσθετες ενότητες: 5 βήματα (με εικόνες)
Δημιουργήστε το πρώτο σας IOT χρησιμοποιώντας το Arduino χωρίς πρόσθετες ενότητες: Ο κόσμος γίνεται πιο έξυπνος καθημερινά και ο μεγαλύτερος λόγος πίσω από αυτό είναι η εξέλιξη της έξυπνης τεχνολογίας. Ως λάτρης της τεχνολογίας πρέπει να έχετε ακούσει για τον όρο IOT που σημαίνει Internet of Things. Διαδίκτυο πραγμάτων σημαίνει τον έλεγχο και τη σίτιση των
CityCoaster - Δημιουργήστε το δικό σας σουβέρ επαυξημένης πραγματικότητας για την επιχείρησή σας (TfCD): 6 βήματα (με εικόνες)
CityCoaster - Φτιάξτε το δικό σας σουβέρ επαυξημένης πραγματικότητας για την επιχείρησή σας (TfCD): Μια πόλη κάτω από το κύπελλο σας! Το CityCoaster είναι ένα έργο που γεννήθηκε σκεπτόμενος ένα προϊόν για το Ρότερνταμ το αεροδρόμιο της Χάγης, το οποίο θα μπορούσε να εκφράσει την ταυτότητα της πόλης, διασκεδάζοντας τους πελάτες του σαλόνι με επαυξημένη πραγματικότητα. Σε ένα τέτοιο περιβάλλον
Πώς να ελέγξετε αν ένα παιχνίδι θα τρέξει στον υπολογιστή σας πριν αγοράσετε το παιχνίδι .: 4 βήματα
Πώς να ελέγξετε αν ένα παιχνίδι θα τρέξει στον υπολογιστή σας πριν αγοράσετε το παιχνίδι .: Πρόσφατα απέκτησα το Call of Duty 4 από έναν φίλο (δωρεάν θα μπορούσα να προσθέσω) επειδή δεν θα εκτελεστεί στον υπολογιστή του. Λοιπόν, ο υπολογιστής του είναι αρκετά νέος και με μπέρδεψε γιατί δεν θα λειτουργούσε. Έτσι, μετά από μερικές ώρες αναζήτησης στο διαδίκτυο, συνάντησα