Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Pouze tento týden sleva až 80 % na e-learning týkající se Pythonu. Zároveň využij slevovou akci až 30 % zdarma při nákupu e-learningu - Více informací.
python week + discount 30
Avatar
UrbiCZ
Člen
Avatar
UrbiCZ:9.11.2013 11:07

Čau. Mám menší problém s funkčním modelem kolize postavičky s více objekty.
Hra disponuje třemi objekty (postel, stena a hrac). Tento kod aplikuju na objekt hrac v eventu step:

if((keyboard_check(vk_up)) and (!place_meeting(x,y+70,obj_stena) or !place_meeting(x,y+70,obj_postel))) {
    sprite_index = sprite_move_up;
    y -= 5;
    image_speed = 0.2;
}

Proč se postavička přestane posunovat po ose y se zmáčknutou kurzorovou klávesou jen v případě kolize s postelí a se stěnou nikoliv?

Děkuji za každou radu.

Editováno 9.11.2013 11:08
Odpovědět
9.11.2013 11:07
http://snitch.cz/ - web o GameMakeru
Avatar
Neaktivní uživatel:9.11.2013 11:33

Místo !place_meetin­g(x,y+70,obj_ste­na) or !place_meetin­g(x,y+70,obj_pos­tel) by mělo být asi !place_meetin­g(x,y+70,obj_ste­na) and !place_meetin­g(x,y+70,obj_pos­tel).

Jinak doporučuji vytvořit nový objekt a objektům obj_stena a obj_postel nastavit parent na ten nový objekt. A potom by stačilo

if((keyboard_check(vk_up)) and !place_meeting(x,y+70,obj_novy_objekt)) {
...
}

Potom pro každý objekt, přes který nemůžeš jít nastavíš toho rodiče (parent)

Nahoru Odpovědět
9.11.2013 11:33
Neaktivní uživatelský účet
Avatar
UrbiCZ
Člen
Avatar
UrbiCZ:9.11.2013 12:09

Je to tak, operátor and pomohl. Asi neuvažuju dostatečně logicky. :)
Díky.

Nahoru Odpovědět
9.11.2013 12:09
http://snitch.cz/ - web o GameMakeru
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 3 zpráv z 3.