hedgewars/uVisualGears.pas
changeset 3751 a70c61c076ae
parent 3706 a79784328c03
child 3754 cb42d83587f5
equal deleted inserted replaced
3750:3aa85b5f3318 3751:a70c61c076ae
   384       end
   384       end
   385 end;
   385 end;
   386 
   386 
   387 procedure DrawVisualGears(Layer: LongWord);
   387 procedure DrawVisualGears(Layer: LongWord);
   388 var Gear: PVisualGear;
   388 var Gear: PVisualGear;
       
   389     i: LongInt;
   389 begin
   390 begin
   390 Gear:= VisualGearsList;
   391 Gear:= VisualGearsList;
   391 case Layer of
   392 case Layer of
   392     0: while Gear <> nil do
   393     0: while Gear <> nil do
   393         begin
   394         begin
   433             end;
   434             end;
   434         if (cReducedQuality and rqFancyBoom) = 0 then
   435         if (cReducedQuality and rqFancyBoom) = 0 then
   435             case Gear^.Kind of
   436             case Gear^.Kind of
   436                 vgtExplPart: DrawSprite(sprExplPart, round(Gear^.X) + WorldDx - 16, round(Gear^.Y) + WorldDy - 16, 7 - Gear^.Frame);
   437                 vgtExplPart: DrawSprite(sprExplPart, round(Gear^.X) + WorldDx - 16, round(Gear^.Y) + WorldDy - 16, 7 - Gear^.Frame);
   437                 vgtExplPart2: DrawSprite(sprExplPart2, round(Gear^.X) + WorldDx - 16, round(Gear^.Y) + WorldDy - 16, 7 - Gear^.Frame);
   438                 vgtExplPart2: DrawSprite(sprExplPart2, round(Gear^.X) + WorldDx - 16, round(Gear^.Y) + WorldDy - 16, 7 - Gear^.Frame);
   438                 vgtFire: DrawSprite(sprFlame, round(Gear^.X) + WorldDx - 8, round(Gear^.Y) + WorldDy, (RealTicks div 64 + Gear^.Frame) mod 8);
   439                 vgtFire: if (Gear^.State and gstTmpFlag) = 0 then
       
   440                              DrawSprite(sprFlame, round(Gear^.X) + WorldDx - 8, round(Gear^.Y) + WorldDy, (RealTicks shr 6 + Gear^.Frame) mod 8)
       
   441                          else
       
   442                              DrawTextureF(SpritesData[sprFlame].Texture, Gear^.FrameTicks / 900, round(Gear^.X) + WorldDx, round(Gear^.Y) + WorldDy, (RealTicks shr 7 + Gear^.Frame) mod 8, 1, 16, 16);
   439                 vgtBubble: DrawSprite(sprBubbles, round(Gear^.X) + WorldDx - 8, round(Gear^.Y) + WorldDy - 8, Gear^.Frame);//(RealTicks div 64 + Gear^.Frame) mod 8);
   443                 vgtBubble: DrawSprite(sprBubbles, round(Gear^.X) + WorldDx - 8, round(Gear^.Y) + WorldDy - 8, Gear^.Frame);//(RealTicks div 64 + Gear^.Frame) mod 8);
   440                 vgtSteam: DrawSprite(sprExplPart, round(Gear^.X) + WorldDx - 16, round(Gear^.Y) + WorldDy - 16, 7 - Gear^.Frame);
   444                 vgtSteam: DrawSprite(sprExplPart, round(Gear^.X) + WorldDx - 16, round(Gear^.Y) + WorldDy - 16, 7 - Gear^.Frame);
   441                 vgtAmmo: begin
   445                 vgtAmmo: begin
   442                         Tint($FF, $FF, $FF, floor(Gear^.alpha * $FF));
   446                         Tint($FF, $FF, $FF, floor(Gear^.alpha * $FF));
   443                         DrawTextureF(ropeIconTex, Gear^.scale, round(Gear^.X) + WorldDx, round(Gear^.Y) + WorldDy, 0, 1, 32, 32);
   447                         DrawTextureF(ropeIconTex, Gear^.scale, round(Gear^.X) + WorldDx, round(Gear^.Y) + WorldDy, 0, 1, 32, 32);