Skocz do zawartości

Tymon

Użytkownicy
  • Postów

    5 841
  • Dołączył

  • Ostatnia wizyta

  • Wygrane w rankingu

    5

Treść opublikowana przez Tymon

  1. Dla mnie najlepszą księgarnią jest google.pl i wikipedia.pl ;)
  2. repeat( abs( hspeed ) ) { sig = sign( hspeed ); if( !place_free( x, y + 1 ) && place_free( x + sig, y + 3 ) ) { x += sig; y += 3; } else if( !place_free( x, y + 1 ) && place_free( x + sig, y + 2 ) ) { x += sig; y += 2; } else if( !place_free( x, y + 1 ) && place_free( x + sig, y + 1 ) ) { x += sig; y += 1; } else if( place_free( x + sig, y ) ) { x += sig; } else if( !place_free( x, y + 1 ) && place_free( x + sig, y - 1 ) ) { x += sig; y -= 1; } else if( !place_free( x, y + 1 ) && place_free( x + sig, y - 2 ) ) { x += sig; y -= 2; } else if( !place_free( x, y + 1 ) && place_free( x + sig, y - 3 ) ) { x += sig; y -= 3; } else { break; hspeed = 0; } } Prosty kodzik. Podstaw tylko za hspeed twoją zmienną odpowiadającą za prędkość.
  3. Gnysek, ale to niewygodne :/ Mat, to jeszcze inaczej. Zrób sobie tablicę pomocniczą która będzie miała: [n,0] - typ przedmiotu. [n,1] - ilość przedmiotu. gdzie n to poszczególne wpisy. Teraz sprawdzasz główną tablicę i jeśli natrafia na jakiś przedmiot to: for( n = 0; n <= tempNsize; n += 1 ) { if( temp[n,0] = przedmiot ) temp[n,1] += 1; else { if( n = tempsize ) { tempsize += 1; temp[tempsize,0] = przedmiot; temp[tempsize,1] = 1; } else continue; } } I za pomocą takiej tablicy możesz wszystko rysować :3 Oczywiście to nie jest dobre bo ma kilka błędów ale chyba zasadę da się zrozumieć ;)
  4. Tymon

    kolorowanie składni

    Zawsze można ładować stringa w pętli i odczytywać poszczególne znaki i ewentualnie zmusić program do sprawdzenia co to za znaki ;P
  5. Da się coś takiego zrobić. Użyć trzeba parametrów i przekazać do aplikacji stringa z ścieżką do pliku którą później sobie zapisze do jakiejś zmiennej. Przydało by się też skojarzyć plik z aplikacją.
  6. Tymon

    AI

    Tak, ale zależy też jakie chcesz.
  7. Tymon

    Galeria Grafik

    Gnysek, ja im mówiłem :3 Marmi, ale nie wszystkich.
  8. Sprawdź wersję DirectXa. Może być tak jak Mat mówi - jakaś część kodu obciąża zbytnio procesor.
  9. Uwzględnij pozycję viewa przy rysowaniu.
  10. Buheheh, pomyliło mi się xD if keyboard_check( vk_right ) direction -= 5; image_angle = direction;
  11. if keyboard_check( vk_left ) direction += 5; image_angle = direction;
  12. Tymon

    Galeria Grafik

    Markos, podaj im linka xD Widać chcą się pozbyć dzisiejszego śniadania. Ostrzegałem :3
  13. Tymon

    Galeria Grafik

    Markos zawsze może Ci pokazać to na GG :3
  14. Mi się udało zrobić to co chciałeś tak: if( !variable_local_exists( 'hp' ) ) hp = 0; maxhp = 100; hp = min( hp + 1, maxhp ); maxrot = 1440; rot = 100; size = 50; for( n = 1; n < rot * hp / maxhp; n += 1 ) { xl = lengthdir_x( size * ( n - 1 ) / rot, ( maxrot / rot ) * ( n - 1 ) ); yl = lengthdir_y( size * ( n - 1 ) / rot, ( maxrot / rot ) * ( n - 1 ) ); xn = lengthdir_x( size * n / rot, ( maxrot / rot ) * n ); yn = lengthdir_y( size * n / rot, ( maxrot / rot ) * n ); draw_line( xl + x, yl + y, xn + x, yn + y ); } A jak chcesz zwykły to tylko: if( !variable_local_exists( 'hp' ) ) hp = 0; maxhp = 100; hp = min( hp + 1, maxhp ); width = 600; height = 16; draw_rectangle( x, y, x + hp / maxhp * width, y + height, 0 );
  15. Można to zrobić za pomocą tabeli drzewiastej (nie wiem jak to inaczej nazwać, można to porównać z drzewkiem katalogów na dysku), tylko jest problem bo nie można w GMie zapisywać tablicy w tablicy, ale jest ds_map więc warto użyć. Ilość wszystkich przedmiotów w ekwipunku? To możesz zrobić w draw przed pętlami for zmienna = 0; i w pętli która wyświetla wszystkie przedmioty zmienna+=1;. W taki sposób uzyskasz ilość wszystkich przedmiotów. Można też zrobić dla tego oddzielną pętlę. ;)
  16. A tym to mnie obraziłeś. Niekoniecznie, choć mogłeś. I bardzo dobrze, ale można zrobić to tak żeby działało szybciej i mogę się nawet o to założyć. Prosty test, ustaw room_speed na 9999 i odczytaj FPS przy kolejnych akcjach (najlepiej w debug mode). No i tu masz też rację, tylko że nie każdy jest GMaster i nie każdy chce tylko skopiować czyjś przykład. Ale to raczej zbędnie poruszony temat. |Hm, zawsze mi się wydawało że opisanie kolejnych akcji wykonywanych przez kod wystarczy. :D Każdej funkcji nie opłaca się opisywać bo jest napisane o tym w manualu. ;) Nie, nie o to mi chodziło :) Widziałem już chyba 2 albo 3 przykłady dialogu napisane przez Ciebie. Dodam że w kodzie wyglądały prawie identycznie, a można było dodać np. możliwość wyboru odpowiedzi - czyli rozbudowany dialog! Wiesz jaka jest polska scena GM :P Oczywiście że się liczy. Jednak w tego typu przykładach jest to nawet wymagane, bo po co mi inwentarz jeśli nie mogę nim zarządzać? :> Kurcze, znowu wychodzi że "mam konkurencję - tempie ją". Irytujące xD
  17. Ok. Z racji że nie jesteś już początkującym nie będę Cię oszczędzał. Napisałeś się jak głupi, można było to zrobić prościej i dużo ciekawiej - nie będę Ci mówił jak, sam myśl! :P Equipment jest niewygodny np. nie można wybierać przedmiotu myszą. Dialog... naprawdę banalny i nie wymaga rozbudowanego komentarza. No i jeszcze ogólny nieład w kodzie - wybacz, ale jeśli chcesz brać się za to na poważnie to powinieneś porządkować swój kod tak aby był czytelny i dla Ciebie i dla innych - szczególnie gdy chcesz udostępniać źródło. Poza tym, komentarze! Nie mam ochoty analizować całego kodu żeby tylko wprowadzić linijkę modyfikacji. ;) Matthew, jestem naprawdę zadowolony z Twojej twórczości i widzę że reprezentujesz już dość wysoki poziom (który też dość szybko uzyskałeś). Jednak widzę też że ciągle powtarzasz to samo i się nie rozwijasz, więc powiem Ci jak najlepszemu przyjacielowi: weź tyłek rusz i spróbuj czegoś nowego :D GM ma dużo funkcji z których nawet nie kożystasz ;) Myślę że nie odbierzesz to jako akt agresji ;P Trzymaj się i keep it up!
  18. Mówiłem ogólnie, a przy okazji i o tym.
  19. Ciekawa alternatywa dla printf :D Dzięki Ranma.
  20. Zapytam się jeszcze raz, jak według was najwygodniej pogodzić HTMLa z PHP? Ja aktualnie mieszam oba w kodzie i pojawiają mi się dość często problemy z modyfikacją - do tego wygląda to jak kupa, a więc jak? Pozdrawiam.
  21. Sprit powinien być dobierany na podstawie pozycji obiektu, prędkości i jego interakcji z otoczeniem (platformami etc.), a nie na podstawie ostatnio naciśniętego klawisza :)
×
×
  • Dodaj nową pozycję...