Skocz do zawartości

Zachowanie obecnego stanu objektu po przejściu do następnego roomu


lenin

Rekomendowane odpowiedzi

Witam jeszcze raz :P w moim pytaniu chodzi o to że gdy zmienię sprite'a objektowi w jednym roomie to żeby po przejściu do następnego roomu był z tym nowym spritem zamiast z początkowym. Mógłby ktoś pomóc? mam nadzieję że przejrzyście to opisałem :)

Odnośnik do komentarza
Udostępnij na innych stronach

Zaznacz mu persisent.

Ostatecznie mozna jego sprite zapamietywac w zmiennej globalnej, no ale od czego jest persisent :P?

Pamietaj ze wtedy przechodzi caly obiekt, wiec nie umieszczaj go 2 raz w nastepnym roomie.

Odnośnik do komentarza
Udostępnij na innych stronach

przepraszam że piszę następnego posta pod rząd ale tylko tak będzie to nowy post i nie będzie potrzeby zakładania nowego tematu. chciałbym jeszcze wiedzieć jak zrobić aby obiekt po przejściu do roomu1 z roomu2 znajdował się na innej pozycji niż po przejściu z roomu3. Bo po skorzystaniu z persisent i wpisaniu kody Sausa obiekt zawsze zaczyna w danym roomie w tym samym miejscu a chciałbym to uwarunkować w zależności od roomu w którym był poprzednio.

Odnośnik do komentarza
Udostępnij na innych stronach

Ło dżijzus. Stawiasz obiekt, w CREATE:

GML
obiekt.x = ileśtam;

obiekt.y = ileśtam;

 

to nie o to chodzi

 

chyba każdy grał w np. alone in the dark. i chodzi mi o to że jeżeli przejdę obiektem object1 do room1 z room2 to znajdę się na określonej pozycji a gry przejdę do tego samego roomu ale z roomu3 to już ta pozycja bedzie inna.

mam nadzieję że teraz już lepiej trochę to opisałem

Odnośnik do komentarza
Udostępnij na innych stronach

GML
if (room_previous = room1)

{

obiekt.x = iles

obiekt.y = iles

}

 

to mam wkleić do roomu czy gdzie?

bo wrzucam to w roomie tam w settings i mam błąd:

 

GML
ERROR in

action number 1

of Key Release Event for <no key> Key

for object obj_gotoprev:

 

Error in code at line 1:

if (room_previous = rm_sypialnia)

 

at position 5: Unknown variable room_previous

 

a mój kod w roomie wygląda tak:

 

GML
if (room_previous = rm_sypialnia)

{

obj_maciek.x = 200

obj_maciek.y = 400

}

else

{

obj_maciek.x = 650

obj_maciek.y = 400

}

 

chyba poprawnie zrobiłem ale coś jest nie tak

Odnośnik do komentarza
Udostępnij na innych stronach

CREATE jakiegoś obiektu w roomie2

 

GML
ERROR in

action number 1

of Create Event

for object obj_medic:

 

Error in code at line 1:

if (room_previous = rm_sypialnia)

 

at position 5: Unknown variable room_previous

 

taki błąd mi wyskakuje :(

Odnośnik do komentarza
Udostępnij na innych stronach

chyba jednak room_previous(numb) nie zwraca id/nazwy poprzedniego rooma. Musisz wykombinować coś innego, np. zapisz nazwę rooma do zmiennej :P

 

 

Edit:

daj w evencie Room End kod:

GML
global.previous_room = room_get_name(room)
teraz zmienna global.previous_room przechowuje informacje o poprzednim roomie.

 

 

dla przykładu:

GML
switch(global.previous_room)

{

case 'kuchnia': x = 50; y = 150; break;

case 'kibel': x = 1500; y = 890; break;

case 'pokój do orania dziewic': x = lozko.x; y = lozko.y; break

}

 

:)

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