hedgewars/uGearsHandlersMess.pas
changeset 13604 73b096e1d895
parent 13603 369efa5e01fa
child 13605 422d6062620a
equal deleted inserted replaced
13603:369efa5e01fa 13604:73b096e1d895
  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