hedgewars/uVisualGears.pas
changeset 10015 4feced261c68
parent 9998 736015b847e3
parent 9950 2759212a27de
child 10108 c68cf030eded
equal deleted inserted replaced
10014:56d2f2d5aad8 10015:4feced261c68
   217                   vgtDroplet: if SuddenDeathDmg then
   217                   vgtDroplet: if SuddenDeathDmg then
   218                                   DrawSprite(sprSDDroplet, round(Gear^.X) + WorldDx - 8, round(Gear^.Y) + WorldDy - 8, Gear^.Frame)
   218                                   DrawSprite(sprSDDroplet, round(Gear^.X) + WorldDx - 8, round(Gear^.Y) + WorldDy - 8, Gear^.Frame)
   219                               else
   219                               else
   220                                   DrawSprite(sprDroplet, round(Gear^.X) + WorldDx - 8, round(Gear^.Y) + WorldDy - 8, Gear^.Frame);
   220                                   DrawSprite(sprDroplet, round(Gear^.X) + WorldDx - 8, round(Gear^.Y) + WorldDy - 8, Gear^.Frame);
   221                   vgtBubble: DrawSprite(sprBubbles, round(Gear^.X) + WorldDx - 8, round(Gear^.Y) + WorldDy - 8, Gear^.Frame);//(RealTicks div 64 + Gear^.Frame) mod 8);
   221                   vgtBubble: DrawSprite(sprBubbles, round(Gear^.X) + WorldDx - 8, round(Gear^.Y) + WorldDy - 8, Gear^.Frame);//(RealTicks div 64 + Gear^.Frame) mod 8);
   222                vgtStraightShot: begin 
   222                vgtStraightShot: begin
   223                                 if Gear^.dX < 0 then
   223                                 if Gear^.dX < 0 then
   224                                     i:= -1
   224                                     i:= -1
   225                                 else
   225                                 else
   226                                     i:= 1;
   226                                     i:= 1;
   227                                 DrawTextureRotatedF(SpritesData[TSprite(Gear^.State)].Texture, Gear^.Scale, 0, 0, round(Gear^.X) + WorldDx, round(Gear^.Y) + WorldDy, Gear^.Frame, i, SpritesData[TSprite(Gear^.State)].Width, SpritesData[TSprite(Gear^.State)].Height, Gear^.Angle);
   227                                 DrawTextureRotatedF(SpritesData[TSprite(Gear^.State)].Texture, Gear^.Scale, 0, 0, round(Gear^.X) + WorldDx, round(Gear^.Y) + WorldDy, Gear^.Frame, i, SpritesData[TSprite(Gear^.State)].Width, SpritesData[TSprite(Gear^.State)].Height, Gear^.Angle);
   262                                     end
   262                                     end
   263                                 else if (Gear^.Tex <> nil) and (((Gear^.State = 0) and (Gear^.Hedgehog^.Team = CurrentTeam)) or (Gear^.State = 2)) then
   263                                 else if (Gear^.Tex <> nil) and (((Gear^.State = 0) and (Gear^.Hedgehog^.Team = CurrentTeam)) or (Gear^.State = 2)) then
   264                                     DrawTextureCentered(round(Gear^.X) + WorldDx, round(Gear^.Y) + WorldDy, Gear^.Tex);
   264                                     DrawTextureCentered(round(Gear^.X) + WorldDx, round(Gear^.Y) + WorldDy, Gear^.Tex);
   265                                 end;
   265                                 end;
   266                vgtSmallDamageTag: DrawTextureCentered(round(Gear^.X) + WorldDx, round(Gear^.Y) + WorldDy, Gear^.Tex);
   266                vgtSmallDamageTag: DrawTextureCentered(round(Gear^.X) + WorldDx, round(Gear^.Y) + WorldDy, Gear^.Tex);
   267                vgtHealthTag: if Gear^.Tex <> nil then 
   267                vgtHealthTag: if Gear^.Tex <> nil then
   268                                begin
   268                                begin
   269                                if Gear^.Frame = 0 then 
   269                                if Gear^.Frame = 0 then
   270                                    DrawTextureCentered(round(Gear^.X) + WorldDx, round(Gear^.Y) + WorldDy, Gear^.Tex)
   270                                    DrawTextureCentered(round(Gear^.X) + WorldDx, round(Gear^.Y) + WorldDy, Gear^.Tex)
   271                                else
   271                                else
   272                                    begin
   272                                    begin
   273                                    SetScale(cDefaultZoomLevel);
   273                                    SetScale(cDefaultZoomLevel);
   274                                    if Gear^.Angle = 0 then
   274                                    if Gear^.Angle = 0 then
   275                                        DrawTexture(round(Gear^.X), round(Gear^.Y), Gear^.Tex)
   275                                        DrawTexture(round(Gear^.X), round(Gear^.Y), Gear^.Tex)
   276                                    else
   276                                    else
   277                                        DrawTexture(round(Gear^.X), round(Gear^.Y), Gear^.Tex, Gear^.Angle); 
   277                                        DrawTexture(round(Gear^.X), round(Gear^.Y), Gear^.Tex, Gear^.Angle);
   278                                    SetScale(zoom)
   278                                    SetScale(zoom)
   279                                    end
   279                                    end
   280                                end;
   280                                end;
   281                vgtStraightShot: begin 
   281                vgtStraightShot: begin
   282                                 if Gear^.dX < 0 then
   282                                 if Gear^.dX < 0 then
   283                                     i:= -1
   283                                     i:= -1
   284                                 else
   284                                 else
   285                                     i:= 1;
   285                                     i:= 1;
   286                                 DrawTextureRotatedF(SpritesData[TSprite(Gear^.State)].Texture, Gear^.Scale, 0, 0, round(Gear^.X) + WorldDx, round(Gear^.Y) + WorldDy, Gear^.Frame, i, SpritesData[TSprite(Gear^.State)].Width, SpritesData[TSprite(Gear^.State)].Height, Gear^.Angle);
   286                                 DrawTextureRotatedF(SpritesData[TSprite(Gear^.State)].Texture, Gear^.Scale, 0, 0, round(Gear^.X) + WorldDx, round(Gear^.Y) + WorldDy, Gear^.Frame, i, SpritesData[TSprite(Gear^.State)].Width, SpritesData[TSprite(Gear^.State)].Height, Gear^.Angle);