3 changed files with 114 additions and 1 deletions
@ -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() |
||||
@ -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…
Reference in new issue