Skocz do zawartości

Utermiko

Użytkownicy
  • Postów

    796
  • Dołączył

  • Ostatnia wizyta

Treść opublikowana przez Utermiko

  1. GML //ktory = x % 640 - źle;p ktory = floor(x / 640); view_xview = ktory * 641; view_wview = ktory * 641 + 640; @Edit źle. pośpieszyłem się :P Exigo dobrze napisał. Już poprawiłem.
  2. Tcp do rzeczy które są stosunkowo rzadko wysyłane i muszą dotrzeć, np. chat. Udp do rzeczy które są wysyłane często i utrata jednego nie wpłynie na rozgrywkę (można je zignorować) np. pozycja gracza. Należy przy tym pamiętać, aby numerować pakiety. Jeśli stara pozycja przyjdzie później niż aktualna to należy ją zignorować. Jak piszesz shootera to oczywiście najlepiej użyć obu. Do rozgrywek partyjnych typu kólko i krzyżyk, statki, szachy wystarczy TCP.
  3. co? TCP zawsze dociera, ale może dotrzeć w kawałkach, zawsze w dobrej kolejności. Np. wysyłasz 'Hello World!' oraz 'Siema' Może dotrzeć tak: 'Hell' 'o Wor' 'ld!Sie' 'ma' Spowodowane jest to tym, że dane w TCP przesyłane są strumieniami. Aby temu zapobiec zazwyczaj dopisuje się na początku długość wiadomości (najczęściej 4 bajtowy int) i łączy je u odbiorcy. UDP jest szybki, ale pakiet możne nie dotrzeć wcale lub w innej kolejności. Pakiet zawsze dociera w całości więc nie występuje "dzielenie" pakietu tak jak w przypadku TCP gdyż tutaj dane są wysyłane datagramami. Wysyłasz 'Hello World!', 'Siema' oraz 'Witam'. Wiadomość może dojść tak: 'Siema' 'Witam' 'Hello World!'. @EDIT A no i w przypadku 39dll bodajże nie trzeba się przejmować dzieleniem wiadomości w TCP. Jeśli się mylę to poprawcie mnie. @EDIT2 Przykłady? Google: java socket tutorial. @EDIT3 No i nie zapominaj, że jak chcesz UDP to u klienta muszą być odblokowane porty. Jeżeli to nie wchodzi w grę to użyj UDP Hole Punching.
  4. Spróbuj zrobić to obracanie w nowym, czystym projekcie. Jak nie będzie się trząść to znaczy, że zmieniasz za szybko x i y tak jak wspomniał gnysek.
  5. Nie wiem czy to cokolwiek da, ale spróbuj zaokrąglać image_angle.
  6. Ja kiedyś sprawdzałem w GM 7 i działało.
  7. Podłącz tego pada/joystick i sprawdzaj jakie przyciski/drążki czy co tam jeszcze GM przechwytuje.
  8. Przejrzałeś wgl eventy dla joysticka? One powinny Ci wszystko wyjaśnić. Poza tym wybrałeś zły dział.
  9. Serio? https://gmclan.org/index.php?wiki=article&zm=56
  10. #include <iostream> using namespace std; void fun() { x=5; } int main() { int x=4; fun(); cout<<x; return 0; } Tak jak powyżej nie można zrobić. Poczytaj o zasięgu zmiennych. Można zrobić tak: #include <iostream> using namespace std; int x; void fun() { x=5; } int main() { x=4; fun(); cout<<x; return 0; } lub tak #include <iostream> using namespace std; void fun(int* x) //parametr nie musi się nazywać x { *x=5; } int main() { int x=4; fun(&x); cout<<x; return 0; } Pewnie znajdą się jeszcze jakieś bardziej eleganckie sposoby :)
  11. Utermiko

    Pomoc przy Grafice

    Chcę mu pomóc na tyle co potrafię. Mi jest łatwiej przerysować coś ze zdjęcia i efekt nie jest najgorszy.
  12. Utermiko

    Pomoc przy Grafice

    Znajdź w googlach zdjęcie kropli wody i próbuj przerysować. A nuż wyjdzie :)
  13. @EDIT Up szybszy Persistent bodajże, ale IMO lepiej zrobić w Create obiektu playera GML y = global.oldY; I w room end dać GML global.oldY = y; Pewnie jest jeszcze jakieś lepsze rozwiązanie :)
  14. Jemu chodziło o to, że do grafiki jest temat "Galeria grafik".
  15. Jak twoja gra nie jest w Program Files to najlepiej w katalogu z grą. W przeciwnym wypadku możesz dać w AppData.
  16. Poczytaj o tablicach. @EDIT Wtedy to będzie wyglądało mniej więcej tak: GML //SCR_INIT current_line=1 warten=0 for(i=0; i<=12; i+=1) text=""; GML //SCR_STEP if keyboard_check(vk_f9) then game_restart(); warten+=1 if keyboard_check_pressed(vk_up ) {if current_line>1 {current_line-=1;warten=0}} if keyboard_check_pressed(vk_down) {if current_line<7 current_line+=1;warten=0} if keyboard_check_pressed(ord('G')) then {} if warten<=1 {keyboard_string=text[current_line]} else text[current_line]=keyboard_string GML //SCR_DRAW draw_set_color(c_green) for(i=2;i<=8;i+=1) { if (i == current_line) draw_text(16, 16*i, text[current_line] + "_"); else draw_text(16, 16*i, text); //draw_text(16, 16*i, text[current_line]); //pomyłka hehe } Popraw sobie żeby indeksowało od zera. Pisane na szybko więc gdzieś może być błąd.
  17. IMO statki wroga, kamienie i wgl wszystko co się rusza jest takie mało płynne. Zmniejsz szybkość ruchu obiektów i zwiększ room speed. @EDIT I jeszcze losowe levele. Ty będziesz miał mniej roboty i efekt lepszy.
  18. Utermiko

    Dodanie DLL

    Bo te foldery są bodajże ukryte. Wpisz w pasku adresu albo %appdata% w Uruchom.
  19. Translator od google tłumaczy tą stronę w takim stopniu, że można coś zrozumieć. (imo łatwiej jest czytać po angielsku. wystarczy znać język na poziomie gimnazjum).
  20. Z tego co wiem to GM:S kompiluje do kodu natywnego. W 8.x i wcześniejszych interpretował go.
  21. Czego mam zazdrościć? :) Nie znasz się na tym == nie zarobisz na tym. @Topic http://stackoverflow.com/questions/4845082...-generated-html Word to clean HTML
  22. Chcesz na tym zarabiać, ale się na tym nie znasz i chcesz żeby ktoś za Ciebie to zrobił. Good luck.
  23. W czasie gdy pisałeś tą odpowiedź to byś to ze 2x sprawdził i znalazł rozwiązanie.
  24. @EDIT Up szybszy ;p A kto powiedział że css musi być w oddzielnym pliku? http://www.kurshtml.edu.pl/css/wewnetrzny_...wstawianie.html
×
×
  • Dodaj nową pozycję...