Skocz do zawartości

Zablokowane Kontury


Pablo-GM

Rekomendowane odpowiedzi

Witam , mam drobny dylemat chciałbym usunąć możliwość wychodzenia poza mój room no i tak się zastanawiam czy jest możliwość zrobienia za pomocą kodu jakiejś niewidzialnej bariery ? Po prostu uważam , że ustawianie obiektów solid na całej szerokości i wysokości rooma (10000x10000) mija się z celem ...

Pozdrawiam , Pablo

Odnośnik do komentarza
Udostępnij na innych stronach

Użyj xprevious i yprevious, będzie cofało objekt o tą samą wartość którą się w nią wpycha, krótko mówiąc speed spadnie do zera.

Jeśli już chcesz się bawić z tą barrierą, to np. za pomocą if collision_line i wiesz, zrobisz sobie taki kwadracik, a jak zajdzie kolizja, to np. speed spada do 0 i tyle.

EDIT: sory za pomyłke ^^

Odnośnik do komentarza
Udostępnij na innych stronach

Użyj xprevius i yprevius, będzie cofało objekt o tą samą wartość którą się w nią wpycha, krótko mówiąc speed spadnie do zera.

Jeśli już chcesz się bawić z tą barrierą, to np. za pomocą if collision_line i wiesz, zrobisz sobie taki kwadracik, a jak zajdzie kolizja, to np. speed spada do 0 i tyle.

Spadający speed do 0 to raczej nienajlepsze rozwiązanie : ) Może jakieś inne sugestie , panie i panowie ? :3

Odnośnik do komentarza
Udostępnij na innych stronach

GML (Step)
if (x < 20 || x > room_width-20) hspeed = 0;

if (y < 20 || y > room_height-20) vspeed = 0;

 

Proste i logiczne. (20 - mniej więcej przesunięcie granicy tak, żeby połowa obiektu nie znikała zanim sie zatrzymie)

 

A jeżeli bez speed = 0, to w takim razie jak? Masz zamiar odbić obiekt, obrócić, przenieść?

Odnośnik do komentarza
Udostępnij na innych stronach

GML (Step)
if (x < 20 || x > room_width-20) hspeed = 0;

if (y < 20 || y > room_height-20) vspeed = 0;

 

Proste i logiczne. (20 - mniej więcej przesunięcie granicy tak, żeby połowa obiektu nie znikała zanim sie zatrzymie)

 

A jeżeli bez speed = 0, to w takim razie jak? Masz zamiar odbić obiekt, obrócić, przenieść?

Coś tu chyba jest nie tak - no i spd1 ( speed playera ) również zmieniałem na 0 . Efekt taki sam , postać nadal może opuszczać room .

UP Ja nadal jego wypowiedz interpretuję nieco inaczej : )

Odnośnik do komentarza
Udostępnij na innych stronach

Pytanie brzmi: jak sterujesz tym gościem?

1. x += 5 <-- ruch na prawo co step

2. speed = 5; direction = 0; <-- jedne wpisanie danych i już

 

Spróbuj tego kodu:

GML (Step)
if (x < 200) { x = 200; hspeed = 0; }

if (y < 200) { y = 200; vspeed = 0; }

if (x > room_width-200) { x = room_width-200; hspeed = 0; }

if (y > room_height-200) { y = room_height-200; vspeed = 0; }

Odnośnik do komentarza
Udostępnij na innych stronach

Gość
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...