Dělam hru ze stránek(http://geon.wz.cz/livewires/5-robots.html)
Pohybujete se s kolečkem a utíkáte před čtverečky, kteří vás pronásledují.
Bohužel jsem se zastavil zrovna u toho pohybování :D
toto je kostra programu
from livewires import * # Jako obvykle
begin_graphics() # Abychom vůbec mohli malovat
allow_moveables() # Vysvětlím později
vyrobHrace()
koncime = 0
while not koncime:
posunHrace()
end_graphics() # Skončili jsme
Skončil jsem u části Lokální proměnné a global
Měl jsem uděkat toto:
Změňte vyrobHrace tak, aby aby hodnota vrácena z funkce circle() se uložila do proměnné (snad s názvem hrac_telo nebo jinak); a
...obnovte celý cyklus while tak jak je výše v kostře programu a
...založte staronovou funkci posunHrace(), která bude používat funkci keys_pressed() a tak zjišťovat, které klávesy jsou stisknuty. (Vlastně do ní vložíte tělo z výše uvedeného cyklu while, bez zbytečných věcí - spánku a tisku.) Prozatím by mohla pouze reagovat na klávesu ‘q’ tak, že když stiskneme klávesu ‘q’ - do proměnné koncime uložíme 1 (tedy místo příkazu break bude koncime=1) a tím se ukončí cyklus while a program normálně skončí.
a poté : zglobalizujte” proměnnou koncime ve funkci posunHrace a měla být začít fungovat klávesa ‘q’. Vyzkoušejte.
Asi jsem někde napsal zas nějakou blbost, ale mě ten program nechce skončit. Tak jestli byste mi ho nemohli prosím opravit abych mohl pokračovat.
Tady je:
import random
import time
from livewires import *
begin_graphics()
allow_moveables()
def vyrobHrace():
hrac_x=random.randint(0,63)
hrac_y=random.randint(0,47)
hrac_telo=circle(10*hrac_x+4, 10*hrac_y+4, 5, filled=1)
return hrac_telo
vyrobHrace()
koncime = 0
while not koncime:
def posunHrace():
global koncime
klavesy=key_pressed()
if 'q' in klavesy:
koncime = 1
end_graphics()