Shil Opublikowano 10 Czerwca 2010 Udostępnij Opublikowano 10 Czerwca 2010 Witam Swoją przygodę z GM zaczęłam niedawno, korzystałam z gotowych skryptów i tutoriali, także tu. I chciałam stworzyć grę, w której szynszyla skacze i zjada fistaszki. Problem jest taki, że w zależności od planszy, szynszyla albo skacze z grawitcją, albo jest to rzut od gory i wtedy bez grawitacji - i zrobiłam kodem - działa. Ale szynszyla dziwnie skacze- tzn. moze rozpocząc skok jeszcze nie osiągnąwsy ziemi i czepia się platform - normalnie przykleja się uszami i lewituje... Tu wstawiłam ten plik roboczy: http://shil.prv.pl/ccc.gmd Niestety to chyba GM 5tka, bo karta graficzna nie pociągnie mi lepszej wersji. Przyznam, że się zgubiłam - nie wiem czy to wina złego kodu na up na klawiaturze, czy grawitacji, czy collission z blokiem. Przed dodaniem warunków dla różnych plansz (by rozgraniczyć tę sytuację z grawitacją i bez) było lepiej, ale te objawy też były, tylko mniej widoczne. Proszę o pomoc, może ktoś wie jak to rozwiązać? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Assassin Opublikowano 10 Czerwca 2010 Udostępnij Opublikowano 10 Czerwca 2010 U mnie w ogóle nie da się chodzić. Zapadam się od razu w przepaść i koniec. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
candy Opublikowano 10 Czerwca 2010 Udostępnij Opublikowano 10 Czerwca 2010 W platformówkach bez maski nie zajdziesz daleko. Dzięki nim robisz precyzyjne kolizje i Twój hero nie zacina się na klockach kawałkiem ucha czy inną częścią ciała. Poczytaj trochę o zastosowaniach masek. Poustawiaj origin spritów tak aby współrzędna x była po środku sprite'a. Ustawienie w lewym górnym rogu nie jest najlepszym pomysłem. Sprawia to kłopoty gdy zmieniasz sprity z hero_lewo na hero_prawo. Wtedy hero, za każdym razem jak się obraca, przesuwa się o jakiś x w lewo lub prawo. Dodatkowymi plusami ustawienia origina na środku jest to, że nie trzeba robić spritów na lewo i jednocześnie na prawo, wystarczy w jedną stronę i zabawa z image_xscale (chyba, że te sprity w dwie strony mają być z jakiś przyczyn). Nie musisz pisać wtedy GML if(place_free(x+4,y)) x+=17; tylko GML if(place_free(x+4,y)) x+=4; Łatwiej jest wtedy zapanować nad ruchem postaci.Co do skakania. Gravity jest co step zwiększane o wartość jaką podałaś. Zrób sobie nowy room i ustaw w nim samą szynszylę. W create szynszyli dopisz room_speed=3. Włącz F6, kliknij na zielony krzyżyk i wpisz object1.y. Zobaczysz jak się zmieniają współrzędne y. Musisz ten problem rozwiązać inaczej. Aby szynszyla skakała dopiero jak będzie na ziemi dodaj warunek do skoku: GML if(!place_free(x,y+1)) //skok</span> Mam nadzieję, że to Ci pomoże. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Filar Społeczności Ranmus Opublikowano 10 Czerwca 2010 Filar Społeczności Udostępnij Opublikowano 10 Czerwca 2010 Jakoś nie chce mi się wierzyć, że Ci nie pójdą nowsze wersje niż GM5, ponieważ wymagają one raptem Directx 8, więc nawet na poczciwym dziadku geforce 2 mx pójdą (na allegro można kupić w oszałamiającej cenie 10zł). Przecież to są zamierzchłe czasy sprzed około 10 lat. Ściągnij nową wersję, bo w GM5 już nikt nie tworzy, poza tym gry w nim zrobione nie pójdą na nowszych systemach niż Windows XP. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Assassin Opublikowano 10 Czerwca 2010 Udostępnij Opublikowano 10 Czerwca 2010 Ale może piątkę ma pełną wersję :P . Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Filar Społeczności Ranmus Opublikowano 10 Czerwca 2010 Filar Społeczności Udostępnij Opublikowano 10 Czerwca 2010 Assasin, a po co jej od razu wersja Pro? Lite wystarczy i to z duuuużą nawiązką, zwłaszcza że możliwości GM5 są mniejsze od powiedzmy GM8 lite, jeśli chodzi np. o grafikę. Btw. i smell tr*ll*ng. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Assassin Opublikowano 10 Czerwca 2010 Udostępnij Opublikowano 10 Czerwca 2010 Nie wiem po co, ale to może być powód :P . Chociaż w sumie, ona używała klocki, a większość z nich jest dostępna na darmowej wersji. Jeśli trolling było do mnie, to naprawdę nie wiem o co ci chodzi... I mój nick ma łącznie 4 "s" :P . Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Shil Opublikowano 10 Czerwca 2010 Autor Udostępnij Opublikowano 10 Czerwca 2010 Wow, ale odpowiedzi, dzięki:) Rady super, zaraz to wypróbuję. Coprawda nic jeszcze nie wiem o maskach, ale to kwestia czasu. :twisted: Ten room_speed to po to by pokoj wędrował za obiektem? Próbowalam zrobić taki myk w panelu roooms, ale to się działy bardzo ciekawe rzeczy. Komputer ma 13 lat, chyba nie będę z nim eksperymentować narazie. :) Obawiam się, że nie jest to kwestia directxa. -- Więc tak: room_speed to prędkość wyświetlania klatek w pokoju? Bo mi wszystko mega zwolniło... Szyl nie chce nałożyć na siebie maski - tzn. nałożyłam na obiekt szynszylę, obiekt klocka - to sprawiło, że szynszyla znalazła się pod klockiem i odmówiła współpracy. W drugą stronę też nie pomogło. Zarzuciłam kod: GML if room=room0 { if ( !place_free(x,y+1)) { vspeed = -10; } } else if(place_free(x,y+1)) {y-=7} I jest dobrze - szyl skacze płynnie i nie zaczepia tak strasznie. Ale jeszcze pokombinuję z maską. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Filar Społeczności Ranmus Opublikowano 10 Czerwca 2010 Filar Społeczności Udostępnij Opublikowano 10 Czerwca 2010 Wiem, że się czepiam, ale jak na 13 letniego kompa, to nieźle sobie radzi z vistą i uruchamianiem gier gm5 pod tym systemem. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Konrad-GM Opublikowano 10 Czerwca 2010 Udostępnij Opublikowano 10 Czerwca 2010 A co do GF2MX, ja miałem przyjemność z korzystania z niej, i DX działał do wersji 9c ;P Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Shil Opublikowano 11 Czerwca 2010 Autor Udostępnij Opublikowano 11 Czerwca 2010 Wiem, że się czepiam, ale jak na 13 letniego kompa, to nieźle sobie radzi z vistą i uruchamianiem gier gm5 pod tym systemem. Też mnie to czasem dziwi. Ale większość gier już na nim nie chodzi, w Photoshopie nie mogę pracować na obrazkach powyżej 2000 na 2000px, a raz nawet podjęłam w swej naiwności próbę wyrenderowania czegoś w blenderze 3d :P Ale GM 5tka, to chodzi jak marzenie :) A umiejętności mogę ćwiczyć jak na każdym innym, nie? Jak to z tą maską zrobić? Po co to właściwie jest? Szukałam na forum takiego tematu, ale są tylko wspomniane te maski. To coś jak ustawianie krycia przez różne elementy? Niestety jak próbuję maskować szynszyla blokiem od platformy, to przemieszcza mu się środek ciężkości i tonie w platformie. Rzeczywiście, nie czepia się już wtedy, a przynajmniej ciężko to zaobserwować. Czy do tej maski trzeba stworzyć osobnego sprite'a? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
MagnusArias Opublikowano 11 Czerwca 2010 Udostępnij Opublikowano 11 Czerwca 2010 Tak, najlepiej o wymiarach takich samych co obrazka, i w jednym kolorze (obojętnie jaki, najlepiej czarny) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
candy Opublikowano 11 Czerwca 2010 Udostępnij Opublikowano 11 Czerwca 2010 Aby zrobić maskę tworzysz oddzielny sprite o tych samych wymiarach i originach co sprite herosa. Następnie rysujesz jakikolwiek kształt. Ustawiasz w obiekcie maskę. Masz taką rozwijaną listę "Mask" w lewej części okienka i wybierasz sprite'a, który ma być maską. Teraz maska będzie odpowiadać za kolizje, a nie aktualny sprite herosa. Oczywiście, najlepiej jest zrobić maskę o kształcie prostokąta. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się