Skocz do zawartości

Przechodzenie z pokoju do pokoju


iPablo

Rekomendowane odpowiedzi

No więc chciałbym aby było tak, że w mojej grze RPG przechodząc z pokoju do pokoju obj_player pojawia się w innym miejscu w zależności

 

od tego czy przyszedłem z pokoju czy z pokoju niżej. Macie jakieś example lub skrypty? Lub jakieś pomysły...?

Odnośnik do komentarza
Udostępnij na innych stronach

Prosty if?

GML
if( player.y < 0 )

{

room_goto(room_gora);

}

else if( player.y > room_height )

{

room_goto(room_dol);

}

Nie o to mi chodziło. Chciałbym, żeby obiekt pojawiał się ze strony ścieżki z której przyszedł. Bo jak jest normalne przejście z roomu do roomu to obiekt zawsze w tym samym miejscu się pojawia. Ma być tak, że jak przejdę z pokoju room1 do room2 to player będzie w innym miejscu niż jakbym przeszedł z room3 do room2.
Odnośnik do komentarza
Udostępnij na innych stronach

uwaga, głupi, nieoptymalny pomysł

 

1.W przechodzeniu wstawiasz w zmienna globalna ostatni room w jakim byl bohater, np

GML
if(player.y<0){

global.ostatniroom=room //zapisujesz terazniejszy rom

room_goto(nowy_room)//i przechodzisz do innego

}

 

2.teraz w room_start evencie (czy jakos tak) sprawdzasz w jakim jest i w jakim był.

 

a)Albo mozolnie ifami (jeśli masz tylko 2,3 roomy to mysle, ze to mniej pracy)

GML
if(room==0){

if global.ostatniroom==1{

x=100

y=100

}

//tutaj jeszcze kilka

}

//tutaj tez pewnie jeszcze kilka</span></span></span>

 

b)Albo mozesz zrobic tablice z pozycjami (gdzieś w jakimś creacie jakiegoś obiektu, bo game_start działa po creacie, co jest dziwne)

GML
global.pocyzja_x[room0,room1]=100 // jak przejdziesz z room0 do room1 to x=100

global.pocyzja_y[room0,room1]=100 // jak przejdziesz z room0 do room1 to y=100

global.pocyzja_x[room0,room2]=100 // jak przejdziesz z room0 do room2 to x=100

global.pocyzja_y[room0,room2]=100 // jak przejdziesz z room0 do room2 to y=100

global.pocyzja_x[room0,room3]=100 // jak przejdziesz z room0 do room3 to x=100

global.pocyzja_y[room0,room3]=100 // jak przejdziesz z room0 do room3 to y=100</span></span></span>

 

itd. i zamiast tymi ifami sprawdzac, jak na górze, to robisz wtedy

 

GML
x=global.pocyzja_x[global.ostatniroom,room]

y=global.pocyzja_y[global.ostatniroom,room]

 

e: mam nadzieje, ze o to chodziło, i że nie ma błędu (oprócz jednej literówki, ale nie chce mi sie jej zmieniac)

Odnośnik do komentarza
Udostępnij na innych stronach

uwaga, głupi, nieoptymalny pomysł

 

1.W przechodzeniu wstawiasz w zmienna globalna ostatni room w jakim byl bohater, np

GML
if(player.y<0){

global.ostatniroom=room //zapisujesz terazniejszy rom

room_goto(nowy_room)//i przechodzisz do innego

}

 

2.teraz w room_start evencie (czy jakos tak) sprawdzasz w jakim jest i w jakim był.

 

a)Albo mozolnie ifami (jeśli masz tylko 2,3 roomy to mysle, ze to mniej pracy)

GML
if(room==0){

if global.ostatniroom==1{

x=100

y=100

}

//tutaj jeszcze kilka

}

//tutaj tez pewnie jeszcze kilka</span></span></span></span>

 

b)Albo mozesz zrobic tablice z pozycjami (gdzieś w jakimś creacie jakiegoś obiektu, bo game_start działa po creacie, co jest dziwne)

GML
global.pocyzja_x[room0,room1]=100 // jak przejdziesz z room0 do room1 to x=100

global.pocyzja_y[room0,room1]=100 // jak przejdziesz z room0 do room1 to y=100

global.pocyzja_x[room0,room2]=100 // jak przejdziesz z room0 do room2 to x=100

global.pocyzja_y[room0,room2]=100 // jak przejdziesz z room0 do room2 to y=100

global.pocyzja_x[room0,room3]=100 // jak przejdziesz z room0 do room3 to x=100

global.pocyzja_y[room0,room3]=100 // jak przejdziesz z room0 do room3 to y=100</span></span></span></span>

 

itd. i zamiast tymi ifami sprawdzac, jak na górze, to robisz wtedy

 

GML
x=global.pocyzja_x[global.ostatniroom,room]

y=global.pocyzja_y[global.ostatniroom,room]

 

e: mam nadzieje, ze o to chodziło, i że nie ma błędu (oprócz jednej literówki, ale nie chce mi sie jej zmieniac)

Dzięki za pomoc.
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ę...