hedgewars/uGearsHandlersMess.pas
changeset 15232 a9a1f5824076
parent 15230 4576e41c0692
child 15233 b189d6a2ecda
equal deleted inserted replaced
15231:c10e9261ab9c 15232:a9a1f5824076
  3118         if (Gear^.SoundChannel <> -1) then
  3118         if (Gear^.SoundChannel <> -1) then
  3119             begin
  3119             begin
  3120             StopSoundChan(Gear^.SoundChannel);
  3120             StopSoundChan(Gear^.SoundChannel);
  3121             Gear^.SoundChannel := -1;
  3121             Gear^.SoundChannel := -1;
  3122             end;
  3122             end;
       
  3123         if (WorldEdge = weWrap) then
       
  3124             AddVisualGear(hwRound(Gear^.X), hwRound(Gear^.Y), vgtBigExplosion);
  3123         DeleteGear(Gear);
  3125         DeleteGear(Gear);
  3124         exit;
  3126         exit;
  3125         end;
  3127         end;
  3126 
  3128 
  3127     uw := (Gear^.Karma <> 0); // Was plane underwater last tick?
  3129     uw := (Gear^.Karma <> 0); // Was plane underwater last tick?
  3174         Gear^.Tag := -1;
  3176         Gear^.Tag := -1;
  3175         Gear^.X := int2hwFloat(max(LAND_WIDTH,4096) + 2048);
  3177         Gear^.X := int2hwFloat(max(LAND_WIDTH,4096) + 2048);
  3176         end;
  3178         end;
  3177 
  3179 
  3178     Gear^.Y := int2hwFloat(topY - 300);
  3180     Gear^.Y := int2hwFloat(topY - 300);
       
  3181 
       
  3182     // Appear out of nowhere in wrap
       
  3183     if (WorldEdge = weWrap) then
       
  3184         AddVisualGear(hwRound(Gear^.X), hwRound(Gear^.Y), vgtBigExplosion);
       
  3185 
  3179     Gear^.dX := int2hwFloat(Gear^.Target.X) - int2hwFloat(Gear^.Tag * (Gear^.Health-1) * Gear^.Damage) / 2;
  3186     Gear^.dX := int2hwFloat(Gear^.Target.X) - int2hwFloat(Gear^.Tag * (Gear^.Health-1) * Gear^.Damage) / 2;
  3180 
  3187 
  3181     // calcs for Napalm Strike, so that it will hit the target (without wind at least :P)
  3188     // calcs for Napalm Strike, so that it will hit the target (without wind at least :P)
  3182     if (Gear^.State = 2) then
  3189     if (Gear^.State = 2) then
  3183         Gear^.dX := Gear^.dX - cBombsSpeed * Gear^.Tag * 900
  3190         Gear^.dX := Gear^.dX - cBombsSpeed * Gear^.Tag * 900