hedgewars/uGearsHandlers.pas
changeset 14282 6015b74eea55
parent 13614 c9642782778b
child 15900 128ace913837
equal deleted inserted replaced
14281:e754b516cc35 14282:6015b74eea55
    95                 end
    95                 end
    96             end;
    96             end;
    97 
    97 
    98     // Handle world wrap and bounce edge manually
    98     // Handle world wrap and bounce edge manually
    99     if (WorldEdge = weWrap) and
    99     if (WorldEdge = weWrap) and
   100         ((hwRound(Gear^.X) < LongInt(leftX)) or (hwRound(Gear^.X) > LongInt(rightX))) then
   100         ((hwRound(Gear^.X) < leftX) or (hwRound(Gear^.X) > rightX)) then
   101         begin
   101         begin
   102         LeftImpactTimer:= 150;
   102         LeftImpactTimer:= 150;
   103         RightImpactTimer:= 150;
   103         RightImpactTimer:= 150;
   104         Gear^.WDTimer:= 0;
   104         Gear^.WDTimer:= 0;
   105         Gear^.Karma:= 1;
   105         Gear^.Karma:= 1;
   106         end
   106         end
   107     else if (WorldEdge = weBounce) and
   107     else if (WorldEdge = weBounce) and
   108         (((hwRound(Gear^.X) - Gear^.Radius) < LongInt(leftX)) or ((hwRound(Gear^.X) + Gear^.Radius) > LongInt(rightX))) then
   108         (((hwRound(Gear^.X) - Gear^.Radius) < leftX) or ((hwRound(Gear^.X) + Gear^.Radius) > rightX)) then
   109         begin
   109         begin
   110         if (hwRound(Gear^.X) - Gear^.Radius < LongInt(leftX)) then
   110         if (hwRound(Gear^.X) - Gear^.Radius < leftX) then
   111             LeftImpactTimer:= 333
   111             LeftImpactTimer:= 333
   112         else
   112         else
   113             RightImpactTimer:= 333;
   113             RightImpactTimer:= 333;
   114         Gear^.Karma:= 2;
   114         Gear^.Karma:= 2;
   115         Gear^.WDTimer:= 0;
   115         Gear^.WDTimer:= 0;