hedgewars/uGearsRender.pas
branchwebgl
changeset 9521 8054d9d775fd
parent 9127 e350500c4edb
parent 9505 56e0cca99e20
child 9950 2759212a27de
equal deleted inserted replaced
9282:92af50454cf2 9521:8054d9d775fd
    48                                 end;
    48                                 end;
    49                 rounded: array[0..MAXROPEPOINTS + 2] of TVertex2f;
    49                 rounded: array[0..MAXROPEPOINTS + 2] of TVertex2f;
    50                 end;
    50                 end;
    51 
    51 
    52 implementation
    52 implementation
    53 uses uRender, uUtils, uVariables, uAmmos, Math, uVisualGears;
    53 uses uRender, uUtils, uVariables, uAmmos, Math, uVisualGearsList;
    54 
       
    55 const
       
    56     // hog tag mask
       
    57     //htNone        = $00;
       
    58     htTeamName    = $01;
       
    59     htName        = $02;
       
    60     htHealth      = $04;
       
    61     htTransparent = $08;
       
    62 
    54 
    63 procedure DrawRopeLinesRQ(Gear: PGear);
    55 procedure DrawRopeLinesRQ(Gear: PGear);
    64 begin
    56 begin
    65 with RopePoints do
    57 with RopePoints do
    66     begin
    58     begin
   690                     DrawSpriteRotated(sprHandPlane, hx, hy, sign, 0);
   682                     DrawSpriteRotated(sprHandPlane, hx, hy, sign, 0);
   691                     defaultPos:= false
   683                     defaultPos:= false
   692                     end;
   684                     end;
   693                 amGirder: begin
   685                 amGirder: begin
   694                     DrawSpriteRotated(sprHandConstruction, hx, hy, sign, aangle);
   686                     DrawSpriteRotated(sprHandConstruction, hx, hy, sign, aangle);
       
   687                     if WorldEdge = weWrap then
       
   688                         begin
       
   689                         if hwRound(Gear^.X) < leftX+256 then
       
   690                             DrawSpriteClipped(sprGirder,
       
   691                                             rightX+(ox-leftX)-256,
       
   692                                             oy-256,
       
   693                                             LongInt(topY)+WorldDy,
       
   694                                             LongInt(rightX)+WorldDx,
       
   695                                             cWaterLine+WorldDy,
       
   696                                             LongInt(leftX)+WorldDx);
       
   697                         if hwRound(Gear^.X) > rightX-256 then
       
   698                             DrawSpriteClipped(sprGirder,
       
   699                                             leftX-(rightX-ox)-256,
       
   700                                             oy-256,
       
   701                                             LongInt(topY)+WorldDy,
       
   702                                             LongInt(rightX)+WorldDx,
       
   703                                             cWaterLine+WorldDy,
       
   704                                             LongInt(leftX)+WorldDx)
       
   705                         end;
   695                     DrawSpriteClipped(sprGirder,
   706                     DrawSpriteClipped(sprGirder,
   696                                     ox-256,
   707                                     ox-256,
   697                                     oy-256,
   708                                     oy-256,
   698                                     LongInt(topY)+WorldDy,
   709                                     LongInt(topY)+WorldDy,
   699                                     LongInt(rightX)+WorldDx,
   710                                     LongInt(rightX)+WorldDx,