Advertisement
Guest User

Untitled

a guest
Mar 21st, 2014
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 1.01 KB | None | 0 0
  1. unit sprite1;
  2.  
  3. interface
  4.  
  5. uses
  6.     sdl2, sdl2_image, graphics1;
  7.  
  8. type
  9.     sprite = class
  10.     public
  11.         constructor sprite(filepath:string; sourcex:integer; sourcey:integer; width:integer; height:integer; ren:psdl_renderer);
  12.         destructor sprite();
  13.  
  14.         procedure draw(graphics:graphics; x:integer; y:integer);
  15.  
  16.     private
  17.         renderer_: psdl_renderer;
  18.         texture_: psdl_texture;
  19.         sourcerect_: tsdl_rect;
  20.     end;
  21.  
  22. implementation
  23.  
  24. constructor sprite.sprite(filepath:string; sourcex:integer; sourcey:integer; width:integer; height:integer; ren:psdl_renderer);
  25. begin
  26.     inherited;
  27.     renderer_ := ren;
  28.     texture_ := img_loadtexture(renderer_, pchar(filepath));
  29.     sourcerect_.x := sourcex;
  30.     sourcerect_.y := sourcey;
  31.     sourcerect_.w := width;
  32.     sourcerect_.h := height;
  33. end;
  34.  
  35. procedure sprite.draw(graphics:graphics; x:integer; y:integer);
  36. begin
  37.     graphics.rendertexture(renderer_, texture_, x, y, @sourcerect_);
  38. end;
  39.  
  40. destructor sprite.sprite;
  41. begin
  42.     sdl_destroytexture(texture_);
  43.     inherited;
  44. end;
  45.  
  46. end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement