[Tutor PyCZ] Zachytavani udalosti v cyklu

geon geon na post.cz
Pondělí Duben 3 07:50:25 CEST 2006


Martin Petr napsal(a):
> vysledku se to projevuje tak, ze pokud rychle stisknu napr. sipku nahoru 
> a vpravo, had
> pri vodorovnem pohybu vlevo neudela obrat o 180°, ale udelat takovej 
> zvlastni pohyb :o)
>   
Zkusil jsem si tu hru zpomalit a ten zvláštní pohyb je, že prostě had 
udělal krok navíc. Koukal jsem na ten hlavní cyklus a tam je vše OK - 
při každém cyklu se přečte vstup a pohne hadem. To by mělo být přeci v 
pořádku! A taky že je. Pak mne napadlo, že může být chyba v modulu 
Console. Nechal jsem si vypisovat události v getKeyPress a ejhle co jsme 
dostal:

<KeyPress Event at 9c49e0>  *
<KeyRelease Event at 9c49e0>*
<KeyPress Event at 9c49e0>  *         @
<KeyRelease Event at 9c49e0>*
                            *

(ty tečky to je můj had ;-) ). Každá klávesa vrací dvě události: stisk a 
uvolnění. Takže řešení je nasnadě. Musíš z fronty událostí klávesy 
odebrat vždy 2 události a vrátit tu první, tu druhou zahodit.

Python forever!

-- 
geon
volume doprava.



Další informace o konferenci Tutor