hedgewars/uVisualGears.pas
changeset 3641 98319a621dc8
parent 3616 85d69ddb41b6
child 3689 e2be39ee19f0
equal deleted inserted replaced
3640:54676a34b9ad 3641:98319a621dc8
   342 
   342 
   343 procedure KickFlakes(Radius, X, Y: LongInt);
   343 procedure KickFlakes(Radius, X, Y: LongInt);
   344 var Gear, t: PVisualGear;
   344 var Gear, t: PVisualGear;
   345     dmg: LongInt;
   345     dmg: LongInt;
   346 begin
   346 begin
   347 if (vobCount = 0) or (vobCount > 200) or ((cReducedQuality and rqkillFlakes) <> 0) then exit;
   347 if (vobCount = 0) or (vobCount > 200) then exit;
   348 t:= VisualGearsList;
   348 t:= VisualGearsList;
   349 while t <> nil do
   349 while t <> nil do
   350       begin
   350       begin
   351       Gear:= t;
   351       Gear:= t;
   352       if Gear^.Kind = vgtFlake then
   352       if Gear^.Kind = vgtFlake then
   373 case Layer of
   373 case Layer of
   374     0: while Gear <> nil do
   374     0: while Gear <> nil do
   375         begin
   375         begin
   376         Tint(Gear^.Tint);
   376         Tint(Gear^.Tint);
   377         case Gear^.Kind of
   377         case Gear^.Kind of
   378             vgtFlake: if ((cReducedQuality and rqkillFlakes) = 0) then
   378             vgtFlake: if vobVelocity = 0 then
   379                         if vobVelocity = 0 then
   379                           DrawSprite(sprFlake, round(Gear^.X) + WorldDx, round(Gear^.Y) + WorldDy + SkyOffset, Gear^.Frame)
   380                             DrawSprite(sprFlake, round(Gear^.X) + WorldDx, round(Gear^.Y) + WorldDy + SkyOffset, Gear^.Frame)
   380                       else
   381                         else
   381                           DrawRotatedF(sprFlake, round(Gear^.X) + WorldDx, round(Gear^.Y) + WorldDy + SkyOffset, Gear^.Frame, 1, Gear^.Angle);
   382                             DrawRotatedF(sprFlake, round(Gear^.X) + WorldDx, round(Gear^.Y) + WorldDy + SkyOffset, Gear^.Frame, 1, Gear^.Angle);
       
   383             vgtCloud: DrawSprite(sprCloud, round(Gear^.X) + WorldDx, round(Gear^.Y) + WorldDy + SkyOffset, Gear^.Frame);
   382             vgtCloud: DrawSprite(sprCloud, round(Gear^.X) + WorldDx, round(Gear^.Y) + WorldDy + SkyOffset, Gear^.Frame);
   384             end;
   383             end;
   385         Gear:= Gear^.NextGear
   384         Gear:= Gear^.NextGear
   386         end;
   385         end;
   387     1: while Gear <> nil do
   386     1: while Gear <> nil do