LolikZabijaka Opublikowano 7 Stycznia 2011 Udostępnij Opublikowano 7 Stycznia 2011 Witam, mam trochę czasu więc siedzę na parszywą dwunastką :D Ale mam problem, korrystam z silnika Marka. S, sprawa generalniue prosta, ale jak zrobić rozrzut, tzn. żeby tworzyło mi np. 6-8 pocisków i żeby rozchodziły się w takie "drzewko" :D Oto kod który mam przy okazji tworzenia pocisku. GML _len = -30 //odległosć w której zostanie stworzony pocisk _x = lengthdir_x( _len , direction ) _y = lengthdir_y( _len , direction ) if ( global.ammo_wmagazynku[ bron ] > 0 and can and laduj ) { i = instance_create( x + _x , y + _y , typ_pocisk[ bron ] ) //tworzymy pocisk i. direction = direction // nadajemy mu cechy i. image_angle = direction i. sprite_index = bullet_sprite[ bron ] i. speed = bullet_speed[ bron ] i. damage = weapon_damage[ bron ] global.ammo_wmagazynku[ bron ] -= 1 // odejmujemy od stanu amunicja aktywnej broni 1 can = false alarm[ 0 ] = weapon_time[ bron ] if ( global.ammo_wmagazynku[ bron ] > 0){ instance_create( x + _x , y + _y , obj_luska[ bron ] ) if ( global.ammo_wmagazynku[ bron ] = 0){ instance_create( x + _x , y + _y , obj_lastluska[ bron ] ) } sound_play ( weapon_sound[ bron ] ) } if ( global.ammo_wmagazynku[ bron ] = 0) { sound_play( sound_last[ bron ] ) } shoot = true alarm[ 2 ] = sprite_get_number( sprite_strzal[ bron ]) *3 image_index = 0 } Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 7 Stycznia 2011 Udostępnij Opublikowano 7 Stycznia 2011 GML kat_rozrzutu = 30; // 60 stopni 30 po jednej i 30 po drugiej stronie // 6 - 8 pociskow ilosc_pociskow_min = 6; ilosc_pociskow_dodatkowych = 2; _len = -30 //odległosć w której zostanie stworzony pocisk _x = lengthdir_x( _len , direction ) _y = lengthdir_y( _len , direction ) if ( global.ammo_wmagazynku[ bron ] > 0 and can and laduj ) { repeat( ilosc_pociskow_min + irandom( ilosc_pociskow_dodatkowych ) ) { i = instance_create( x + _x , y + _y , typ_pocisk[ bron ] ) //tworzymy pocisk i. direction = random_range( direction - kat_rozrzutu, direction + kat_rozrzutu ) // rozrzut i. image_angle = direction i. sprite_index = bullet_sprite[ bron ] i. speed = bullet_speed[ bron ] i. damage = weapon_damage[ bron ] global.ammo_wmagazynku[ bron ] -= 1 // odejmujemy od stanu amunicja aktywnej broni 1 } can = false alarm[ 0 ] = weapon_time[ bron ] if ( global.ammo_wmagazynku[ bron ] > 0){ instance_create( x + _x , y + _y , obj_luska[ bron ] ) if ( global.ammo_wmagazynku[ bron ] = 0){ instance_create( x + _x , y + _y , obj_lastluska[ bron ] ) } sound_play ( weapon_sound[ bron ] ) } if ( global.ammo_wmagazynku[ bron ] = 0) { sound_play( sound_last[ bron ] ) } shoot = true alarm[ 2 ] = sprite_get_number( sprite_strzal[ bron ]) *3 image_index = 0 } Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
LolikZabijaka Opublikowano 7 Stycznia 2011 Autor Udostępnij Opublikowano 7 Stycznia 2011 dzięki, ale te początkowe zmienne muszę zdefiniować w create, bo jest jeszcze kilka innych broni, które rozrzutu mieć nie mogą, ale to już ogarnę :) Oczywiście, mogę te definicje poczatkowe wrzucić w create ? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
zelman Opublikowano 7 Stycznia 2011 Udostępnij Opublikowano 7 Stycznia 2011 tak Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
LolikZabijaka Opublikowano 7 Stycznia 2011 Autor Udostępnij Opublikowano 7 Stycznia 2011 Ok, jeszcze jedno, rozrzut jest, ale co zrobić żeby mi odejmowało tylko jeden nabój, bo po wywaleniu np. 6 kul odejmuje mi 6 naboi. ; ( Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Mentoss Opublikowano 7 Stycznia 2011 Udostępnij Opublikowano 7 Stycznia 2011 zdefiniowanie zmiennych ZAWSZE jest w create... chyba, że to zmienne globalne. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 7 Stycznia 2011 Udostępnij Opublikowano 7 Stycznia 2011 global.ammo_wmagazynku[ bron ] -= 1 // odejmujemy od stanu amunicja aktywnej broni 1 przesuń o 1 linikę w dół za klamrę Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
LolikZabijaka Opublikowano 7 Stycznia 2011 Autor Udostępnij Opublikowano 7 Stycznia 2011 czekaj, bo tu trzeba nie tylko to przesunąć, ale chyba ogarniam :D Ok. teraz styka. Jeszcze jedno pytanie, jak w gm8 usunąć tło ze sprite ? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Mentoss Opublikowano 7 Stycznia 2011 Udostępnij Opublikowano 7 Stycznia 2011 wejdź w edycję sprite'a i Images->Earse a color (CTRL+SHIFT+E) wybierasz kolor i klikasz ok Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
LolikZabijaka Opublikowano 7 Stycznia 2011 Autor Udostępnij Opublikowano 7 Stycznia 2011 Dzięki wielkie :D Mam nadzieję że szybko postawię projekt na nogi. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
LolikZabijaka Opublikowano 28 Stycznia 2011 Autor Udostępnij Opublikowano 28 Stycznia 2011 sorki za dwa posty, ale ważna sprawa. Efekt jest spoko, ale co zrobić aby pozycja początkowa pocisków była zawsze jednakowa, bo użyłem tej zmiennej "kat_rozrzutu" nie tylko do strzelb, ale też do mniej celnych pistoletów maszynowych (np. Pepeszki) ale pociski tworzą się w różnych pozycjach i wygląda to niecodziennie. Jak to poprawić ? 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ę