m97 Opublikowano 23 Listopada 2011 Udostępnij Opublikowano 23 Listopada 2011 Witam mam następujący problem. Mam obiekt ziemia, podczas niszczenia go chcę aby sprawdził czy nie ma nad nim piasku a jeśli jest to aby wywołał dla tego konkretnego piasku pewien skrypt. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ediepl Opublikowano 23 Listopada 2011 Udostępnij Opublikowano 23 Listopada 2011 GML if place_meating(x,y-1,piasek) { with(collision_point(x,y-1,piasek,1,1)) execute_script(skrypt); } Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
hopek Opublikowano 23 Listopada 2011 Udostępnij Opublikowano 23 Listopada 2011 (event-destroy) if (place_meeting(x,y-1,piasek)=1) with (piasek) if (place_meeting(x,y+1,ziemia)=1) { "Skrypt" } mam nadzieję że się nie pomyliłem... sprawdź czy przypadkiem mam rację edit. no nie chciałem być pierwszy... <_< Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ediepl Opublikowano 23 Listopada 2011 Udostępnij Opublikowano 23 Listopada 2011 @hopek: Tylko że twój kod wykona się w każdym piasku pod którym jest ziemia. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
hopek Opublikowano 23 Listopada 2011 Udostępnij Opublikowano 23 Listopada 2011 kuurcze racja , mój błąd Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ArhiX Opublikowano 23 Listopada 2011 Udostępnij Opublikowano 23 Listopada 2011 1.Stwórz obiekt, który będzie się tworzył tuż po zniszczeniu obiektu ziemia np ziemia_destroyed. 2.Ustaw mu miejsce kolizji na górną część sprite'a (w menu tworzenie i edycji sprite'a) 3. a)Jeśli dotknie piasku (wykryje kolizję) to niszczy siebie i wywołuje event dla piasku b)jeśli nie dotknie piasku(czyli nie wykryje kolizji) w ciągu określonego (krótkiego) czasu to po prostu znika. //Edit Jednak z tego co widzę mój kod zadziała tylko na jeden konkretny piasek który graniczył z blokiem ziemi więc spadnie tylko ten jeden klocek (sądzę, że tworzysz coś na wzór minecrafta). Reszta słupa piasku pozostanie wisząca w powietrzu więc kod w moim pojęciu musiałby być bardziej skomplikowany. W takim wypadku każdy blok musiałby mieć swój objekt który tworzy się po zniszczeniu. W minecraft zdaje się używane są zmiany solidności obiektu. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Muuuuczek567 Opublikowano 24 Listopada 2011 Udostępnij Opublikowano 24 Listopada 2011 Nieprawda, kod nie musi być bardziej skomplikowany. Wystarczy w każdym klocku dać kod, który sprawdza, czy jest nad nim piasek. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
m97 Opublikowano 24 Listopada 2011 Autor Udostępnij Opublikowano 24 Listopada 2011 Mam jeszcze jedno pytanie. Próbowałem napisać skrypta który odpowiadałby za spadanie. Problem polega na tym, że skrypt musi działać do momentu w którym piasek będzie kolidował z innym obiektem. Wtedy to skrypt wyłączy grawitację oraz wyzeruję prędkość i się wyłączy. 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ę