Očitavanje tastera miša¶
Informaciju o trenutno pritisnutim tasterima miša daje nam funkcija pg.mouse.get_pressed()
. Ova funkcija vraća torku od tri elementa (uređenu trojku), koji se koriste kao logičke vrednosti. Elementi torke redom odgovaraju levom, srednjem i desnom tasteru miša. Vrednost True označava da je taster pritisnut, a False da nije.
Primer naveden niže pokazuje kako se očitava koji tasteri miša su pritisnuti. Ovako izgleda deo programa u kome se to dešava:
Torka pritisnut_taster_misa dobija tri vrednosti koje je vratila funkcija pg.mouse.get_pressed(). Te vrednosti kasnije tipično koristimo u if naredbama. Na primer, if pritisnut_taster_misa[2] znači „ako je pritisnut desni taster” (0 za levi, 1 za srednji, a 2 za desni).
Primeri i zadaci¶
Primer - ubaci lopticu: Dok je levi taster miša pritisnut, loptica se udaljava od miša. Cilj je pomeranjem miša i pritiskanjem levog tastera postići da loptica bude u crvenom okviru. Pritiskom na desni taster igra se vraća na početak.
Najpre pažljivo pogledajte funkciju nov_frejm(), a zatim i ostale delove programa. Isprobajte program i proverite da li on radi onako kako ste očekivali na osnovu čitanja.
Zadatak - ka i od miša: Dovršite program, tako da radi kao u primeru (dugme „Prikaži primer”).
Kada je levi taster miša pritisnut, loptica treba da se udaljava od miša, kao u primeru „ubaci lopticu” datom iznad, ali ne za po pola rastojanja, nego samo za po deseti deo rastojanja do miša.
Kada levi taster miša nije pritisnut, loptica treba da se pibližava za po deseti deo rastojanja do miša (kao u zadatku „prema mišu” iz prethodne lekcije).
Zadatak - laser: Dovršite program tako da radi kao u primeru (dugme „Prikaži primer”).
Dok je levi taster miša pritisnut, „laser” je uključen, inače je isključen. Dok je laser uključen, energija mu se smanjuje za po 1 (ali ne ispod 0), a kad je isključen energija se povećava za po 2 (ali ne preko 100).