zamiast:
switch(aktywna)
{
case 0:
if (b[0,1]>0) // jeśli stan amunicji jest więksy od zera
{
a=instance_create(x,y,obj_pocisk)// twozy pocisk
a.direction= obj_postac_1.direction //nadaje mu kąt
a.speed=b[0,2] //nadaje mu speed
a.damage=b[0,3] //definiuje zmienna demage
b[0,1]-=1 // odejmuje od stanu amunicji jeden pocisk
} break
//itd...
wstaw
switch(aktywna)
{
case 0:
if (b[0,1]>0) // jeśli stan amunicji jest więksy od zera
{
a=instance_create(x+lengthdir_x(60,direction-10),y+lengthdir_y(60,direction-10),obj_pocisk)// twozy pocisk
a.direction= obj_postac_1.direction //nadaje mu kąt
a.speed=b[0,2] //nadaje mu speed
a.damage=b[0,3] //definiuje zmienna demage
b[0,1]-=1 // odejmuje od stanu amunicji jeden pocisk
} break
//itd
i po kłopocie ;)
Tylko pamiętaj że do każdej broni musisz trochę dostosować te parametry.
w lenghtdir w pierwszym argumencie masz odległość od środka gracza, a w drugim
przesunięcie w bok o ileś stopni.
Pozdrawiam ;)