Δείτε πώς μπορείτε να προσθέσετε επίπεδα στο παιχνίδι σας για να το κάνετε πιο ελκυστικό και ευχάριστο.
Τα επίπεδα είναι μια ουσιαστική πτυχή των περισσότερων βιντεοπαιχνιδιών. Παρέχουν δομή, πρόκληση και ποικιλία και μπορούν να βελτιώσουν σημαντικά την εμπειρία του παίκτη. Το PyGame, μια δημοφιλής βιβλιοθήκη Python για ανάπτυξη παιχνιδιών, παρέχει διάφορες δυνατότητες με τις οποίες μπορείτε εύκολα να δημιουργήσετε διάφορα επίπεδα. Ένα καλά σχεδιασμένο επίπεδο μπορεί να αιχμαλωτίσει τον παίκτη, να δημιουργήσει μια αίσθηση προόδου και τελικά να τον ανταμείψει για τις προσπάθειές του.
Επίπεδα Σχεδιασμού και Σχεδιασμού
Πριν δημιουργήσετε επίπεδα, είναι απαραίτητο να τα σχεδιάσετε και να τα σχεδιάσετε. Τα επίπεδα προγραμματισμού βοηθούν στη δημιουργία ενός καλά δομημένου παιχνιδιού που παρέχει το σωστό επίπεδο δυσκολίας στους παίκτες. Για να σχεδιάσετε επίπεδα, πρέπει να λάβετε υπόψη διάφορους παράγοντες, όπως η μηχανική του παιχνιδιού, η ιστορία και η συνολική δομή του παιχνιδιού.
Για παράδειγμα, εάν σχεδιάζετε ένα παιχνίδι πλατφόρμας, πρέπει να σκεφτείτε την τοποθέτηση των πλατφορμών, τους εχθρούς και τα εμπόδια. Πρέπει επίσης να λάβετε υπόψη την κίνηση του παίκτη, όπως το άλμα και το τρέξιμο, και να σχεδιάσετε ανάλογα τα επίπεδα.
Ο κώδικας που χρησιμοποιείται σε αυτό το άρθρο είναι διαθέσιμος σε αυτό Αποθετήριο GitHub και είναι δωρεάν για χρήση βάσει της άδειας MIT.
Δημιουργία δύο απλών επιπέδων
Πριν ξεκινήσετε, βεβαιωθείτε ότι έχετε pip εγκατεστημένο στο σύστημά σας. Χρησιμοποιήστε αυτήν την εντολή για να εγκαταστήσετε το pygame βιβλιοθήκη:
pip εγκατάσταση pygame
Τώρα, δημιουργήστε δύο απλά επίπεδα με μια πλατφόρμα και έναν παίκτη. Εδώ είναι ο κώδικας για το πρώτο επίπεδο:
εισαγωγή pygame
pygame.init()
# Ορίστε σταθερές
SCREEN_WIDTH = 800
SCREEN_HEIGHT = 600
PLATFORM_WIDTH = 100
PLATFORM_HEIGHT = 20
PLAYER_WIDTH = 50
PLAYER_HEIGHT = 50
PLATFORM_COLOR = (255, 255, 255)
PLAYER_COLOR = (255, 0, 0)# Δημιουργήστε την οθόνη
οθόνη = pygame.display.set_mode((SCREEN_WIDTH, SCREEN_HEIGHT))# Δημιουργήστε την πλατφόρμα
πλατφόρμα = pygame. Rect(350, 500, PLATFORM_WIDTH, PLATFORM_HEIGHT)# Δημιουργήστε το πρόγραμμα αναπαραγωγής
παίκτης = pygame. Rect(375, 450, PLAYER_WIDTH, PLAYER_HEIGHT)# Βρόχος παιχνιδιού
τρέξιμο = Αληθής
ενώ τρέξιμο:
Για Εκδήλωση σε pygame.event.get():
αν event.type == pygame. ΕΓΚΑΤΑΛΕΙΠΩ:
τρέξιμο = Ψευδής
ελιφ event.type == pygame. KEYDOWN:
αν event.key == pygame. K_LEFT:
player.move_ip(-10, 0)
ελιφ event.key == pygame. K_RIGHT:
player.move_ip(10, 0)# Γεμίστε την οθόνη με μαύρο χρώμα
screen.fill((0, 0, 0))# Σχεδιάστε την πλατφόρμα
pygame.draw.rect (οθόνη, PLATFORM_COLOR, πλατφόρμα)# Σχεδιάστε τον παίκτη
pygame.draw.rect (οθόνη, PLAYER_COLOR, πρόγραμμα αναπαραγωγής)# Ενημερώστε την οθόνη
pygame.display.flip()
pygame.quit()
Μετά από αυτό, δημιουργήστε το δεύτερο επίπεδο αλλάζοντας απλώς την πλατφόρμα και τη θέση του παίκτη. Εδώ είναι ο κώδικας για το δεύτερο επίπεδο:
εισαγωγή pygame
pygame.init()
# Ορίστε σταθερές
SCREEN_WIDTH = 800
SCREEN_HEIGHT = 600
PLATFORM_WIDTH = 150
PLATFORM_HEIGHT = 20
PLAYER_WIDTH = 50
PLAYER_HEIGHT = 50
PLATFORM_COLOR = (255, 255, 255)
PLAYER_COLOR = (255, 0, 0)# Δημιουργήστε την οθόνη
οθόνη = pygame.display.set_mode((SCREEN_WIDTH, SCREEN_HEIGHT))# Δημιουργήστε την πλατφόρμα
πλατφόρμα = pygame. Rect(200, 500, PLATFORM_WIDTH, PLATFORM_HEIGHT)# Δημιουργήστε το πρόγραμμα αναπαραγωγής
παίκτης = pygame. Rect(225, 450, PLAYER_WIDTH, PLAYER_HEIGHT)# Βρόχος παιχνιδιού
τρέξιμο = Αληθής
ενώ τρέξιμο:
Για Εκδήλωση σε pygame.event.get():
αν event.type == pygame. ΕΓΚΑΤΑΛΕΙΠΩ:
τρέξιμο = Ψευδής
ελιφ event.type == pygame. KEYDOWN:
αν event.key == pygame. K_LEFT:
player.move_ip(-10, 0)
ελιφ event.key == pygame. K_RIGHT:
player.move_ip(10, 0)# Γεμίστε την οθόνη με μαύρο χρώμα
screen.fill((0, 0, 0))# Σχεδιάστε την πλατφόρμα
pygame.draw.rect (οθόνη, PLATFORM_COLOR, πλατφόρμα)# Σχεδιάστε τον παίκτη
pygame.draw.rect (οθόνη, PLAYER_COLOR, πρόγραμμα αναπαραγωγής)# Ενημερώστε την οθόνη
pygame.display.flip()
pygame.quit()
Αυτός ο κωδικός είναι παρόμοιος με το πρώτο επίπεδο, αλλά η πλατφόρμα και οι θέσεις του παίκτη αλλάζουν.
Σύνδεση διαφορετικών επιπέδων
Για να συνδέσετε διαφορετικά επίπεδα, πρέπει να τροποποιήσετε τον βρόχο του παιχνιδιού για εναλλαγή μεταξύ επιπέδων όταν ο παίκτης ολοκληρώσει ένα επίπεδο. Μπορείτε να το κάνετε αυτό δημιουργώντας μια μεταβλητή για να παρακολουθείτε το τρέχον επίπεδο και χρησιμοποιώντας δηλώσεις υπό όρους για εναλλαγή μεταξύ επιπέδων. Μπορείτε επίσης να ανίχνευση συγκρούσεων για έλεγχο εάν ο παίκτης έχει φτάσει στο τέλος ενός επιπέδου.
Ακολουθεί ο τροποποιημένος βρόχος παιχνιδιού:
τρέχον_επίπεδο = 1
# Σχεδιάστε την πλατφόρμα και το πρόγραμμα αναπαραγωγής με βάση το τρέχον επίπεδο
αν τρέχον_επίπεδο == 1:
pygame.draw.rect (οθόνη, PLATFORM_COLOR, πλατφόρμα1)
pygame.draw.rect (οθόνη, PLAYER_COLOR, πρόγραμμα αναπαραγωγής)
# Ελέγξτε αν ο παίκτης έχει φτάσει στο τέλος του επιπέδου
αν player.colliderect (πλατφόρμα1) == Ψευδής:
τρέχον_επίπεδο = 2
ελιφ τρέχον_επίπεδο == 2:
pygame.draw.rect (οθόνη, PLATFORM_COLOR, πλατφόρμα2)
pygame.draw.rect (οθόνη, PLAYER_COLOR, πρόγραμμα αναπαραγωγής)
# Ελέγξτε αν ο παίκτης έχει φτάσει στο τέλος του επιπέδου
αν player.colliderect (πλατφόρμα2) == Αληθής:
τρέξιμο = Ψευδής
Κοινή χρήση των δεδομένων του παιχνιδιού μεταξύ επιπέδων
Πρέπει να αποθηκεύσετε τα δεδομένα του παιχνιδιού για να τα μοιραστείτε μεταξύ των επιπέδων. Για αυτό, δημιουργήστε μια ξεχωριστή λειτουργική μονάδα Python για να αποθηκεύσετε τα δεδομένα του παιχνιδιού και να τα εισαγάγετε σε κάθε επίπεδο.
Εδώ είναι τα βήματα:
- Δημιουργήστε μια νέα λειτουργική μονάδα Python με το όνομα game_data.py.
- Ορίστε μια καθολική μεταβλητή στο game_data.py μονάδα για την αποθήκευση της θέσης της συσκευής αναπαραγωγής.
- Σε κάθε επίπεδο, εισάγετε το game_data μονάδα μέτρησης.
- Για να ανακτήσετε τη θέση του παίκτη σε κάθε επίπεδο, χρησιμοποιήστε το game_data.player_pos μεταβλητή αντί να δημιουργήσετε ένα νέο αντικείμενο αναπαραγωγής.
- Για να ενημερώσετε τη θέση της συσκευής αναπαραγωγής, τροποποιήστε την τιμή του game_data.player_pos σε κάθε επανάληψη.
Ακολουθεί ο τροποποιημένος κωδικός για κοινή χρήση της θέσης του παίκτη μεταξύ των επιπέδων.
Στο game_data.py ενότητα, προσθέστε τον ακόλουθο κώδικα:
player_pos = (0, 0)
Πρώτο επίπεδο:
εισαγωγή pygame
εισαγωγή game_data# Δημιουργήστε το πρόγραμμα αναπαραγωγής
παίκτης = pygame. Rect (game_data.player_pos[0], game_data.player_pos[1], PLAYER_WIDTH, PLAYER_HEIGHT)# Βρόχος παιχνιδιού
τρέξιμο = Αληθής
ενώ τρέξιμο:
# Σχεδιάστε τον παίκτη
pygame.draw.rect (οθόνη, PLAYER_COLOR, πρόγραμμα αναπαραγωγής)
# Ενημερώστε τη θέση του παίκτη στη μονάδα game_data
game_data.player_pos = (player.x, player.y)
Κάντε τα παιχνίδια πιο ελκυστικά με τα επίπεδα
Η προσθήκη διαφορετικών επιπέδων στο παιχνίδι σας μπορεί να το κάνει πιο ελκυστικό και ευχάριστο για τους παίκτες. Με τη σύνδεση επιπέδων και την κοινή χρήση δεδομένων παιχνιδιού, μπορείτε να δημιουργήσετε μια απρόσκοπτη και συνεκτική εμπειρία παιχνιδιού. Αυτό μπορεί να βοηθήσει τους παίκτες να παραμείνουν βυθισμένοι στον κόσμο του παιχνιδιού και να μειώσουν την πιθανότητα αποδέσμευσης ή πλήξης.