Skocz do zawartości

Zmienna w nazwie rooma


Rekomendowane odpowiedzi

Czy jest takie coś możliwe?

Np.

Jestem w rm_0_0 przechodzę za lewą krawędź rooma i przenosi mnie do rm_-1_0. Albo wylatuje nad rm_0_0 i przenosi mnie do rm_0_1.

 

Chodzi o to, że pierwszy zero to X, drugie to Y.

Tzn: rm_x_y.

Rozumiecie?

Jeśli idzie, to jak to zrobić?

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chodzi o to, że przechodzisz przez krawędź rooma, to daj:

GML
if (x < 0)

{

room_goto(rm_-1_0);

}

A czy mi się tylko zdaje, czy w nazwach roomów, obiektów nie można dawać myślników?

 

E: Sorry, nie zrozumiałem pytania, mój błąd.

Nie o to Ci chodziło zapewne.

Odnośnik do komentarza
Udostępnij na innych stronach

  • Administratorzy

GML
plansza[0][0] = room_jakistam1;

plansza[1][0] = room_jakistam2;

plansza[0][1] = room_jakistam3;

plansza[1][1] = room_jakistam4;

 

a potem

 

GML
room_goto(plansza[a]);

 

ofc za a i b podstawiasz co Ci potrzebne

Odnośnik do komentarza
Udostępnij na innych stronach

Nie o to mi chodzi...

Chcę, aby to się działo automatycznie :P

Tzn.

Po przejściu za room pogrubiona wartość +1. rm_0_0 Bez ręcznego, zmieniania.

Np.

room = rm_0_0

if x<-2 rm_(+1)_0

 

I przenosi do rooma 0+1_0 czyli rm_1_0.

Tylko nie wiem, jak wartość umieścić w nazwie rooma :X

Odnośnik do komentarza
Udostępnij na innych stronach

  • Administratorzy

To podałem właśnie wyżej, wystarczyło sobie lekko zaadoptować.

 

Za a i b (tak miałeś właśnie zrobić) podajesz np. global.room_x i global.room_y, wtedy:

 

GML
if x>room_width {

global.room_x +=1;

room_goto( global.plansza[ global.room_x][global.room_y] );

}

 

 

Hint:

Pamiętaj, że nazwa room_1, room_jakis, to tylko ID planszy, czyli tak naprawdę cyferka (jakiej byś nazwy nie podał room zawsze ma stałą cyferkę ustaloną w momencie jego tworzenia, równą liczbie z domyślnej nazwy). To są zmienne, które ułatwiają operacje na roomach.

 

Napisz sobie taki kod:

 

GML
show_message(string(room1));
i zobaczysz, że room_goto(room1) to tak naprawdę room_goto(1);
Odnośnik do komentarza
Udostępnij na innych stronach

GML
room=rm_'+string(rmx)'_'+string(rmy)'

 

To też nie działa, a źle wkleiłem, bo kombinowałem wcześniej

Ale każdy wie o co chodzi, i jak uzyskać taki sam efekt?

 

No nie no, nie orientuje się w tym... Wiem jak to zrobić, tylko nie znam komend i takich różnych w Gmie :(

Odnośnik do komentarza
Udostępnij na innych stronach

Oki, zrobiłem jakoś. Ale mam jeszcze problem.

Bo..

 

Zmienna rmx i rmy = 100 (w Create postaci) i gdy przechodzę do innego rooma to te zmienne ustawiają się znowu na 100, a object jest Persident (czy jak to tam) i się przenosi automatycznie a nie tworzy od nowa.

No to jak ten problem rozwiązać, żeby zmienne nie robiły się od nowa.

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