Sutikku Opublikowano 29 Września 2014 Opublikowano 29 Września 2014 Witam. Chciałem zrobić aby w skrypcie, sprawdzało ile argumentów chcę podać. Próbowałem tak. GML var count = argument[0] for(i=1; i<count; i++) { data=argument } Tylko, że kompilator uznaje to za błąd. Wprowadziłem zbyt dużą liczbę argumentów, niż program oczekiwał. Korzystam z Studio, można jakoś coś takiego zrobić?
I am Lord Opublikowano 29 Września 2014 Opublikowano 29 Września 2014 argument_count This read-only variable returns the number of "arguments" that are passed through to a script. Normally used in conjunction with an argument array (argument[0...15]) to permit varying input arguments for a given script.
Sutikku Opublikowano 30 Września 2014 Autor Opublikowano 30 Września 2014 Próbuję tego użyć ale mam problem(y). Tak wygląda urywek kodu GML var ID = argument[0] var count = argument_count /*for(i=1; i<count; i++) //ten kod też nie działa, ten sam problem, nie wykrywa tablicy msg[2] { msg=argument }*/ if(count==2) msg[1]=argument[1] if(count==3) { msg[1]=argument[1] msg[2]=argument[2] /*--TROCHĘ DALEJ--*/ if(count==2) { buffer_write(Buffer, buffer_u32, msg[1]); } if(count==3) { buffer_write(Buffer, buffer_u32, msg[1]); buffer_write(Buffer, buffer_u32, msg[2]); //tutaj wykrywa błąd, w tablicy msg } Nie wiem co z tym zrobić. Próbowałem na różne sposoby, ale nie wiem w czym problem.
ediepl Opublikowano 30 Września 2014 Opublikowano 30 Września 2014 W studio musisz użyć wszystkich argumentów których użyłeś w skrypcie, to nie przejdzie.
Sutikku Opublikowano 30 Września 2014 Autor Opublikowano 30 Września 2014 Mam też kod, w którym wysyłam tylko 1 wiadomość. writemsg(1, current_time). To akurat działa. Więc nie rozumiem? I przecież wszystkie argumenty które podaję, przyjmuje tak? E: Czegoś nie dopisałem...wysyłam wiadomość w ten sposób. writemsg(2, x, y). W tym wypadku jest błąd. Kiedy wysyłam tylko jedną writemsg(1, current_time), to działa.
ediepl Opublikowano 30 Września 2014 Opublikowano 30 Września 2014 Chodziło mi o to że jak używasz w skrypcie 4 argumentów, to w jego wywołaniu nie możesz użyć mniej. EDIT: A jak deklarujesz tablice msg?
Sutikku Opublikowano 30 Września 2014 Autor Opublikowano 30 Września 2014 Na górze edytowałem komentarz. Muszę użyć wszystkich argumentów w skrypcie. Więc jeśli podam za mało, to nie zadziała. O dziwo zadziałało, kiedy używam tylko 2. Może sprawdzę co jest przypisane, do tablicy.
Sutikku Opublikowano 30 Września 2014 Autor Opublikowano 30 Września 2014 Tablica była źle deklarowana (czy tam definiowana, nevermind). Zła nazwa była podana. Dziękuje za pomoc, teraz wszystko działa, mogę sobie w prosty sposób wysyłać dane :)
Administratorzy gnysek Opublikowano 30 Września 2014 Administratorzy Opublikowano 30 Września 2014 Nie wiem po co przypisujesz te dane z argument[X] do zmiennych, zamiast uzywac ich od razu. Tylko namnażasz zmienne, które już mają wartości.
Rekomendowane odpowiedzi
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ę