Skocz do zawartości

Przyklejam się do ściany ?


BanDa

Rekomendowane odpowiedzi

Zaczynam robić mini-gierkę 2d , na której polega że bohater biegnie a gracz musi mu pomagać omijać przeszkody , zbierać bonusy itd , itp.. No więc mam kod w STEP:

GML
hspeed=6 // bieg

//+grawitacja

if place_free(x,y+1)

{gravity = 2}

else

{gravity =0}

//-grawitacja

//+skok

if keyboard_check(ord('W'))

if! place_free(x,y+1)

{vspeed-=20}

//-skok</span></span></span>

 

W kolizji z blokiem ( po którym biegam ) mam

GML
move_contact_solid(270,2)

vspeed=0

 

A gdy zaczynam grę to dzieje się coś takiego :

https://gmclan.org/uploader/7788/wtf.png

 

Postać się klei i nie można nic zrobić , ani nie spada.

Odnośnik do komentarza
Udostępnij na innych stronach

Kurde sory, fail z mojej strony ^^ Już wiem :P

to:

GML
move_contact_solid(270,2)

vspeed=0

Zamień na:

GML
move_contact_solid(270,4);

vspeed=0;

Krócej: Zamiast 2 wstaw 4 ^^

BTW. Stawiaj średniki na końcu. W GM'ie nie wymagane ale w innych językach tak, więc lepiej się przyzwyczajać :P

Odnośnik do komentarza
Udostępnij na innych stronach

Ha! Już mam :P Po prostu postać cały czas wbijała się w przeszkodę bo było ustawione hspeed=6;

Zamiast tego:

GML
hspeed=6 // bieg</span></span></span>

Daj to:

GML
if place_free(x+6,y) {x+=6}; // bieg</span></span></span>

Przy kolizji z blokiem

GML
move_contact_solid(270,4);

vspeed=0;

To najprostszy wg. mnie sposób :P

@EDIT Masz jeszcze na szybko sklejony przykład: https://gmclan.org/up8194_12_testttttt.html

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...