Skocz do zawartości

Wsiadanie i wysiadanie tym samym przyciskiem


Elevator

Rekomendowane odpowiedzi

Hejka (dawno sie nie odzywalem :rolleyes: ), robie gre podobna do gta i mam problem z enterem :sp_ike: . Przy kolizji gracza z samochodem (oczywiscie w graczu) mam:

if keyboard_check(vk_enter) incar=true

A w stepie gracza:

if incar=true

{

if keyboard_check(vk_enter) incar=false

}

I niestety sytuacja sie zaokragla, postac wysiadzie i od razu wsiadzie bo obie akcje sa wykonywane tym samym przyciskiem. Zmienilem wychodzenie na alt i dzialalo super, no ale nie bylo to za wygodne.

Jakies porady?

Odnośnik do komentarza
Udostępnij na innych stronach

  • Administratorzy

bo pewnie brakuje gdzies else, wystarczy dać w key press/release cos na zasadzie:

 

GML
if <wsiadl> {

<wysiadz>

} else {

<wsiadz>

}

 

jak zabraknie else a zamiast tego bedzie if, to wykonają sie pierwsza akcja a potem druga, bo wartosc jest juz zmieniona - dosc czesty bład początkujących

Odnośnik do komentarza
Udostępnij na innych stronach

bo pewnie brakuje gdzies else, wystarczy dać w key press/release cos na zasadzie:

 

GMLif {

 

} else {

 

}

 

jak zabraknie else a zamiast tego bedzie if, to wykonają sie pierwsza akcja a potem druga, bo wartosc jest juz zmieniona - dosc czesty bład początkujących

co

 

Wytłumacz co jest źle w podanym przeze mnie kodzie :) .

Odnośnik do komentarza
Udostępnij na innych stronach

  • 1 rok później...

nie chcialem odswiezac tematu ale po poltorej roku znowu zaczalem robic gta czy cos w tym stylu i wlasnie szukalem tego tematu. znowu wyprobowalem wszystkie kody i tylko gnyska dzialal :P. pisze zeby nie bylo ze prosilem o gotowca i nawet nie postaralem sie zeby zadzialal. nie wiem czemu nie dzialaly ale sprawdze jeszcze potem powod i dam edita

Odnośnik do komentarza
Udostępnij na innych stronach

@Elevetor (i @reszta_którzy_nie_umieją_zrobić_tego)

Ok mam szybką i prostą odpowiedź: Zrób tak:

(Step gracz)

GML
if global.enter=true && distance_to_object(obj_car)<=50 && keyboard_check_pressed(vk_enter);

{

global.enter=false instance_change(obj_graczauto,false);

with (obj_car) instance_destroy();

}

(Step auta z graczem)
GML
if global.enter=true && keyboard_check_pressed;(vk_enter);

{

global.enter=false instance_change(obj_gracz,false);

instance_create(obj_gracz.x+10,obj_gracz.y+10,obj_car);

}

(Event Game Start u gracza)

GML
global.enter=true;

(U gracza i w aucie z graczem event relase Enter)

GML
global.enter=true;

I tutaj wszystko powinno działać ^^^

A tutaj masz przykład:

http://www.mediafire.com/download/r0zctdrg...radnik+0004.gmk

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