SpriteRenderer.cpp 766 B

1234567891011121314151617181920212223242526272829
  1. #include <TINYSTL/unordered_map.h>
  2. #include "SpriteRenderer.h"
  3. #include "Graphics.h"
  4. #include "render/Pixel.h"
  5. #define SPRITERENDERER WalrusRPG::SpriteRenderer
  6. using namespace WalrusRPG;
  7. using namespace WalrusRPG::Utils;
  8. using WalrusRPG::Graphics::Pixel;
  9. SPRITERENDERER::SpriteRenderer(WalrusRPG::Graphics::Texture _tilesheet)
  10. : tilesheet(_tilesheet)
  11. {
  12. }
  13. void SPRITERENDERER::add_sprite(unsigned id, WalrusRPG::Utils::Rect rect)
  14. {
  15. sprites[id] = rect;
  16. }
  17. void SPRITERENDERER::render(const unsigned id, const Rect &rect)
  18. {
  19. Graphics::put_sprite(tilesheet, rect.x, rect.y, sprites[id]);
  20. }
  21. void SPRITERENDERER::render(const unsigned id, const Rect &rect, const Pixel &tint)
  22. {
  23. Graphics::put_sprite_tint(tilesheet, rect.x, rect.y, sprites[id], tint);
  24. }