Skocz do zawartości

Networking - nie działa network_send_packet


Jeremiah

Rekomendowane odpowiedzi

Pomoże ktoś z jakimś dziwnym błędem? Opieram się na tym opisie:

 

https://forum.gmclan.org/index.php?showtopi...p;hl=networking

 

ale nie działa mi wysyłanie.

 

Gdy ktoś się łączy mam:

 

GML
sok++

ds_list_add( global.socketlist, sock )

ds_map_add( global.clients, sock, sok )

 

Ale gdy coś wysyłam:

 

GML
var buff = buffer_create(256, buffer_grow, 1)

buffer_seek(buff, buffer_seek_start, 0)

buffer_write(buff, buffer_s16,99)

buffer_write(buff, buffer_string, mesedz)

for (var i = 0; i < ds_list_size(global.socketlist); i++)

{

network_send_packet(ds_list_find_value(global.clients, i), buff, buffer_tell(buff));

}

 

... w ogóle nie wysyła, wywala błąd "network_send_packet argument 1 incorrect type (5) expecting a Number (YYGI32)"

A gdy sobie zerkam co jest pod ds_list_find_value(global.clients, i) to okazuje się, że "undefined". Dlaczego?

 

Jak podmieniam na "network_send_packet(i+1, buff, buffer_tell(buff));" to niby wysyła, ale dlaczego nie chce mi działać to powyżej?

Odnośnik do komentarza
Udostępnij na innych stronach

Do jednej działa, do wszystkich też mogę, jeśli tylko zrezygnuję z "ds_list_find_value(global.clients, i)" na rzecz po prostu "i+1".

 

GML
ds_map_add( global.clients, sock, sok );

show_message(ds_list_find_value(global.clients, 0))

Ale nic dziwnego jak pod show_message mam undefined. Nie wiem o co chodzi.

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