Skocz do zawartości

Zablokowane Combo, Trick w Bijatyce


Rekomendowane odpowiedzi

Jak zrobić combo,trick wbijatyce. Chodzi mi o to ze jesli gracz w małym odstępie czasu bedzie naciskał odpowiednie klawisze (po kolei)

 

np. a + s + strzałka - w czasie 5 sec od wcisniecia 1 klawisza.

 

Z góry dzieki za pomoc

Odnośnik do komentarza
Udostępnij na innych stronach

w create

GMLcombo=false;

w step:

GMLif (keyboard_check(ord('Q')))

{

combo=true;

}

if (combo=true)

{

alarm[0]=5*room_speed;//Za 5 sekund wyłączy się możliwość combo

if (keyboard_check(ord('W')))

{

//Combo

}

}

alarm[0]:

GMLcombo=false;

 

Nie działa to prawidłowo.

Gry juz raz kliknę "q" to potem po kliknięciu w samo w "w" ciagle combo sie wykonuje ;/

Odnośnik do komentarza
Udostępnij na innych stronach

teraz powinno działać:

GMLif (keyboard_check(ord('Q')))

{

combo=true;

}

if (combo=true)

{

alarm[0]=5*room_speed;//Za 5 sekund wyłączy się możliwość combo

if (keyboard_check(ord('W')))

{

//Combo

combo=false;

}

}

 

Poprawiłes tylko to ze nie robi sie ciagle combo, ale jak klkne q i poczekam nawet i po 20 sekund i potem klikne w to combo sie wykonuje ;/

 

Edit:zobacze ten przykład na str. głownej

Odnośnik do komentarza
Udostępnij na innych stronach

GML
Create:

combo = 0;

zrobione = 0;

 

GML
Alarm[0]:

combo = 0;

zrobione = 0;

 

GML
Step:

switch (combo)

{

case 0: //Jesli combo rowna sie 0

if (keyboard_check(ord('Q')))

{

alarm[0]=5*room_speed;

//Tutaj dajesz kod do pierwszej sekwencji comba.

//{Robie Combo}

// Teraz musisz sprawdzic kiedy zostanie wykonana, np. sprawdzając index sprita, czy coś takiego ale w //tym ci nie pomogę, bo już od dawna nie korzystam z

//GM. W kazdym razie cos w tym stylu:

if (sprite_index==10)

{

zrobione = 1;

}

if (zrobione==1)

{

combo = 1; // Daj możliwość przejscia do drugiej sekwwencji comba

zrobione = 0;

}

}

case 1: //Jesli combo rowna sie 1

if (keyboard_check(ord('W')))

{

alarm[0]=5*room_speed;

//Tutaj dajesz kod do pierwszej sekwencji comba.

//{Robie Combo}

// Teraz musisz sprawdzic kiedy zostanie wykonana, np. sprawdzając index sprita, czy coś takiego ale w //tym ci nie pomogę, bo już od dawna nie korzystam z

//GM. W kazdym razie cos w tym stylu:

if (sprite_index==20)

{

zrobione = 1;

}

if (zrobione==1)

{

combo = 2; // Daj możliwość przejscia do trzeciej sekwwencji comba

zrobione = 0;

}

}

case 2: //Jesli combo rowna sie 2

if (keyboard_check(ord('E')))

{

alarm[0]=5*room_speed;

//Tutaj dajesz kod do pierwszej sekwencji comba.

//{Robie Combo}

// Teraz musisz sprawdzic kiedy zostanie wykonana, np. sprawdzając index sprita, czy coś takiego ale w //tym ci nie pomogę, bo już od dawna nie korzystam z

//GM. W kazdym razie cos w tym stylu:

if (sprite_index==30)

{

zrobione = 1;

}

if (zrobione==1)

{

combo = 0; // Całe combo sie skonczylo wiec wracamy to pozycji wejsciowej

zrobione = 0;

}

}

 

Coś w tym stylu. Dawno nie bawiłem się w GML więc jest całkiem możliwe, że walnąłem jakiegoś byka.

Odnośnik do komentarza
Udostępnij na innych stronach

zależy. Większość by zrobiła na sprite_index : np. ruch to jest animacja w 1 sprite, ale uderzenie pięscią to już osobna animacja więc musisz zrobić nowy sprite. Chyba żeby zrobić wszystko w jednym, ale wątpie że on by tak chciał ( dodatkowy kodzenie, nic o tym nie wspominał ). Chyba że każdy "ruch" to jedna klatka.

Odnośnik do komentarza
Udostępnij na innych stronach

Klocki...

Tworzysz obiekt "czas_kombos", "postac" i "kombos", "kombos2", "kombos3". Postaci dajesz w keybordzie "a" (na przykład):

Klocek zamiana obiektów. Zamieniasz obiekt kombos na kombos2. Następnie dajesz obiektowi "kombos2" to samo, jednak z inną literą czyli na przykład "b":

Klocek zamiany, tym razem ten obiekt zamienia się w obiekt kombos3. I obiektowi "kombos3" jak naciśnie ostatnią literę to wykonuję jakąś akcję. To jest system komba. Jednak po co obiekt "czas_kombos"? Do odmierzania czasu. Dajesz obiektowi "czas_kombos" w create:

Klocek alarm0 wynosi 50 (to czas na wykonanie komba).

I w alarm0: Obiekt kombos3 zamienia się na obiekt "kombos" i obiekt kombos2 zamienia się w obiekt "kombos". I destroy. W tej chwili po czasie wszystkie nacisnięte klawisze stają się nie ważne a ten obiekt zostaje zniszczony. No i dodajesz do obiektu "postac" po nacisnięciu "a" klocek:

Create obiekt "czas_kombos".

I w roomie dajesz obiekt "postac i "kombos".

I to cała filozofia :P

 

Pozdrawiam :)

Odnośnik do komentarza
Udostępnij na innych stronach

Gość
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
  • Ostatnio przeglądający   0 użytkowników

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