Hledáme pomocníky pro pražské prezenční kurzy programování - pohodová brigáda. Více info
Nauč se s námi víc. Využij 50% zdarma na e-learningové kurzy. Zároveň pouze tento týden sleva až 80 % na e-learning týkající se Javy
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
Posix
Člen
Avatar
Posix: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
Proč to dělat jednoduše, když to jde složitě.
Tento výukový obsah pomáhají rozvíjet následující firmy, které dost možná hledají právě tebe!
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.