DarkLiquidus Opublikowano 20 Maja 2010 Udostępnij Opublikowano 20 Maja 2010 Witam! Chcę stworzyć skrypt, który wpiszę w obojętnie jakiego eventa, który zniszczy dany obiekt w momencie kiedy gracz uzyska 200 punktów. Piszę więc: if (score=200) then ..... i tutaj mam problem, ponieważ nie mogę znaleźć wyrażenia które spowodowałoby zniszczenie innego instance'a. Istnieje wyrażenie instance_destroy() ale ono powoduje zniszczenie instance'a obiektu, w którym zamontowałem danego eventa, a chcę zniszczyć instance'a obiektu innego. Proszę o pomoc!!! Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
cysior Opublikowano 20 Maja 2010 Udostępnij Opublikowano 20 Maja 2010 with(objekt ktory chcesz zniszczyc, nazwa lub id)instance_destroy() np. with(object2)instance_destroy() Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Arekadiusz Opublikowano 20 Maja 2010 Udostępnij Opublikowano 20 Maja 2010 GML with(obj_ktory_ma_byc_zniszczony) instance_destroy() O to chodzi? EDIT: Jak zwykle się spóźniłem... ^_^ Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
cysior Opublikowano 20 Maja 2010 Udostępnij Opublikowano 20 Maja 2010 Raczej, tak. Jak cos to moge ci na gg Dark pomoc. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Arekadiusz Opublikowano 20 Maja 2010 Udostępnij Opublikowano 20 Maja 2010 Ja bym to zrobił tak: GML if score=200 { with(obj_ktory_ma_byc_zniszczony) instance_destroy() } Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
DarkLiquidus Opublikowano 20 Maja 2010 Autor Udostępnij Opublikowano 20 Maja 2010 Chciałem tego skrypta nieco urozmaicić i napisałem coś takiego; if (score>200) and (score<210) then with(samolot1) begin instance_destroy() instance_destroy() instance_destroy() instance_destroy() instance_destroy() instance_destroy(); end; Ale nie wiem dlaczego nic się nie dzieje... Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
wikku9 Opublikowano 20 Maja 2010 Udostępnij Opublikowano 20 Maja 2010 GML to nie delphi i nie ma begin i end są klamry: { cośtam } Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Muuuuczek567 Opublikowano 20 Maja 2010 Udostępnij Opublikowano 20 Maja 2010 if (score>200) and (score<210) then with(samolot1) instance_destroy() Tyle wystarczy. Poza tym, jesli sie nie myle, to begin i end rowniez dzialaja. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
DarkLiquidus Opublikowano 20 Maja 2010 Autor Udostępnij Opublikowano 20 Maja 2010 if (score>200) and (score<210) then with(samolot1) instance_destroy() Tyle wystarczy. Poza tym, jesli sie nie myle, to begin i end rowniez dzialaja. A jeśli objectów samolot1 jest np. 20 na mapie to wystarczy zrobić jedno instance_destroy()? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Hunter Opublikowano 20 Maja 2010 Udostępnij Opublikowano 20 Maja 2010 jesli ich jest tam wiecej przypisuj im id do tablicy i sprawdzaj za pomocą pętli for czy id które chcemy zniszczyc jest rowne id ktory nadalismy obiektowi np: funkcja destroy(obj); GML var num,obj; obj = argument[0]; num=instance_number(obj); for (i=0;i<num;i+=1) { with (obj) { if (objID == ID)//jesli id ktorego szukamy rowny jest zmiennej ID { instance_destroy(); } } } na upartego tak można nawet, musisz tylko przypisywac jeszcze w create petlą odpowiednie id Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
DarkLiquidus Opublikowano 20 Maja 2010 Autor Udostępnij Opublikowano 20 Maja 2010 jesli ich jest tam wiecej przypisuj im id do tablicy i sprawdzaj za pomocą pętli for czy id które chcemy zniszczyc jest rowne id ktory nadalismy obiektowi Możesz mi to rozpisać?(jestem początkującym) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Muuuuczek567 Opublikowano 20 Maja 2010 Udostępnij Opublikowano 20 Maja 2010 Jesli chcesz, zeby samoloty sie niszczyly po jakiejs kolizji, to rob to w evencie Collision with: GML if (score>200) and (score<210) then with(other) instance_destroy() Jesli natomiast chcesz, by niszczylo tyle samolotow, zeby liczba punktow doszla do 210, zrob tak: GML with(samolot1) if (score>200) and (score<210) instance_destroy() A jesli nie, to opisz, co dokladnie chcesz osiagnac. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
DarkLiquidus Opublikowano 20 Maja 2010 Autor Udostępnij Opublikowano 20 Maja 2010 Dokładnie to chcę żeby po prostu się zniszczyły kiedy gracz będzie miał 200-210 punktów. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
DarkLiquidus Opublikowano 20 Maja 2010 Autor Udostępnij Opublikowano 20 Maja 2010 Jaki jest odpowiednik klocka change instance w gmlu? Bo mógłbym zrobić tak, żeby zamiast znikania wybuchały. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Muuuuczek567 Opublikowano 20 Maja 2010 Udostępnij Opublikowano 20 Maja 2010 Jesli maja sie wszystkie zniszczyc: GML if (score>200) and (score<210) then with(samolot1) instance_change(true) //odpowiednik klocka Change Instance</span> Jesli ma sie zniszczyc tyle, zeby punkty byly rowne 210: GML with(samolot1) if (score>200) and (score<210) instance_change(true) Nie mam mozliwosci sprawdzic, czy dziala, ale powinno :) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
DarkLiquidus Opublikowano 20 Maja 2010 Autor Udostępnij Opublikowano 20 Maja 2010 Dzięki, działa!!! Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Arekadiusz Opublikowano 20 Maja 2010 Udostępnij Opublikowano 20 Maja 2010 Muuuuczek567: A czy przypadkiem polecenie zmiany obiektu nie powinno być takie: GML with(obiekt_do_zamiany) instance_change(obiekt_na_ktory_ma_sie_zmienic,false); EDIT: Pisałem gdy DarkLiquidus napisał, że działa. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Muuuuczek567 Opublikowano 20 Maja 2010 Udostępnij Opublikowano 20 Maja 2010 Masz racje, ale skoro dziala... :) 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ę