Skocz do zawartości

Threef

Moderatorzy
  • Postów

    2 911
  • Dołączył

  • Ostatnia wizyta

  • Wygrane w rankingu

    14

Treść opublikowana przez Threef

  1. Technologia nie ma już za dużo znaczenia, bo można to napisać w najszystszym połączeniu HTML4 z JavaScript albo posilić się jakimiś frameworkiem. natomiast jeżeli chodzi o resztę pytania czyli: czy osoba bez doświadczenia jest w stanie coś takiego sama zrobić?. Odpowiedź brzmi nie. Bo to jest właśnie doświadczenie potrzebne nie tylko w napisaniu takiej strony ale również w jej designie. Dlatego z takimi projektami często jest tak że prosi się kogoś znajomego albo studenta żeby zrobił za 200zł a potem zwraca się do agencji reklamowej aby wykonała to poprawnie.
  2. [0,0] to zawsze lewy górny [display_get_gui_width(),0] to zawsze prawy górny [0,display_get_gui_height()] to zawsze lewy wolny [display_get_gui_width(),display_get_gui_height()] to zawsze prawy dolny
  3. Twój problem jest raczej w tym że robisz zmienną lokalną którą potem zamieniasz w tablicę lokalną. Poczytaj dokładnie jak działa var. ;)
  4. Threef

    Filmy

    Ostatnio była jakaś lista że z ogłoszonych filmów które maja wyjść w ogóle jest chyba 5 oryginalnych produkcji. Reszta to są albo remake albo sequele prequele. Smutno. A ja w czwartek obejrzałem w końcu Doctor Strange. Już wiem czemu pierwsze informacje o produkcji tego filmu obiły się takim echem. Jeżeli ktoś znał postać z komiksów to od razu pojawiała się lampka w głowie że to idealny film na aktualną technologię. Efekty specjalne są po prostu idealne. Gdyby to nie był kolejny film o superbohaterach i nie wiedziałbym że skończy się happy endem to byłby bardzo dobry.
  5. O wiele łatwiej jest napisać taką aplikację która zapisuje ustawienia do pliku niż robić to w GM.
  6. Dester już dawno dał Ci idealne rozwiązanie.
  7. Potwierdzam jakość. Gra zdeklasowała inne i zajęła pierwsze miejsce. Wydaje mi się że wszystkim się podobała, ale głowy bym sobie za to nie dał uciąć. ;)
  8. Wszystko sprowadza się do zrozumienia pętli while i funkcji sign(). sign() zwraca znak, czyli to czy liczba jest na minusie, na plusie czy równa 0. Pętla while jest podstawą i nie odważę się jej tłumaczyć. A tłumacząc kod "na Polski" to będzie tak:
  9. Ranmus. Za to że widziałem go w tym roku raz online. Czyli użytkownik roku.
  10. Mira. Chociaż uzasadnienie jest okropne: To jedyna w jaką grałem. Ale i tak jest bardzo dobra.
  11. Nie wyłoży aż tak. Gdy jakimś cudem image_angle zostanie odjęte od na przykład 1000 to w pierwszym step doda 360, w drugim doda 360, w trzecim też aż dojdzie do plusowych. Zakładam że autor sobie obraca image_angle sam a potem próbuje to porównywać jakoś do czegoś. Stąd ta potrzeba.
  12. GML image_angle=(image_angle+360) mod 360 Na początku step. Przed wszystkimi obliczeniami.
  13. Jakiś jeden obiekt za to odpowiada. Może być to twój gracz. zasada jest taka że to co step resetuje ci pozycję myszki na środek ekranu. A ty ruszając myszką możesz sprawdzić odległość o jaką ruszyłeś. Potem znów pozycja będzie zresetowana. Tylko nie jestem pewien czy to działa. Może trzeba było to inaczej zrobić. Tak czy inaczej to jest cały pomysł.
  14. Ja polecę jeszcze inny sposób (to co gnysek pisał aporopos 3D). GML (create) xcenter=window_get_width()/2 GML (step) direction+=mouse_x-xcenter display_mouse_set(xcenter,window_get_height()/2)
  15. Gra roku: Dzień jak co dzień - I am vader (LeD) Decrementing Steps - hamtaren Użytkownik roku: Uzjel Oboje naobiecywaliśmy ale ty chociaż zacząłeś walki robotów. Cytat roku: gnysek Czołg Krymski (Kiełbasa Krakowska)
  16. Ja to zrobiłem w 2014. Nie przesadzajmy. Odkopany temat to nie powód do nominacji. Trzeba przejrzeć Ligę i stamtąd wykopać gry. No i na prawdę dodajmy cytat roku.
  17. Rozwiązanie to używać tylko pojedynczego kliknięcia ale mierzyć czas pomiędzy kliknięciami. Jeżeli jest dostatecznie szybki to uznawać zę było to poprawne podwójne kliknięcie. GML (create) click_timer=0 GML (step) if(mouse_check_pressed(mb_left)) { if(click_timer+220000<get_timer()) { //Poprawne podwójne kliknięcie } click_timer=get_timer() } get_timer() to funkcja mierząca milisekundy od uruchomienia gry. Idealnie się sprawdza przy wszystkich licznikach. Dostosuj wartość 220000 do takiej jaka będzie Ci pasować. 220000 to 0.22 sekundy.
  18. Twoja strzała nie znika tylko jest rysowana w miejscu którego się tego nie spodziewasz. Na przykład jakieś x=432+lengthdir_x(0,en.image_angle)+440. Sprawdź jaka jest wartość i się dowiesz. A co do "nienaturalnego" poruszania. Przeciwnik się porusza i obraca. Być może zamiast różnicy w pozycjach x i y musisz zapamiętywać kąt i dystans pomiędzy punktami?
  19. Threef

    Pog(R)adajmy

    Lol po tym jak spotkania w Gdyni nie mogły znaleźć organizatora i się nie odbywały, to w końcu wracają! I to prowadzić będzie je moja znajoma Vera! Spraszam. :P
  20. Chcesz różnicę pomiędzy puntem kolizji a origin przeciwnika. GML px=x-en.x py=y-en.y Poza tym lepiej sprawdzać kolizję tak: GML var en=collision_point(x,y,obj_Enemy_parent,1,0); if (en)&&(hit=false)&&(wall_hit=false){ Instance nearest jest nie potrzebne i może zwracać błędy gdy jest dużo obiektów wokół siebie. A sama funkcja collision_point() zwraca ID instance z którym koliduje.
  21. End Step wykona się po tym jak wszystkie inne obiekty wykonają swój step. Wydaje się to bardzo sensowne gdy chcemy wykonać coś zaraz po zwykłym step... ale to prowadzi do dużego bałaganu w kodzie. Szczególnie jeżeli trzeba później coś wykonać po tym End Step. Miejsce wbicia masz tutaj. Ustawiasz to zawsze na tę samą wartość. GML x=en.x+lengthdir_x(0,enemy.image_angle) y=en.y+lengthdir_y(0,enemy.image_angle) Może spróbuj tutaj także zapisać wartość o ile pixeli było przesunięcie?
  22. W swoim endstep przy kolizji dopisz jakoś relatywny kąt pod jakim wbiła się strzała a potem rysuj uwzględniajac ten kąt. GML if hit=true { if (instance_exists(enemy)){ x=en.x+lengthdir_x(0,enemy.image_angle) y=en.y+lengthdir_y(0,enemy.image_angle) angle=image_angle-enemy.image_angle GML image_angle=enemy.image_angle+angle I staraj się nigdzie w projekcie nie używać begin i end step. Nie są potrzebne a to że ich potrzebujesz jest znakiem że masz bałagan w kodzie.
  23. Potrzebuję shadera który narysuje tylko pixele o odpowiednim wybranym przeze mnie kolorze. Coś typu: vec4 col = texture2D( gm_BaseTexture, v_vTexcoord ); if(col.r != 1.0 && col.g != 1.0 && col.b != 1.0) { col.a = 0.0; }
×
×
  • Dodaj nową pozycję...