geralt100 Opublikowano 4 Marca 2009 Udostępnij Opublikowano 4 Marca 2009 jaki kod umożliwia wykonanie akcji po dobiero jakimś czasie? W moim przypadku po 0.5 sekundy ma nastąpić instance_create(x,y,bal) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Anubarak Opublikowano 4 Marca 2009 Udostępnij Opublikowano 4 Marca 2009 ja bym dał alarmy bo kodu nie znam na takie coś Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Konrad-GM Opublikowano 4 Marca 2009 Udostępnij Opublikowano 4 Marca 2009 GML (Create) alarm[0] = room_speed*0.5; GML (Alarm 0) instance_create( ... ); alarm[0] = room_speed*0.5; Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Uzjel Opublikowano 4 Marca 2009 Udostępnij Opublikowano 4 Marca 2009 w create: GML alarm[0] = room_speed * 0.5 w alarm0: GML instance_create(x,y,obj) @up: um :( fastah... Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 4 Marca 2009 Administratorzy Udostępnij Opublikowano 4 Marca 2009 ja bym dał alarmy bo kodu nie znam na takie coś w kodzie też są to alarmy ... a jak nie znasz to się nie wypowiadasz ok ? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
lordszynencja Opublikowano 17 Czerwca 2009 Udostępnij Opublikowano 17 Czerwca 2009 a ja chcę zrobić coś takiego: zmiana sprita czekaj 1 sekundę zmiana sprita czekaj 1 sekundę zmiana sprita czekaj 1 sekundę zmiana sprita koniec Jak to zrobić? :mellow: Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 17 Czerwca 2009 Administratorzy Udostępnij Opublikowano 17 Czerwca 2009 dodaj zmienną ile_zmian i jak będzie większa od 3 to odejmuj, zmieniaj sprite, dodaj alarm, a jak będzie już 0 to nie rób nic (t0 będzie kniec) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
lordszynencja Opublikowano 17 Czerwca 2009 Udostępnij Opublikowano 17 Czerwca 2009 ale jak używać alarmów bo one się po prostu włączają? Co mam zrobić żeby ich użyć i jak ich używać? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 17 Czerwca 2009 Administratorzy Udostępnij Opublikowano 17 Czerwca 2009 Dałem artykuł na głównej stronie dzisiaj. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
MZG Opublikowano 18 Czerwca 2009 Udostępnij Opublikowano 18 Czerwca 2009 a ja chcę zrobić coś takiego: zmiana sprita czekaj 1 sekundę zmiana sprita czekaj 1 sekundę zmiana sprita czekaj 1 sekundę zmiana sprita koniec Jak to zrobić? :mellow: 2 Sposoby: GML sprite_index=spr_jakis //zmiana sprita alarm[0] = 30; //W ALARM 0 sprite_index=spr_costam alarm[1] = 30; //W alarm 1 to samo tylko że alarm[2] //kończysz nie dodając linii alarm</span> albo zrób animacje i daj w Create image_speed = 0.1 i alarm[0] = 90 a w alarm[0] image_speed = 0 Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Nobody Opublikowano 18 Czerwca 2009 Udostępnij Opublikowano 18 Czerwca 2009 Szkoda tylu alarmów. Lepiej zrobić jeden alarm i kilka warunków, które by tego sprite'a zmieniały. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Opisek Opublikowano 29 Listopada 2013 Udostępnij Opublikowano 29 Listopada 2013 Ja mam podobny problem. Jak zrobić coś takiego: Gdy włącza się dany obiekt Czeka 15 sekund I zmienia ten obiekt na inny W moim przypadku jest tak: Bohater zderza się z ufo Ufo jest zniszczone, a gracz przemienia swój obiekt na ufo Po 15 sekundach znów jest bohaterem Proszę o pomoc! Wszędzie tego szukałem, nawet poza forum! Z góry dzięki. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ereg Opublikowano 29 Listopada 2013 Udostępnij Opublikowano 29 Listopada 2013 mozna tez cos takiego GML Information about object: o_hrac Sprite: sprite0 Solid: false Visible: true Depth: 0 Persistent: false Parent: <no parent> Mask: <same as sprite> Create Event: execute code: _timer=0; _time_pause=1; // pause sec Step Event: execute code: if (_timer<current_time) {_timer=-1; }; // reset timer Mouse Event for Left Released: execute code: if (sprite_index==sprite0 && _timer==-1) { _timer=current_time+_time_pause*1000; sprite_index=sprite1; } else if (sprite_index==sprite1 && _timer==-1) { _timer=current_time+_time_pause*1000; sprite_index=sprite2; } else if (sprite_index==sprite2 && _timer==-1) { _timer=current_time+_time_pause*1000; sprite_index=sprite3; } else if (sprite_index==sprite3 && _timer==-1) { _timer=current_time+_time_pause*1000; sprite_index=sprite4; }; Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Opisek Opublikowano 30 Listopada 2013 Udostępnij Opublikowano 30 Listopada 2013 Źle mnie zrozumiałeś... Jak patrzę na twoją odpowiedź widzę, że ma to działać tak: Stoper mierzy czas, gdy dojdzie do końca zresetuje się i zmieni sprite, a ma być tak: Bohater uderza w ufo, ufo się usuwa, a bohater zmienia OBIEKT na ufo <--- To już mam Odlicza się 15 sekund i ufo zmienia OBIEKT na bohatera <--- I z tym czasem mam problem Gdy spróbowałem zmienić twój skrypt, pojawił mi się błąd: GML ERROR in action number 1 of Step Event for object ufozbohaterem: Error in code at line 1: if _timer <= 1 ^ at position 4: Unknown variable _timer W create mam GML _timer=15; _time_pause=1; // pause sec</span> A w step mam: GML if _timer <= 1 { object_index=o_bohater; } Umiesz coś z tym zrobić? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Danielus Opublikowano 30 Listopada 2013 Udostępnij Opublikowano 30 Listopada 2013 moge wiedzieć po co zmieniasz obiekty? nie lepiej tylko sprite zmienić? Po zderzeniu kiedy zamieni sie na ten nowy obiekt daj: alarm[0]=room_speed*15; i potem w evencie alarm 0 daj żeby sie zmienił ponownie w bohatera Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ereg Opublikowano 30 Listopada 2013 Udostępnij Opublikowano 30 Listopada 2013 zmienac v tej samej instancji jeden objekt za drugi moze miec sens, jezeli ma sie zmienic tez eventy. do tego sama zmiana sprite niewystarczy. fajne to moze byc jesli jest wiecej typow ufo a gracz tymcasowo przejmuje ich zdolnosci. co do "Unknown variable _timer" poprostu mogles dla ufozbohaterem niedac zmiennej _timer. sproboj zamiast instance_destroy+ instance_create uzyc instance_change, lub poprostu zadbaj by nowo zrobiona instancja miala potrzebne zmienne GML _idn=instance_create(x, y, ufozbohaterem); _idn._timer=_timer; obecnie ja ci pokazalem jak mozna i z timerem zrobionym v current_time, ale jak go aplikujesz w grze to czysto twoja sprawa :thumbsup: jak dobrze zrobisz ufazbohaterem to niebezdzie problemu. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Opisek Opublikowano 1 Grudnia 2013 Udostępnij Opublikowano 1 Grudnia 2013 O właśnie zrozumiałeś mnie! Oto mi w pytaniu chodziło! Tylko co do Danielus, obiekt nie chce się zmieniać, a zrobiłem wszystko jak napisałeś. W create GML alarm[0]=room_speed*15;, a w evencie alarm 0 zmiana obiektu na bohatera, lecz jak mówiłem nie działa. I jeszcze jedno ereg, na początku jest tak: Zderzenia bohatera z ufem Istance destroy dla ufa Istance change dla bohatera Więc jednak jest tak jak myślisz ;) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Danielus Opublikowano 1 Grudnia 2013 Udostępnij Opublikowano 1 Grudnia 2013 skoro nie chcesz zmieniac obiektu to nie zmieniaj. Zamiast tego daj np sprite_index=ufozbohaterem; a gdy ma znowu wrócić do starej postaci: sprite_index=normalnybohater; Jeśli na dodatek mają się różnie zachowywać to tam gdzie masz kody akcji rob sobie warunki if( sprite_index==normalnybohater ) { //akcje } else if( sprite_index==ufozbohaterem ) { ///akcje } Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Opisek Opublikowano 1 Grudnia 2013 Udostępnij Opublikowano 1 Grudnia 2013 Ok tylko, że już mam potworzone obydwa obiekty więc masz jakąś propozycję? Próbowałem z alarmami, ale się nie udało, lecz jeszcze popróbuję. Gdybyś na coś "wpadł" to napisz ok? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ereg Opublikowano 1 Grudnia 2013 Udostępnij Opublikowano 1 Grudnia 2013 @up: masz racje, ale jesli ma kazde ufo wiecej roznych eventow to czeka go dosyc roboty :) niemowojc jesli bedzie dodawa nowe ufa i zmienac stare sam zdecyduje jaki kod zwoli, ja tylko podpowiadam inne mozliwosci Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Danielus Opublikowano 1 Grudnia 2013 Udostępnij Opublikowano 1 Grudnia 2013 Nie bardzo rozumiem co masz na myśli. W kolizji z ufo kasujesz linijkę object_change a dajesz przypisanie sprite_index=ufozbohaterem Teraz przenoszisz cały kod z obiektu ufozbohaterem do normalnego bohatera tylko dajesz je w warunku że mają sie wykonywać jesli sprite_index==ufozbohaterem. A kody które od początku były w normalnymbohaterze dajesz w if( sprite_index==normalnybohater ) Teraz masz tylko jeden obiket, którego nie zmieniasz ani nie kasujesz. @up przy robieniu dziesiątek podobnych obiektów strasznie łatwo o błędy, zdecydowanie lepiej obsługiwać to wszystko z jednego @down. Sokro już tak zrobiłeś to już się tego trzymaj, nie warto sie męczyć ze zmianami jeśli tego jest dużo. Na przyszłość staraj się robić wszystko na jak najmniejszej ilości obiektów z początku będzie trudniej, ale potem zaprocentuje. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Opisek Opublikowano 1 Grudnia 2013 Udostępnij Opublikowano 1 Grudnia 2013 No właśnie chodzi o to, że: 1. Mam w nich już bardzo dużo eventów z wieloma skryptami 2. Trudno do nich włożyć ify 3. Długo będzie się kopiowało eventy z ufa do bohatera 4. Mam 56 obiektów i się w nich jeszcze nie pomyliłem :D ---------- @up Ok posłucham cię, ale masz jakiś skrypt do tego? Bo z tym już będzie trudno. W dodatku zrobiłem w create ustalenie alarmu 1 na 3, a w alarmie 1 dałem zmianę sprite i to nie wypaliło. O co tutaj chodzi? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ereg Opublikowano 1 Grudnia 2013 Udostępnij Opublikowano 1 Grudnia 2013 @Daniealus: mozna, ale jesli ma dobrze zorganizowane no wierze ze sie niepomyli, lub latwo znajdzie blad :) @Opisek: niepiszes co niedzialalo s alarmami. obecnie niema powodu dlaczego by niemialy dzalac: 1, Zderzenia bohatera z ufem - zmien bohatera na ufobohatera (ufobohater v create ma ustaviony alarm na zmiane powrotno na bohatera) 2, Istance destroy dla ufa(robi sie jak jest v akcji 1, ) - znisc ufo 3, Istance change dla bohatera - po uplywu czasu alarm v ufobohaterze odpala zmiane na bohatera Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Danielus Opublikowano 1 Grudnia 2013 Udostępnij Opublikowano 1 Grudnia 2013 Na to nie ma skryptu, po prostu trzymaj się zasady że jeden obiekt zawsze pozostaje jednym obiektem i trzeba tylko wymyślić jak to zrobić. Jeśli każda wersja twojego bohatera ma inną grafikę to tylko sprawdzamy jaką ma obecnie grafikę i dawajemy warunki. Powiedz mi najpierw ile masz różnych obiektów typu bohater. Tylko te dwa normalnybohater i ufozbohaterem? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Opisek Opublikowano 1 Grudnia 2013 Udostępnij Opublikowano 1 Grudnia 2013 No właśnie w tym problem! Alarm nie chce odpalać zmiany ufa w bohatera! Mam tak: Z tym kodem w trzecim obrazku chodzi tylko o test. Chciałem sprawdzić czy zadziała stworzenie bohatera. --------------------------------------- Ok, potem tutaj zajrzę, jeśli ktoś wpadnie na pomysł, bardzo proszę udzielić odpowiedzi. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ereg Opublikowano 1 Grudnia 2013 Udostępnij Opublikowano 1 Grudnia 2013 tu mas pokazane jak by moglo wyglodac: GML Information about object: o_bohater Sprite: sprite0 Solid: false Visible: true Depth: 0 Persistent: false Parent: <no parent> Mask: <same as sprite> Step Event: execute code: x=mouse_x; y=mouse_y; Collision Event with object o_ufo: execute code: instance_destroy(); instance_create(x,y, o_ufobohater); with(other) {instance_destroy(); }; ______________________________________________________ Information about object: o_ufo Sprite: sprite1 Solid: false Visible: true Depth: 0 Persistent: false Parent: <no parent> Mask: <same as sprite> ______________________________________________________ Information about object: o_ufobohater Sprite: sprite2 Solid: true Visible: true Depth: 0 Persistent: false Parent: <no parent> Mask: <same as sprite> Create Event: execute code: alarm[0]=5*room_speed; Alarm Event for alarm 0: execute code: // to same ale s instance change //instance_destroy(); //instance_create(x,y, o_bohater); instance_change(o_bohater,false); Step Event: execute code: x=mouse_x; y=mouse_y; _______________________________________________ Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Opisek Opublikowano 1 Grudnia 2013 Udostępnij Opublikowano 1 Grudnia 2013 Nadal nie działa... Nie rozumiem! Wszystko robię tak jak ty napisałeś, ale nic się nie dzieje! Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Danielus Opublikowano 1 Grudnia 2013 Udostępnij Opublikowano 1 Grudnia 2013 podaj nam dokładnie jak robisz tam wszystko. Czyli kody na wszystkie zamiany itp. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ereg Opublikowano 1 Grudnia 2013 Udostępnij Opublikowano 1 Grudnia 2013 no chyba jakies roznice so :) bo ten kod jest edit / Show objekt information :thumbsup: mozes tak odtworzyc ten sam projekt a bedzie dzilac. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Opisek Opublikowano 4 Grudnia 2013 Udostępnij Opublikowano 4 Grudnia 2013 Na razie to zostawię... Dokończę rozmowę gdy to będzie konieczne, ale dzięki Danielus za info z tymi obiektami ;) Dzięki za chęć pomocy! @Danielus jeszcze trochę i trafisz do creditsów ;) 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ę