Skocz do zawartości

Tymon

Użytkownicy
  • Postów

    5 841
  • Dołączył

  • Ostatnia wizyta

  • Wygrane w rankingu

    5

Treść opublikowana przez Tymon

  1. GML literka = 'a'; while( !file_exists( literka + ":/nazwapliku.rozszerzenie" ) && literka != 'z' ) literka = chr( ord( literka ) + 1 );
  2. Tymon

    Matematyka, diagramy

    A fu. Trochę przesadzasz z tym poziomem. EDIT x*0.2+y*0.1=40000 x*0.3+y*0.4=120000 x+y=...
  3. GML draw_text(obj_character.x+200,obj_character.y-10,textbox1)?
  4. new zgubiłeś, a tak w ogóle: var pole = []; var n = 0; for (x = 0; x <= 20; ++x) { for (y = 0; y <= 20; ++y) { pole[n] = [x,y,0,0]; n++; } } Poza tym masz jakieś strasznie toporne rozwiązania.
  5. Było by publiczne gdybyś wystąpił w wiadomościach... ;)
  6. Jeśli wszystko jest wyrównywane do siatki to w sumie nie musisz wysyłać dokładnej pozycji x,y tylko jej krotność 32 czy 16, ograniczysz to do 2 bajtów. Więc ja bym zrobił to tak, dla serwera, w oddzielnym obiekcie o nazwie np. WysylaczMapy: GML (Create) socket = -1; // ID socketa klienta do którego serwer wyśle dane krok = 0; // Czyli ktora operacje bedziemy wykonywac alarm[0] = 300; // Timeout 30 sekund</span></span> GML (Alarm0) // Sprawdz czy socket jest polaczony if( socket_podlaczony( socket ) ) zamknij_socket( socket ); // Zamknij jesli tak // Zniszcz show_debug_message( 'Wyslanie mapy nie powiodlo sie.' ); instance_destroy(); GML (Step) // Sprawdzenie czy przekazano ID socketa i czy jest on polaczony switch( krok ) { // Wyslanie pakietu inicjujacego case 0: wyczysc_bufor(); dodaj_do_bufora( 1 ); // ID pakietu dodaj_do_bufora( ilosc_obiektow ); // Ilosc obiektow dodaj_do_bufora( ilosc_tilesetow ); // Ilosc tilesetow wyslij_bufor( socket ); alarm[0] = 300; // Wyzeruj timeout // Nastepny krok krok += 1; break; // Oczekiwanie potwierdzenia odbioru pakietu inicjujacego case 1: if( odebrano_dane() ) { alarm[0] = 300; // Wyzeruj timeout if( odczytaj_z_bufora() == 1 ) krok += 1; // Nastepny krok } break; // Wysylanie okietow case 2: wyczysc_bufor(); dodaj_do_bufora( 2 ); // ID pakietu dodaj_do_bufora( obiekty_wyslane ); // ID obiektu with( obiekty[obiekty_wyslane] ) { dodaj_do_bufora( x ); // x obiektu dodaj_do_bufora( y ); // y obiektu // ... inne zmienne } wyslij_bufor( socket ); alarm[0] = 300; // Wyzeruj timeout krok += 1; // Nastepny krok break; // Oczekiwanie potwierdzenia odbioru obiektu case 3: if( odebrano_dane() ) { alarm[0] = 300; // Wyzeruj timeout if( odczytaj_z_bufora() == 2 ) { obiekty_wyslane += 1; if( obiekty_wyslane < obiekty_do_wyslania ) krok -= 1; // Poprzedni krok else krok += 1; // Nastepny krok } } break; // Wysylanie tilesetow case 4: wyczysc_bufor(); dodaj_do_bufora( 3 ); // ID pakietu dodaj_do_bufora( tilesety_wyslane ); // ID tileseta with( tilesety[tilesety_wyslane] ) { dodaj_do_bufora( x ); // x tilesetu dodaj_do_bufora( y ); // y tilesetu // ... inne zmienne } wyslij_bufor( socket ); alarm[0] = 300; // Wyzeruj timeout krok += 1; // Nastepny krok break; // Oczekiwanie potwierdzenia odbioru tilesetu case 5: if( odebrano_dane() ) { alarm[0] = 300; // Wyzeruj timeout if( odczytaj_z_bufora() == 3 ) { tilesety_wyslane += 1; if( tilesety_wyslane < tilesety_do_wyslania ) krok -= 1; // Poprzedni krok else krok += 1; // Nastepny krok } } break; // Wyslanie pakietu konczacego case 6: wyczysc_bufor(); dodaj_do_bufora( 4 ); // ID pakietu wyslij_bufor( socket ); alarm[0] = 300; // Wyzeruj timeout // Nastepny krok krok += 1; break; // Oczekiwanie potwierdzenia odbioru pakietu inicjujacego case 7: if( odebrano_dane() ) { if( odczytaj_z_bufora() == 4 ) { instance_destroy(); } } break; } Obiekt tworzymy tak:GML i =instance_create(WysylaczMapy); i.socket = id_socketa_klienta; Dla klienta analogicznie, odpowiada tylko na wiadomości serwera.
  7. Tymon

    Foto-galeria

    xD Jestem wyższy, podobieństwem jest sposób zachowania. xD
  8. Używaj TCP, a inną sprawą jak wygląda sama mapka, mógłbyś podać szczegóły?
  9. Tymon

    Foto-galeria

    A to czekaj, polecę po tą koszulę i strzelę sobie znowu focię. ;D
  10. Tymon

    Foto-galeria

    Jak zwykle owłosiony, a do tego zrobiłem zeza ale kij. Dorobiłem się pary okularków i jestem happy.
  11. A to się nie robiło: prog.exe > file.txt By mieć wynik działania programu konsolowego? Później tylko odczytać plik file.txt i ziu.
  12. parameter_count() i parameter_string(n). GML switch( parameter_string( 1 ) ) { case '-a': show_message('A!'); break; case '-b': show_message( parameter_string( 2 ) ); break; }
  13. Tymon

    Tura #72

    W Twoją grę I am vader gra się tak: GML (Create) sleep( 3000 ); keyboard_key_press( vk_space ); sleep( 100 ); keyboard_key_release( vk_space ); sleep( 100 ); keyboard_key_press( vk_left ); keyboard_key_press( vk_space ); sleep( 1000 ); keyboard_key_release( vk_left ); W grę Stasia tak:GML (Create) sleep( 3000 ); keyboard_key_press( vk_space ); sleep( 100 ); keyboard_key_release( vk_space ); sleep( 100 ); keyboard_key_press( vk_right ); sleep( 2900 ); keyboard_key_press( vk_up ); sleep( 100 ); keyboard_key_release( vk_up ); sleep( 500 ) keyboard_key_release( vk_right ); keyboard_key_press( vk_left ); sleep( 3500 ); keyboard_key_press( vk_up ); sleep( 100 ); keyboard_key_release( vk_up ); sleep( 500 ); keyboard_key_release( vk_left ); sleep( 300 ); keyboard_key_press( vk_up ); sleep( 100 ); keyboard_key_release( vk_up ); game_end(); I kto tu wyolbrzymia?
  14. Tymon

    Tura #72

    W grę donwaya gra się tak: GML (Step) keyboard_key_press( vk_up ); sleep( 1 ); keyboard_key_release( vk_up );
  15. Tymon

    Epidemia

    Od kiedy ściany lewitują? :/
  16. Tymon

    Tura #72

    Tak, to bardzo smutne.
  17. Tymon

    Problem z laptopem

    No dokładnie to. Rzuć modelem to się poszuka oprogramowania.
  18. Tymon

    Moderacja

    KRS. Znaczy i tak i nie. Dla mnie funkcja administratora zawsze oznaczała połączenie funkcji redaktora i moderatora, a obsługa techniczna nie leży w kompetencji ani tych, ani tamtych.
  19. Tymon

    Moderacja

    Pieter trochę przesadzasz z tym, że się staram by wszystkim żyło się tu lepiej, jakby nie patrzeć GMCLAN ostatnio interesuje mnie tylko od strony kodu, obecnie mam z nim tak mało wspólnego, że to nawet tytuł redaktora czy moderatora średnio mi się należy, a tym bardziej administratora. No i mój zapał trudno nazwać tymczasowym bo trwał chyba ze dwa lata.
  20. Tymon

    Moderacja

    Po prostu taka była idea valhalli. W sumie masz rację, zasady powinny być bezwzględne nawet dla tego działu, ale znowu użytkownicy podnieśli protest, że jesteśmy zbyt surowi - tak jak to było jakiś czas temu.
  21. Tymon

    Moderacja

    Słaby argument. Chyba w wakacje zaproponowałem by usunąć kompletnie valhalle, moim zdaniem jej istnienie nie jest tu kompletnie do niczego potrzebne, a sam niespecjalnie przejął bym się spadkiem aktywności niektórych użytkowników. :) Mimek jest moderatorem bo zespół redaktorski poparł jego kandydaturę.
  22. Tymon

    Moderacja

    Zaxxis, a my to maszyny... pomylić się nie możemy? Nie wiem kto Ci dał bana na miesiąc, ale to jego kultura powinna zobowiązywać do przeproszenia za swój błąd, ale to nie tak, że tylko jego, Ciebie też powinna obowiązywać. Na przyszłość jeśli chcesz oczekiwać czegoś od innych to najpierw sam bądź ok. Po za tym pamiętaj, że w Twoim interesie leży upomnienie się o ukrócenie bana o 27 dni, a nie naszym. Osiem, kusisz. :) Dziękuję za poparcie, Jaklubie, Nikas.
×
×
  • Dodaj nową pozycję...