Kako ustvariti preprosto Python igro s kodo: Vodič za začetnike
Python je ena izmed najbolj priljubljenih in enostavnih programskih jezikov za začetnike. Če želite naučiti programiranja, je ustvarjanje preprostih iger odličen način za razvoj vaših veščin. V tem članku bomo predstavili, kako ustvariti preprosto igro v Pythonu s kodo in nekaj primeri, ki vam bodo pomagali začeti!
1. Zakaj ustvariti preprosto igro v Pythonu?
Ustvarjanje preproste igre je odličen način za izboljšanje vaših programerskih spretnosti. Naučili se boste osnovnih konceptov programiranja, kot so zanke, pogojni stavki, funkcije in delo z uporabniškim vmesnikom. Poleg tega boste pridobili izkušnje pri delu z grafiko, zvokom in drugimi viri, ki so ključni za razvoj iger.
2. Kako pripraviti okolje za ustvarjanje igre?
Preden začnemo, moramo nastaviti okolje za razvoj. Za ustvarjanje iger v Pythonu je priporočljivo uporabiti knjižnico, kot je Pygame. Ta knjižnica omogoča enostavno ustvarjanje 2D iger in upravljanje z grafiko, zvokom ter vhodnimi napravami, kot so tipkovnica in miška.
Za začetek morate najprej namestiti knjižnico Pygame. To lahko storite z naslednjim ukazom:
pip install pygame
Ko je Pygame nameščen, lahko začnete ustvarjati svojo igro. Poglejmo, kako izgledajo prvi koraki pri ustvarjanju igre v Pythonu.
3. Ustvarjanje preproste igre: "Zgubljeni kvadrat"
Začnimo s preprosto igro, kjer igralec premika kvadrat po zaslonu. Ta igra bo uporabila Pygame za risanje kvadrata in premikanje z uporabo tipk na tipkovnici.
Prva stvar, ki jo moramo narediti, je ustvariti osnovno okno, ki bo prikazovalo naš kvadrat. Tu je osnovna koda:
import pygame
import sys
# Inicializiramo Pygame
pygame.init()
# Nastavimo dimenzije okna
width, height = 640, 480
screen = pygame.display.set_mode((width, height))
pygame.display.set_caption("Zgubljeni kvadrat")
# Določimo barve
WHITE = (255, 255, 255)
RED = (255, 0, 0)
# Nastavimo začetno pozicijo kvadrata
x, y = width // 2, height // 2
speed = 5
# Glavna zanka igre
while True:
screen.fill(WHITE) # Napolnimo ozadje z belo
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
sys.exit()
# Premikanje kvadrata z tipkovnico
keys = pygame.key.get_pressed()
if keys[pygame.K_LEFT]:
x -= speed
if keys[pygame.K_RIGHT]:
x += speed
if keys[pygame.K_UP]:
y -= speed
if keys[pygame.K_DOWN]:
y += speed
# Risanje kvadrata
pygame.draw.rect(screen, RED, (x, y, 50, 50))
# Posodobimo zaslon
pygame.display.update()
pygame.time.Clock().tick(60)
Ta koda ustvari preprosto igro, kjer lahko premikate rdeč kvadrat z uporabo smernih tipk na tipkovnici. Okno igre se nenehno osveži, kar omogoča tekoče premikanje kvadrata.
4. Dodajanje ovir v igro
Zdaj, ko imamo osnovno igro, dodajmo nekaj ovir. Oviri bodo naključno generirani pravokotniki, ki se bodo pojavili na zaslonu. Če bo igralec trčil v oviro, se igra konča. Poglejmo, kako dodamo to funkcionalnost:
import random
# Funkcija za ustvarjanje ovir
def create_obstacle():
x = random.randint(0, width - 50)
y = random.randint(0, height - 50)
return pygame.Rect(x, y, 50, 50)
# Ustvarimo seznam ovir
obstacles = [create_obstacle() for _ in range(5)]
# Glavna zanka igre
while True:
screen.fill(WHITE) # Napolnimo ozadje z belo
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
sys.exit()
# Premikanje kvadrata z tipkovnico
keys = pygame.key.get_pressed()
if keys[pygame.K_LEFT]:
x -= speed
if keys[pygame.K_RIGHT]:
x += speed
if keys[pygame.K_UP]:
y -= speed
if keys[pygame.K_DOWN]:
y += speed
# Risanje kvadrata
player_rect = pygame.draw.rect(screen, RED, (x, y, 50, 50))
# Risanje ovir
for obstacle in obstacles:
pygame.draw.rect(screen, (0, 255, 0), obstacle)
# Preverimo, če je igralec trčil v oviro
for obstacle in obstacles:
if player_rect.colliderect(obstacle):
print("Konec igre!")
pygame.quit()
sys.exit()
# Posodobimo zaslon
pygame.display.update()
pygame.time.Clock().tick(60)
Ta koda ustvarja naključne ovire in preverja, ali je igralec trčil v katero od njih. Če se to zgodi, se igra konča, in prikaže se sporočilo "Konec igre!".
5. Dopolnjevanje igre z rezultatom
Da bi igro še bolj zabavali, dodajmo števec, ki bo spremljal, koliko časa je igralec preživel brez trčenja v ovire. Vsakič, ko igralec uspešno preživi 10 sekund brez trčenja, bomo povečali rezultat.
# Spremenljivka za rezultat
score = 0
start_time = pygame.time.get_ticks()
# Glavna zanka igre
while True:
screen.fill(WHITE) # Napolnimo ozadje z belo
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
sys.exit()
# Premikanje kvadrata z tipkovnico
keys = pygame.key.get_pressed()
if keys[pygame.K_LEFT]:
x -= speed
if keys[pygame.K_RIGHT]:
x += speed
if keys[pygame.K_UP]:
y -= speed
if keys[pygame.K_DOWN]:
y += speed
# Risanje kvadrata
player_rect = pygame.draw.rect(screen, RED, (x, y, 50, 50))
# Risanje ovir
for obstacle in obstacles:
pygame.draw.rect(screen, (0, 255, 0), obstacle)
# Preverimo, če je igralec trčil v oviro
for obstacle in obstacles:
if player_rect.colliderect(obstacle):
print("Konec igre! Rezultat:", score)
pygame.quit()
sys.exit()
# Posodobitev rezultata na podlagi časa
if pygame.time.get_ticks() - start_time >= 10000: # Če je minilo 10 sekund
score += 1
start_time = pygame.time.get_ticks()
# Prikaz rezultata na zaslonu
font = pygame.font.SysFont(None, 36)
score_text = font.render(f"Rezultat: {score}", True, (0, 0, 0))
screen.blit(score_text, (10, 10))
# Posodobimo zaslon
pygame.display.update()
pygame.time.Clock().tick(60)
Ta koda spremlja čas in povečuje rezultat za vsakih 10 sekund, ki jih igralec preživi brez trčenja v ovire. Rezultat je prikazan v zgornjem levem kotu zaslona.
Zaključek
To je bila preprosta Python igra, ki vam omogoča, da se naučite osnov programiranja iger s Pygame. S temi osnovami lahko začnete ustvarjati lastne igre, ki vključujejo premikanje objektov, interakcijo s tipkovnico in spremljanje rezultatov. Upam, da ste uživali v tem vodiču in da boste zdaj z veseljem ustvarjali svoje igre v Pythonu!

Komentarze (0) - Nikt jeszcze nie komentował - bądź pierwszy!