XxMichałxX Opublikowano 15 Marca 2009 Udostępnij Opublikowano 15 Marca 2009 Od pewnego czasu zauważyłem, że gdy chcę, żeby np coś się stało po dotknięciu ściany to robię takie coś: GML //na przykład: if x<=0 or x>=room_width then show_message('Dotknales sciany!') Tylko ze wtedy obiekt musi wyjsc kawałek za ścianę i dopiero wtedy message się pojawi, natomiast jak zrobię: GML if x<=0 or x>=room_width-30 then show_message('Dotknales sciany!') to message pojawi sie po dotknieciu sciany.. Czy to jakiś bug, czy chodzi o to, że w spricie mam ustawiony ten "point" cos tam w lewym gornym rogu i z lewej jak dotknie (x=0) to ten punkt dotknie a z prawej to kawalek wyleci i dopiero ten punkt dotknie? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Jaklub Opublikowano 15 Marca 2009 Udostępnij Opublikowano 15 Marca 2009 nie rozumiem, ale te x i y są zawsze liczone od origina (jak masz np. origin na środku sprita, to będzie) GML if x<sprite_width/2 or x>room_width-sprite_width/2 show_message("wat."); uważaj, żeby ten message nie pojawiał się bez końca. podsumowując, to nie bug GMa. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
XxMichałxX Opublikowano 15 Marca 2009 Autor Udostępnij Opublikowano 15 Marca 2009 aha czaje.. a ten "point" to miał być orgin ;P Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Platyna Opublikowano 15 Marca 2009 Udostępnij Opublikowano 15 Marca 2009 Taki bonus: jak nie chce ci się w innych tego typu przypadkach pisać takich -30 (bo nie wiesz czy to na pewno dokładnie tyle) to masz sprite_height i sprite_width :P Przydaje się. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 15 Marca 2009 Administratorzy Udostępnij Opublikowano 15 Marca 2009 Kurcze, czego dzisiaj w tych szkołach uczą, mi się wydawało zawsze, że X i Y to są jakieś współrzędne punktu na płaszczyźnie, tymczasem widzę, że kolega zrobił z nich całe przedziały i oczekuje, że raz pozycja X będzie się znajdowała z prawego i lewego boku obiektu na raz... otóż mówię, że pozycja X jest tylko jedna i zawsze ustawiona tam, gdzie Origin sprita, lub maski jeżeli takowa jest ustawiona. Może to być dowolny jeden punkt na całej płaszczyźnie i to on oznacza pozycję X obiektu, a nie jego prawy czy lewy bok. Polecam przeczytać: http://pl.wikipedia.org/wiki/Punkt_(geometria) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Cekol Opublikowano 15 Marca 2009 Udostępnij Opublikowano 15 Marca 2009 GML if x-sprite_width/2 <=0 or x+sprite_width/2 >=room_width then show_message('Lolmialiardow100!') Jezeli orgin sprita masz ustawiony na środku... 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ę