Browse Source

w111p

master
Jakub Škrabánek 3 days ago
parent
commit
e8b67b82cd
  1. 2
      35_pygame_zaklady/02_vykreslovani.py
  2. 51
      35_pygame_zaklady/03_pohyb.py
  3. 62
      35_pygame_zaklady/04_kolize.py

2
35_pygame_zaklady/02_vykreslovani.py

@ -4,7 +4,7 @@ import sys
pygame.init() pygame.init()
okno = pygame.display.set_mode((800,600)) okno = pygame.display.set_mode((800,600))
pygame.display.set_caption("Prázdné okno")
pygame.display.set_caption("Vykreslování")
CERNA = (0,0,0) CERNA = (0,0,0)
CERVENA = (255,0,0) CERVENA = (255,0,0)

51
35_pygame_zaklady/03_pohyb.py

@ -0,0 +1,51 @@
import pygame
import sys
pygame.init()
okno = pygame.display.set_mode((800,600))
pygame.display.set_caption("Pohyb Hráče")
CERNA = (0,0,0)
CERVENA = (255,0,0)
ZELENA = (0,255,0)
MODRA = (0,0,255)
#hodiny pro hlídání času a obnovování obrazovky
hodiny = pygame.time.Clock()
#Proměnné hráče na začínající pozici
hrac_x = 400
hrac_y = 300
rychlost = 5
bezime = True
while bezime:
for udalost in pygame.event.get():
if udalost.type == pygame.QUIT:
bezime = False
#OVLÁDÁNÍ
#získaní stavu všech kláves
klavesy = pygame.key.get_pressed()
#základní logika pohybu postavy
if klavesy[pygame.K_LEFT]:
hrac_x -= rychlost
if klavesy[pygame.K_RIGHT]:
hrac_x += rychlost
if klavesy[pygame.K_UP]:
hrac_y -= rychlost
if klavesy[pygame.K_DOWN]:
hrac_y += rychlost
okno.fill(CERNA)
pygame.draw.rect(okno, MODRA, (hrac_x,hrac_y,50,50))
pygame.display.flip()
#Omezení rychllostí hry na 60FPS
hodiny.tick(60)
pygame.quit()
sys.exit()

62
35_pygame_zaklady/04_kolize.py

@ -0,0 +1,62 @@
import pygame
import sys
pygame.init()
okno = pygame.display.set_mode((800,600))
pygame.display.set_caption("Pohyb Hráče")
CERNA = (0,0,0)
CERVENA = (255,0,0)
ZELENA = (0,255,0)
MODRA = (0,0,255)
#hodiny pro hlídání času a obnovování obrazovky
hodiny = pygame.time.Clock()
#Proměnné hráče a "nepřítele" na začínající pozici
hrac_x, hrac_y = 100,300
nepritel_x,nepritel_y= 600,300
rychlost = 5
bezime = True
while bezime:
for udalost in pygame.event.get():
if udalost.type == pygame.QUIT:
bezime = False
#OVLÁDÁNÍ
#získaní stavu všech kláves
klavesy = pygame.key.get_pressed()
#základní logika pohybu postavy
if klavesy[pygame.K_LEFT]:
hrac_x -= rychlost
if klavesy[pygame.K_RIGHT]:
hrac_x += rychlost
if klavesy[pygame.K_UP]:
hrac_y -= rychlost
if klavesy[pygame.K_DOWN]:
hrac_y += rychlost
#Pro detekci kolizí musíme vytvořit OBJEKTY typu pygame.Rect
rect_hrac =pygame.Rect(hrac_x, hrac_y, 50, 50)
rect_nepritel = pygame.Rect(nepritel_x,nepritel_y,100,100)
#Detekce kolize
doslo_ke_kolizi = rect_hrac.colliderect(rect_nepritel)
okno.fill(CERNA)
#Pokud dojde ke kolizi tak přebarvíme nepřítele na zeleno, jinak červená
barva_nepritele = ZELENA if doslo_ke_kolizi else CERVENA
pygame.draw.rect(okno,barva_nepritele,rect_nepritel)
pygame.draw.rect(okno, MODRA,rect_hrac)
pygame.display.flip()
#Omezení rychllostí hry na 60FPS
hodiny.tick(60)
pygame.quit()
sys.exit()
Loading…
Cancel
Save