Diskuze: Zapadnutí objektu 1 do objektu 2 během gravitace

Ostatní jazyky GameMaker GameMaker Zapadnutí objektu 1 do objektu 2 během gravitace

Avatar
UrbiCZ
Člen
Avatar
UrbiCZ:

Čau. Už to řeším 2 hodiny a pořád ne a ne přijít na to, proč během dopadu jakoby zapadne objekt postavy do objektu země. Postava by měla dopadnout na hranu objektu zem. Po každém dopadu je ponoření objektu navíc rozdílné.

Vše se odehrává ve Step eventu a zde kód objektu postavy:

if(place_meeting(x,y+1,obj_zem)){
    gravity = 0;
}else{
    gravity = 1;
}

if(place_meeting(x,y,obj_zem)){
    move_contact_solid(270, obj_zem);
    vspeed = 0;
}

if(keyboard_check(vk_right)){
    x += 5;
}

if(keyboard_check(vk_left)){
    x -= 5;
}

if(keyboard_check(vk_space) and (gravity = 0)){
    vspeed = -15;
}

Určitě jste se s tím setkali, ale ani strýček Google neporadil. Díky za rady...

Odpovědět 11.5.2014 18:42
http://snitch.cz/ - web o GameMakeru
Avatar
Dominik Hošic
Redaktor
Avatar
Odpovídá na UrbiCZ
Dominik Hošic:

Nuluješ totiž pouze gravitaci a zapomínáš na rychlost. :)

if(place_meetin­g(x,y+1,obj_zem)){
gravity = 0;
speed = 0;
}else{
gravity = 1;
}

Nahoru Odpovědět 11.5.2014 22:01
Klient: Nefunguje mi internet co s tím uděláte? Operátor: a co vidíte na monitoru? Klient: No signal...
Avatar
UrbiCZ
Člen
Avatar
UrbiCZ:

To jsem už samozřejmě zkoušel a nepomohlo.

Nahoru Odpovědět 12.5.2014 16:29
http://snitch.cz/ - web o GameMakeru
Avatar
Dominik Hošic
Redaktor
Avatar
Odpovídá na UrbiCZ
Dominik Hošic:

Máš u obj_zem zaškrtnuto Solid?

Nahoru Odpovědět 12.5.2014 16:45
Klient: Nefunguje mi internet co s tím uděláte? Operátor: a co vidíte na monitoru? Klient: No signal...
Avatar
Davemal
Člen
Avatar
Odpovídá na Dominik Hošic
Davemal:

A máš správně nastavenou colizi u spritu.

 
Nahoru Odpovědět 12.5.2014 16:51
Avatar
Dominik Hošic
Redaktor
Avatar
Odpovídá na Davemal
Dominik Hošic:

Pokud se tu celou dobu řeší tohle, tak si připadám trošku hloupě :D Myslel jsem, že mu hráč proletí skrz tu zemi a ne, že do ní pouze zapadne. Hold neumím číst no :D

Nahoru Odpovědět  +1 12.5.2014 17:08
Klient: Nefunguje mi internet co s tím uděláte? Operátor: a co vidíte na monitoru? Klient: No signal...
Avatar
Davemal
Člen
Avatar
Davemal:

Neboj taky jsem si to myslel :D ale pak, když mu to stále nešlo tak jsem si to přečetl znova, kde by mohla být chyba. :D :D

Editováno 12.5.2014 17:12
 
Nahoru Odpovědět  +1 12.5.2014 17:12
Avatar
Davemal
Člen
Avatar
Odpovídá na Dominik Hošic
Davemal:

Sorry že jsem ti nedal odpovědět, ale když jsem dal upravit tak mi už odpovědět dát nešlo, tak přečti ten vrchní komentář.

 
Nahoru Odpovědět 12.5.2014 17:14
Avatar
UrbiCZ
Člen
Avatar
UrbiCZ:

Jasný, oba objekty jsou na solid. Jak to myslíš s tou správnou kolizí u spritu?

Nahoru Odpovědět 13.5.2014 7:46
http://snitch.cz/ - web o GameMakeru
Avatar
UrbiCZ
Člen
Avatar
UrbiCZ:

Můžu sem odpoledne nahodit celej projekt kdyžtak...

Nahoru Odpovědět 13.5.2014 11:58
http://snitch.cz/ - web o GameMakeru
Avatar
Dominik Hošic
Redaktor
Avatar
Odpovídá na UrbiCZ
Dominik Hošic:

U spritu hráče zkus nastavit origin třeba na X: 0, Y: 1 nebo na jiné hodnoty. Možná si ještě pohraj s kolizní maskou, ta je pod tlačítkem 'Modify Mask'.

Nahoru Odpovědět 13.5.2014 13:59
Klient: Nefunguje mi internet co s tím uděláte? Operátor: a co vidíte na monitoru? Klient: No signal...
Avatar
UrbiCZ
Člen
Avatar
UrbiCZ:

Masku jsem se pokoušel modifikovat dříve a nepomohlo. Změna originu taky nic....

Nahoru Odpovědět 13.5.2014 16:30
http://snitch.cz/ - web o GameMakeru
Avatar
UrbiCZ
Člen
Avatar
UrbiCZ:

Tady kdyžtak projekt:

http://leteckaposta.cz/926648945
Nahoru Odpovědět 13.5.2014 16:36
http://snitch.cz/ - web o GameMakeru
Avatar
UrbiCZ
Člen
Avatar
UrbiCZ:

Problém vyřešen. Musela se vytvořit událost kolize pomocí Add Event. Myslel jsem si, že kolize je řešená pomocí fce place_meeting, což byla nepochopitelně chyba.

Nahoru Odpovědět 14.5.2014 17:07
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 14 zpráv z 14.