4413 |
4413 |
4414 dec(Gear^.Timer); |
4414 dec(Gear^.Timer); |
4415 if Gear^.Timer = 0 then |
4415 if Gear^.Timer = 0 then |
4416 begin |
4416 begin |
4417 dec(Gear^.Health); |
4417 dec(Gear^.Health); |
4418 if (Gear^.Health mod 10) = 0 then |
4418 if (Gear^.Health mod 5) = 0 then |
4419 begin |
4419 begin |
4420 rx := rndSign(getRandom * _0_1); |
4420 rx := rndSign(getRandom * _0_1); |
4421 ry := rndSign(getRandom * _0_1); |
4421 ry := rndSign(getRandom * _0_1); |
4422 speed := _0_8 * (_10 / Gear^.Tag); |
4422 speed := _0_5 * (_10 / Gear^.Tag); |
4423 |
4423 |
4424 Fire := AddGear(gx, gy, gtFlame, 0, |
4424 Fire := AddGear(gx, gy, gtFlame, 0, |
4425 SignAs(AngleSin(HHGear^.Angle) * speed, HHGear^.dX) + rx, |
4425 SignAs(AngleSin(HHGear^.Angle) * speed, HHGear^.dX) + rx, |
4426 AngleCos(HHGear^.Angle) * ( - speed) + ry, 0); |
4426 AngleCos(HHGear^.Angle) * ( - speed) + ry, 0); |
4427 Fire^.State := Fire^.State or gsttmpFlag; |
4427 Fire^.State := Fire^.State or gsttmpFlag; |
4428 |
4428 |
4429 if (Gear^.Health mod 20) = 0 then |
4429 if (Gear^.Health mod 30) = 0 then |
4430 Fire := AddGear(gx, gy, gtFlame, 0, |
4430 Fire := AddGear(gx, gy, gtFlame, 0, |
4431 SignAs(AngleSin(HHGear^.Angle) * speed, HHGear^.dX) + rx, |
4431 SignAs(AngleSin(HHGear^.Angle) * speed, HHGear^.dX) + rx, |
4432 AngleCos(HHGear^.Angle) * ( - speed) + ry, 0); |
4432 AngleCos(HHGear^.Angle) * ( - speed) + ry, 0); |
4433 end; |
4433 end; |
4434 Gear^.Timer:= Gear^.Tag |
4434 Gear^.Timer:= Gear^.Tag |