hedgewars/uStore.pas
changeset 43 e297fea1a2f3
parent 42 72ffe21f027c
child 47 8daf1ee0b9a3
equal deleted inserted replaced
42:72ffe21f027c 43:e297fea1a2f3
    45 procedure StoreLoad;
    45 procedure StoreLoad;
    46 procedure StoreRelease;
    46 procedure StoreRelease;
    47 procedure DrawGear(Stuff : TStuff; X, Y: integer; Surface: PSDL_Surface);
    47 procedure DrawGear(Stuff : TStuff; X, Y: integer; Surface: PSDL_Surface);
    48 procedure DrawSpriteFromRect(r: TSDL_Rect; X, Y, Height, Position: integer; Surface: PSDL_Surface);
    48 procedure DrawSpriteFromRect(r: TSDL_Rect; X, Y, Height, Position: integer; Surface: PSDL_Surface);
    49 procedure DrawSprite (Sprite: TSprite; X, Y, Position: integer; Surface: PSDL_Surface);
    49 procedure DrawSprite (Sprite: TSprite; X, Y, Position: integer; Surface: PSDL_Surface);
       
    50 procedure DrawSprite2(Sprite: TSprite; X, Y, FrameX, FrameY: integer; Surface: PSDL_Surface);
    50 procedure DrawLand (X, Y: integer; Surface: PSDL_Surface);
    51 procedure DrawLand (X, Y: integer; Surface: PSDL_Surface);
    51 procedure DXOutText(X, Y: Integer; Font: THWFont; s: string; Surface: PSDL_Surface);
    52 procedure DXOutText(X, Y: Integer; Font: THWFont; s: string; Surface: PSDL_Surface);
    52 procedure DrawCaption(X, Y: integer; Rect: TSDL_Rect; Surface: PSDL_Surface; const fromTempSurf: boolean = false);
    53 procedure DrawCaption(X, Y: integer; Rect: TSDL_Rect; Surface: PSDL_Surface; const fromTempSurf: boolean = false);
    53 procedure DrawHedgehog(X, Y: integer; Dir: integer; Pos, Step: LongWord; Surface: PSDL_Surface);
    54 procedure DrawHedgehog(X, Y: integer; Dir: integer; Pos, Step: LongWord; Surface: PSDL_Surface);
    54 procedure DrawExplosion(X, Y, Radius: integer);
    55 procedure DrawExplosion(X, Y, Radius: integer);
   529 rr.y:= Y;
   530 rr.y:= Y;
   530 rr.w:= r.w;
   531 rr.w:= r.w;
   531 rr.h:= r.h;
   532 rr.h:= r.h;
   532 if SDL_UpperBlit(SourceSurface, r, DestSurface, @rr) < 0 then
   533 if SDL_UpperBlit(SourceSurface, r, DestSurface, @rr) < 0 then
   533    begin
   534    begin
   534    Writeln('Blit: ', SDL_GetError);
   535    OutError('Blit: ' + SDL_GetError, true);
   535    exit
   536    exit
   536    end;
   537    end;
   537 end;
   538 end;
   538 
   539 
   539 procedure DrawGear(Stuff: TStuff; X, Y: integer; Surface: PSDL_Surface);
   540 procedure DrawGear(Stuff: TStuff; X, Y: integer; Surface: PSDL_Surface);
   552 var r: TSDL_Rect;
   553 var r: TSDL_Rect;
   553 begin
   554 begin
   554 r.x:= 0;
   555 r.x:= 0;
   555 r.w:= SpritesData[Sprite].Width;
   556 r.w:= SpritesData[Sprite].Width;
   556 r.y:= Position * SpritesData[Sprite].Height;
   557 r.y:= Position * SpritesData[Sprite].Height;
       
   558 r.h:= SpritesData[Sprite].Height;
       
   559 DrawFromRect(X, Y, @r, SpritesData[Sprite].Surface, Surface)
       
   560 end;
       
   561 
       
   562 procedure DrawSprite2(Sprite: TSprite; X, Y, FrameX, FrameY: integer; Surface: PSDL_Surface);
       
   563 var r: TSDL_Rect;
       
   564 begin
       
   565 r.x:= FrameX * SpritesData[Sprite].Width;
       
   566 r.w:= SpritesData[Sprite].Width;
       
   567 r.y:= FrameY * SpritesData[Sprite].Height;
   557 r.h:= SpritesData[Sprite].Height;
   568 r.h:= SpritesData[Sprite].Height;
   558 DrawFromRect(X, Y, @r, SpritesData[Sprite].Surface, Surface)
   569 DrawFromRect(X, Y, @r, SpritesData[Sprite].Surface, Surface)
   559 end;
   570 end;
   560 
   571 
   561 procedure DXOutText(X, Y: Integer; Font: THWFont; s: string; Surface: PSDL_Surface);
   572 procedure DXOutText(X, Y: Integer; Font: THWFont; s: string; Surface: PSDL_Surface);