1708 |
1708 |
1709 i := x - Gear^.Radius - LongInt(GetRandom(2)); |
1709 i := x - Gear^.Radius - LongInt(GetRandom(2)); |
1710 ei := x + Gear^.Radius + LongInt(GetRandom(2)); |
1710 ei := x + Gear^.Radius + LongInt(GetRandom(2)); |
1711 while i <= ei do |
1711 while i <= ei do |
1712 begin |
1712 begin |
1713 doMakeExplosion(i, y + 3, 3, Gear^.Hedgehog, EXPLNoDamage or EXPLDoNotTouchAny or EXPLNoGfx); |
1713 doMakeExplosion(i, y + 3, 3, Gear^.Hedgehog, EXPLNoDamage or EXPLDoNotTouchAny or EXPLNoGfx or EXPLForceDraw); |
1714 inc(i, 1) |
1714 inc(i, 1) |
1715 end; |
1715 end; |
1716 |
1716 |
1717 if CheckLandValue(hwRound(Gear^.X + Gear^.dX + SignAs(_6,Gear^.dX)), hwRound(Gear^.Y + _1_9), lfIndestructible) then |
1717 if CheckLandValue(hwRound(Gear^.X + Gear^.dX + SignAs(_6,Gear^.dX)), hwRound(Gear^.Y + _1_9), lfIndestructible) then |
1718 begin |
1718 begin |
5670 begin |
5670 begin |
5671 AddVisualGear(hwRound(Gear^.X) - 5 + Random(10), hwRound(Gear^.Y) + 12, vgtDust); |
5671 AddVisualGear(hwRound(Gear^.X) - 5 + Random(10), hwRound(Gear^.Y) + 12, vgtDust); |
5672 |
5672 |
5673 i := hwRound(Gear^.X) - HitGear^.Radius + 2; |
5673 i := hwRound(Gear^.X) - HitGear^.Radius + 2; |
5674 ei := hwRound(Gear^.X) + HitGear^.Radius - 2; |
5674 ei := hwRound(Gear^.X) + HitGear^.Radius - 2; |
5675 for j := 1 to 4 do doMakeExplosion(i - GetRandom(5), hwRound(Gear^.Y) + 6*j, 3, Gear^.Hedgehog, EXPLNoDamage or EXPLDoNotTouchAny or EXPLNoGfx); |
5675 for j := 1 to 4 do doMakeExplosion(i - GetRandom(5), hwRound(Gear^.Y) + 6*j, 3, Gear^.Hedgehog, EXPLNoDamage or EXPLDoNotTouchAny or EXPLNoGfx or EXPLForceDraw); |
5676 for j := 1 to 4 do doMakeExplosion(ei + LongInt(GetRandom(5)), hwRound(Gear^.Y) + 6*j, 3, Gear^.Hedgehog, EXPLNoDamage or EXPLDoNotTouchAny or EXPLNoGfx); |
5676 for j := 1 to 4 do doMakeExplosion(ei + LongInt(GetRandom(5)), hwRound(Gear^.Y) + 6*j, 3, Gear^.Hedgehog, EXPLNoDamage or EXPLDoNotTouchAny or EXPLNoGfx or EXPLForceDraw); |
5677 while i <= ei do |
5677 while i <= ei do |
5678 begin |
5678 begin |
5679 for j := 1 to 11 do doMakeExplosion(i, hwRound(Gear^.Y) + 3*j, 3, Gear^.Hedgehog, EXPLNoDamage or EXPLDoNotTouchAny or EXPLNoGfx); |
5679 for j := 1 to 11 do doMakeExplosion(i, hwRound(Gear^.Y) + 3*j, 3, Gear^.Hedgehog, EXPLNoDamage or EXPLDoNotTouchAny or EXPLNoGfx or EXPLForceDraw); |
5680 inc(i, 1) |
5680 inc(i, 1) |
5681 end; |
5681 end; |
5682 |
5682 |
5683 if CheckLandValue(hwRound(Gear^.X + Gear^.dX + SignAs(_6,Gear^.dX)), hwRound(Gear^.Y + _1_9) |
5683 if CheckLandValue(hwRound(Gear^.X + Gear^.dX + SignAs(_6,Gear^.dX)), hwRound(Gear^.Y + _1_9) |
5684 , lfIndestructible) then |
5684 , lfIndestructible) then |