eragon16 Opublikowano 16 Czerwca 2013 Udostępnij Opublikowano 16 Czerwca 2013 Ustawiłem na końcach mapy ograniczniki w postaci obiektów które powinny być elementem którego ludziki nie mogą przejść. Niestety mimo tego, że robiłem to według poradnika, przeszkoda nie działa gdyż gracz swobodnie może przechodzić przez nią. Może coś było źle w poradniku... Może ktoś napisać jak zrobić aby na 100% działało? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Lechu4444 Opublikowano 16 Czerwca 2013 Udostępnij Opublikowano 16 Czerwca 2013 a nie prościej zrobić warunek: GML if(round(x)==room_width || round(x)==0 || round(y)==room_height || round(y)==0) speed=0 poza tym znając życie pewnie zapomniałeś w ograniczniku dać solid E. albo jeszcze prościej Intersect Boundary w other i dać speed 0 o ile oczywiście masz poruszanie oparte na zmiennej speed Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
eragon16 Opublikowano 16 Czerwca 2013 Autor Udostępnij Opublikowano 16 Czerwca 2013 a nie prościej zrobić warunek: GML if(round(x)==room_width || round(x)==0 || round(y)==room_height || round(y)==0) speed=0 poza tym znając życie pewnie zapomniałeś w ograniczniku dać solid Dodałem solid. I mnie zdziwiło czemu nie działa. Spróbuje twoim sposobem. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Bedziom Opublikowano 16 Czerwca 2013 Udostępnij Opublikowano 16 Czerwca 2013 event intersect boundary i kod GML x=xprevious y=yprevious to blokuje poruszanie się, jest przydatne przy przeszkodach Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Amaterasu Opublikowano 16 Czerwca 2013 Udostępnij Opublikowano 16 Czerwca 2013 +1 choć ja z tego nie korzystam, staram się dodawać możliwie najmniej eventów. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
eragon16 Opublikowano 17 Czerwca 2013 Autor Udostępnij Opublikowano 17 Czerwca 2013 Żaden ze sposobów o dziwo nie zadziałał. Zrobiłem efekt odbijania pojazdów od przeszkód i jest dobrze. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ereg Opublikowano 17 Czerwca 2013 Udostępnij Opublikowano 17 Czerwca 2013 GML if(round(x)==room_width || round(x)==0 || round(y)==room_height || round(y)==0) speed=0niejest odporny na bled programatora. v sumie oczekuje ruch po x nievielky lub nieprzekraczajocy room_width(i height) povinno byc: GML if(round(x)>room_width-sprite_get_width(sprite_index) || round(x)<0 || round(y)>room_height-sprite_get_height(sprite_index) || round(y)<0) {x=xprevious;} natomiast zatrzymyvanie o objekt mozna zrobic: GML if (place_meeting(x,y,o_blok) ) { x = xprevious; }; ale pozostaje problem z dojazdem ku przeskodzie o_blok na 1 pixel. zatem lepszy kod jest: GML if (place_meeting(x,y,o_blok) ) { var __xtemp, __sign; __xtemp=0; __sign=sign(x-xprevious); repeat(abs(x-xprevious)) { if (place_meeting(xprevious+(__xtemp+1)*__sign,y,o_blok) ){x=xprevious+(__xtemp*__sign); break; }; __xtemp+=1; } }; 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ę