Skocz do zawartości

Co zrobić, by na szerokości bloku postać podskoczyła?


Rekomendowane odpowiedzi

Dzień Dobry :mellow: Witam, mam taki problemik.

gdy robiłem grę, w której postać ciągle idzie w lewo

(Gdzieś tak jak w Flappy Bird, tylko że się nie lata),

chciałbym aby jak się nie podskoczy na blok to aby

gracz sam skoczył.

 

Moim problemem jest to, że umiem coś zrobić, aby postać skakała,

ale ona ma skakać na szerokości obiektu, a nie na wysokości.

 

Za odpowiedzi dzięki.

 

Aha, i jeszcze proszę, jeśli chcecie wysłać plik, aby był w formacie .gmk

 

Jeszcze raz dziękuje.

Odnośnik do komentarza
Udostępnij na innych stronach

Z tego co rozumiem. Postać idzie w lewo i czasem ma bloczki i ma podskoczyć.

Jedno wyjście mi przychodzi. Ale zadziała pod warunkiem, że postać cały czas idzie w lewo, bez przerwy. Czyli w step jest np. x-=4; To wtedy w step dodajesz jeszcze

GML
if!(place_free(x-16,y)) //sprawdzamy czy na danej pozycji jest bloczek

{

//jesli tak, to skaczemy

if(vspeed>=0) //jesli juz nie skoczylismy

vspeed=-8; //to skaczemy

}

Polecam Ci sprawdzić od razu jak jest zbudowany ten kod, bo kopiowanie bez sensu, niczego Cię nie nauczy.

Odnośnik do komentarza
Udostępnij na innych stronach

Z tego co rozumiem. Postać idzie w lewo i czasem ma bloczki i ma podskoczyć.

Jedno wyjście mi przychodzi. Ale zadziała pod warunkiem, że postać cały czas idzie w lewo, bez przerwy. Czyli w step jest np. x-=4; To wtedy w step dodajesz jeszcze

GML
if!(place_free(x-16,y)) //sprawdzamy czy na danej pozycji jest bloczek

{

//jesli tak, to skaczemy

if(vspeed>=0) //jesli juz nie skoczylismy

vspeed=-8; //to skaczemy

}

Polecam Ci sprawdzić od razu jak jest zbudowany ten kod, bo kopiowanie bez sensu, niczego Cię nie nauczy.

 

Dzięki za kod Sutikku, ale szczerze mówiąc, chodzi mi o to, że gracze się werbują po prawej stronie,

i idą w lewo do przeciwników, i po kolizji gracz skoczył. :sp_ike:

Odnośnik do komentarza
Udostępnij na innych stronach

Albo już mam odpowiedź, tylko poszedłem na łatwiznę B)

Najpierw stworzyłem nowy niewidzialny bloczek, którego nazwałem ( ze sprite'a spr_Jump, a z object'u obj_Jump).

Nie daję mu żadnego eventu.

Klikam w obiekt gracza ( chodzi mi o wroga, aby wiedział, kiedy skoczyć), wybieram z event'a kolizję z obj_Jump, i wsadzam tam taki kod, taki jak w platformówce:

GML
if ! place_free(x,y+1)

{vspeed = -10}

 

Tak samo jak Sutikku, tylko mniej skomplikowane.

Wchodzę w room, i klikam obiektem, gdzie graczo-wróg ma skoczyć. :)

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ę...