//Oblicza atak postaci
f_walka_komunikaty_reset()
f_walka_komunikaty(global.imie+" atakuje "+imie_przeciwnik+"!")
szanse_trafienia=75+(global.szybkosc-szybkosc_przeciwnik)-10*(global.osz-osz_przeciwnik)+global.szanse_trafienia_bonus-szanse_unik_bonus;
if(szanse_trafienia>95)
	szanse_trafienia=95;
else if(szanse_trafienia<5)
	szanse_trafienia=5;
if(random(100)>=100-szanse_trafienia)	//trafienie
{
	_aa=f_staty("global.atak","global.level","","podstawa");
	_aa=global.level+_aa+global.atak_bonus_calkowity;
	_aa=_aa*(1+random(global.szczescie)/100)*global.atak_bonus_procentowy;
	_bb=f_staty("obrona_przeciwnik","level_przeciwnik","","bonus");
	_bb=_bb*obrona_przeciwnik_bonus_procentowy;
	_bb=_bb*(1+random(szczescie_przeciwnik)/100);
	overhit=5+(global.szczescie-szczescie_przeciwnik)+global.overhit_bonus;
	if(overhit>95)
		overhit=95;
	else if(overhit<5)
		overhit=5;
	if(random(100)>100-overhit)//wchodzi overhit
	{
		atak=_aa;
		f_walka_komunikaty("Zdumiewajce! Overhit!")
	}
	else
	{
		atak=_aa-_bb;
		if(atak<1)
			atak=1;
	}
	critic=5+(global.szczescie-szczescie_przeciwnik)+global.critic_bonus;
	if(critic>95)
		critic=95;
	else if(critic<5)
		critic=5;
	if(random(100)>100-critic)//wchodzi critic
	{
		atak=2*atak;
		f_walka_komunikaty("Niesamowite! Critical Hit!")
	}
	atak=floor(atak);
	f_walka_komunikaty(global.imie+" zadaje "+string(atak)+" punkt"+f_y_ow(atak)+" obrae!")
	HP_przeciwnik-=atak;
	if(HP_przeciwnik<=0)
	{
		f_walka_komunikaty(imie_przeciwnik+" upada!")
		f_walka_komunikaty(global.imie+" wygrywa potyczk!")
	}
}
else	//chybienie
	f_walka_komunikaty(global.imie+" chybi!")
tura=3;
wybor=0;
wybor_opcje=0;
wybor_przesun=0;
wyswietlaj_opcje=0;
with o_walka_strzalka instance_destroy()
instance_create(view_xview,view_yview,o_walka_anime)