
Sutikku
Użytkownicy-
Postów
738 -
Dołączył
-
Ostatnia wizyta
-
Wygrane w rankingu
5
Typ zawartości
Profile
Forum
Wydarzenia
Treść opublikowana przez Sutikku
-
Zawansowane obracanie przeciwników
Sutikku odpowiedział(a) na dexter19 temat w Pytania początkujących
Albo coś pomyliłem albo tam masz tak: Jeśli coś jest mniejsze niż -1 ustaw 3 POTEM Jeśli coś jest mniejsze niż -1 ustaw 1 Może on już nie wie co robić? -
Zawansowane obracanie przeciwników
Sutikku odpowiedział(a) na dexter19 temat w Pytania początkujących
Animacja Ci działa tylko do góry i do dołu? W ogóle dobrze masz te animacje zrobione (każdemu się zdarza). Bo to dziwne by było, kod jest taki sam ._. -
Zawansowane obracanie przeciwników
Sutikku odpowiedział(a) na dexter19 temat w Pytania początkujących
Nie musisz powtarzać tego image_speed=0.3. Daj w CREATE. Ale to nie rozwiązuje problemu, a ja nie wiem gdzie on jest. Może ktoś bardziej doświadczony pomoże, ja nie wiem :< -
Zawansowane obracanie przeciwników
Sutikku odpowiedział(a) na dexter19 temat w Pytania początkujących
To znaczy? Bo teraz nie ogarnąłem. Nie ma animacji? Bo tam musisz zmienić ten direction i sprite, ale tak poza tym chyba powinno działać -
Zawansowane obracanie przeciwników
Sutikku odpowiedział(a) na dexter19 temat w Pytania początkujących
Hmmm, wiem, że też miałeś kiedyś taki problem, ale nie mogę znaleźć, gry w której to rozwiązałem, ale zdaje mi się, że tak. GML if (direction=0) and !(sprite_index=spr_skeleton_right) sprite_index=spr_skeleton_right Ale nie jestem pewien, czy w dobry sposób użyłem negacji ( '!' ). Powinno to działać tak. Jeżeli kierunek jest równy 0 oraz indeks jest inny od spr_skeleton_right, to zmienia indeks. Jeśli chcesz spowolnić sprite, to dodaj image_speed = (od 0 do 1, np. 0.3) EDIT; Tylko ten image_speed, jak coś dodaj w CREATE, bo bez sensu cały czas ustawiać na nowo. -
Więc to tak ;O Przyzwyczaiłem się do pętli do...while, a z for nie korzystam przeważnie. Jest jakaś różnica, w z tym until, czy nie ?
-
W ogóle jak to jest z pętlą do...while? Zawsze mi się pokazuje błąd - 'Keyword until excepted'.
-
Sam uważam, że Game Maker jest potężną bronią w rękach programisty, ale wszystko ma swoje wady i zalety ("a kto umarł, ten nie żyje"). Jakie są główne jego wady? Piszcie ogólnie, bo równie dobrze można się cały dzień kłócić co jest lepsze Java czy C++, mi chodzi tylko o główne wady GM.
-
Zawansowane obracanie przeciwników
Sutikku odpowiedział(a) na dexter19 temat w Pytania początkujących
Wchodzisz do uploadera na gmclan proszę Następnie "Przejdź do swojego katalogu" i wybierasz twój plik gmk. W sensie, że tam go wysyłasz i dajesz mi link :) -
Zawansowane obracanie przeciwników
Sutikku odpowiedział(a) na dexter19 temat w Pytania początkujących
To jak masz 4 obrazki, to dziel przez 4, a nie 360. Robi się przez 360, bo chodzi o cały obrót wokół własnej osi, a nie 4 stopnie. EDIT. W sumie jak masz tylko obracanie tylko w 4 strony, to możesz nawet tak zrobić. Mieć 4 różne sprite (nie jest to zbyt dobry sposób, ale i tak robisz na klockach, więc co tam) każdy na inny kierunek. W step tylko sprawdzaj kierunek i na jego podstawie zmieniaj sprite. Wyglądałoby to tak GML (step) if direction=0 sprite_index = spr_skeleton_right if direction=90 sprite_index = spr_skeleton_down if direction=180 sprite_index = spr_skeleton_left if direction=270 sprite_index = spr_skeleton_left -
Zawansowane obracanie przeciwników
Sutikku odpowiedział(a) na dexter19 temat w Pytania początkujących
Nie jestem pewien na 100%, ale jak się ustawia obrót sprite w edytorze, to trzeba ustawić 361, lub 360 klatek. Tyle ustawiłeś? -
Zawansowane obracanie przeciwników
Sutikku odpowiedział(a) na dexter19 temat w Pytania początkujących
Ok tłumaczę jak bym to zrobił, wykorzystasz lub nie, takie kopiuj-wklej, jest bez sensu. GML (create) ii=5 GML (step) ii-=1 // co step zmniejsza licznik if ii < 0 // sprawdza czy licznik doszedł do zera { ii =30 // od nowa ustawia licznik speed = 2 // ustawia prędkość direction=choose(90, 180, 270, 360) // losowy kierunek } Jeśli chcesz mieć wyrównane do siatki to musiałbyś pokombinować z tym GML x = x div 32 * 32 y = y div 32 * 32 Ale za bardzo to nawet nie wiem. No i to GML (step) image_single = direction * image_number/360; Odsyłam do artykułu Z klocków na kod. Mam nadzieję, że pomogłem, chociażby w małym stopniu. Edit: Fragment GML ii=30 oznacza, że co około sekundę (przy 30fps) zmienia kierunek. Jeśli dasz 60, to 2s, 90 to 3s, itd. Kolejny Edit: Zamiast wyrównywania siatki, możesz po prostu losować od 0 do 4, i przeskakiwać o 32 pixele, tzn. jeśli będzie 0 to przeskakuje o 32 pixele w lewo, jeśli 1 to 32 pixele w prawo. Myślę, że wiesz co mam na myśli. -
Zawansowane obracanie przeciwników
Sutikku odpowiedział(a) na dexter19 temat w Pytania początkujących
Hmmm na klockach się znam jak osioł na szczekaniu, nie będę potrafił Ci pomóc. Mogę jedynie polecić przerzucenie się na kod. Oczywiście możesz zrobić tak aby np. zmienna __nazwa__ w momencie wylosowania szansy miała __nazwa__=choose(90, 180, 270, 360), a w tym klocku w direction dał __nazwa__. Chciałem pomóc ale używanie klocków przerasta moje możliwości ;P -
Zawansowane obracanie przeciwników
Sutikku odpowiedział(a) na dexter19 temat w Pytania początkujących
W step masz klocek "Start moving in direction". Może spróbuj to zamienić na ten drugi klocek, niebieski. A żeby wartość była losowa: Ponieważ u Ciebie się chyba rusza po kątach prostych, to możesz w direction dać : choose(90, 180, 270, 360). -
Zawansowane obracanie przeciwników
Sutikku odpowiedział(a) na dexter19 temat w Pytania początkujących
Postaram Ci się to zrobić, za bardzo nie zmieniając tego co masz i wstawiając komentarze. Potem zedytuje ten komentarz, więc śledź ;p PS Najlepiej by było gdybyś wysłał .gmk, ale coś spróbuję, bez gmka. -
Zawansowane obracanie przeciwników
Sutikku odpowiedział(a) na dexter19 temat w Pytania początkujących
To w takim razie Stwórz animację obracającego się ludzika (można do tego użyć opcji 'Animation->Roation sequence' w 'Edit sprite' ). A następnie wpisz w STEP: GML (step) image_single = direction * image_number/360; -
Zawansowane obracanie przeciwników
Sutikku odpowiedział(a) na dexter19 temat w Pytania początkujących
Czyli chcesz żeby boss obracał się w kierunku w którym idzie? GML (step) image_angle=direction // rotacja obrazu jest równa kierunkowi</span></span> Tylko, że wtedy musi się poruszać poprzez zmienną direction np. GML (step) ii-=1 // co step zmniejsza licznik if ii < 0 // sprawdza czy licznik doszedł do zera { ii =30 // od nowa ustawia licznik speed = 2 // ustawia prędkość direction=random(360) // losowy kierunek } Ale taki kod tylko jeśli na bossa nie działa grawitacja. Jeśli masz grawitację to musisz zrobić inny kod na poruszanie. Wtedy możesz zmieniać image_angle (kierunek od 0 do 360). Do wersji lite chyba musisz dodać w sprite klatki, za pomocą jakichś funkcji. Jest to w FAQ, dokładnie nie pamiętam przepraszam. Gra to platformówka? Odpisz, to postaram się coś zrobić :) P.S. Czy ty tam masz object258? Zwariowałeś czy jak? ;O -
Wow ;O To życzę wytrwałości, bo od patrzenia na kod, pewnie kręci Ci się w głowie ;)
-
Będzie to działało w ten sposób, że w C++, kodujemy jakiś obiekt, a w Ptakopyska możemy go ustawić w x, y, oraz pewnie parę możliwości - zmiana depth, itp?
-
Już sobie poradziłem na podstawie tego co mi wysłał ediepl. Z niewyjaśnionych przyczyn ostatnią rzeczą o której bym pomyślał były funkcje collision.
-
Jestem dość dziwnym dzieckiem...W każdym razie o trygonometrii i podobnych rzeczach, dowiedziałem się dopiero na gmclanie.
-
Dopiero skończyłem podstawówkę, moja geometria to obliczanie objętości graniastosłupa ;__; Tak bardzo zaniżony poziom w szkołach ;P
-
Nie jestem zbyt dobry w 3D, ponieważ stanąłem na rysowaniu ścian, sufitu, podłogi i poruszaniu kamery ale jedno wiem! Jest ZNACZĄCA różnica między draw_wall, a draw_block, (nie pamiętam dokładnie, nazw funkcji). Zmień z draw_wall, na draw_block.
-
Nie wpadłbym na to, nigdy, przenigdy ;O Myślę, że to wszystko. Dziękuje wszystkim zainteresowanych pomocą :>
-
Tak, wiem, wiem, napisałem to dość dziwnie. Daję przykład: -Narysowałem koło przez draw_circle, -przy kolizji z blokiem narysowane koło się niszczy (w przypadku w którym koło ma różne wielkości, nie ma sensu dawać 10 masek, dla każdego innego koła)