Zoeken…


De volledige code

import pygame

pygame.init()

WIDTH = 300
HEIGHT = 200
SCREEN = pygame.display.set_mode((WIDTH, HEIGHT))

pygame.display.set_caption('My Game')

WHITE = (255, 255, 255)
BLACK = (0, 0, 0)
RED = (255, 0, 0)
GREEN = (0, 255, 0)
BLUE = (0, 0, 255)
YELLOW = (255, 255, 255)

SCREEN.fill(RED)
pygame.display.flip()

is_running = True
while is_running:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            is_running = False

pygame.quit()

Pygame importeren en initialiseren

Zoals we met elke module in python doen, moeten we pygame importeren:

import pygame

Vervolgens initialiseren we alle geïmporteerde pygame-modules:

pygame.init()

Dit wordt gebruikt om alle pygame-modules te initialiseren. Zonder dit zouden de modules niet werken

Constanten definiëren

We definiëren hier enkele constanten:

WIDTH = 300
HEIGHT = 200
SCREEN = pygame.display.set_mode((WIDTH, HEIGHT))

De WIDTH en HEIGHT constanten worden gebruikt om een venster te maken met een breedte van 300 pixels en een hoogte van 200 pixels. De functie die wordt gebruikt in SCREEN , pygame.display.set_mode((WIDTH, HEIGHT)) , stelt de weergavemodus in en retourneert een Surface-object . Merk op hoe de parameters voor deze functie de eerder gedefinieerde WIDTH en HEIGHT constanten zijn.

De naam van het venster instellen

We gebruiken deze functie vervolgens om de naam van het venster te wijzigen in Mijn spel:

pygame.display.set_caption('My Game')

Kleuren definiëren

Daarna definiëren we 6 kleuren die in ons venster kunnen worden gebruikt:

WHITE = (255, 255, 255)
BLACK = (0, 0, 0)
RED = (255, 0, 0)
GREEN = (0, 255, 0)
BLUE = (0, 0, 255)
YELLOW = (255, 255, 255)

Bij het definiëren van kleuren voeren we 3 waarden in die variëren van 0 tot 255. De klasse pygame.Color heeft normaal gesproken deze indeling:

COLOUR = (r, g, b, a)

Waar de parameter r de rode waarde van de kleur instelt, stelt de parameter g de groene waarde van de kleur in en stelt de parameter b de blauwe waarde van de kleur in. De parameter a stelt de alfawaarde van de kleur in.

We geven dan dit commando:

SCREEN.fill(RED)

Dit is een pygame.Surface.fill- functie die het Surface-object, ons scherm, vult met de kleur rood.

Pygame.display.flip () gebruiken

We gebruiken dan deze functie

pygame.display.flip()

Dit maakt in feite alles wat we op het scherm Surface hebben getekend zichtbaar en werkt de inhoud van het hele scherm bij. Zonder deze regel zou de gebruiker niets op zijn pygame-scherm zien.

De gamelus

De volgende paar regels zijn wat een "gamelus" wordt genoemd.

Om dit te beginnen maken we een variabele en maken het waar:

is_running = True

Zodat we onze while-lus kunnen beginnen:

while is_running:

die het hele spel doorloopt.

In zijn meest basale vorm heeft pygame "evenementen" die gebruikersinvoer vereisen, bijvoorbeeld een knopdruk of muisklik. Pygame verwerkt deze gebeurtenissen via een gebeurteniswachtrij. We kunnen deze evenementen uit de evenementenwachtrij halen met deze for loop:

for event in pygame.event.get(): 

Die in feite een lijst met evenementen doorloopt, onze evenementenwachtrij. Dit zijn de volgende 2 regels:

if event.type == pygame.QUIT:
    is_running = False    

Dit zorgt ervoor dat wanneer de gebruiker op de exit-knop in de bovenhoek drukt, de gebeurtenis met het type pygame.QUIT plaatsvindt.

Hiermee wordt de while-lus beëindigd, omdat is_running nu False en het script naar de laatste regel gaat:

pygame.quit()

Die de pygame-modules ongedaan maakt.



Modified text is an extract of the original Stack Overflow Documentation
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow