#pragma once #include "ifdefs.h" #include "ltexture.h" #ifndef SPRITE_H #define SPRITE_H // Clase sprite class Sprite { public: // Constructor Sprite(); // Destructor ~Sprite(); // Inicializador //void init(LTexture *texture, SDL_Renderer *renderer, int x = 0, int y = 0, Uint16 w = 0, Uint16 h = 0); void init(LTexture *texture, SDL_Renderer *renderer, SDL_Rect rect = {0, 0, 0, 0}); // Muestra el sprite por pantalla void render(); // Obten el valor de la variable int getPosX(); // Obten el valor de la variable int getPosY(); // Obten el valor de la variable Uint16 getWidth(); // Obten el valor de la variable Uint16 getHeight(); // Establece el valor de la variable void setPosX(int x); // Establece el valor de la variable void setPosY(int y); // Establece el valor de la variable void setWidth(Uint16 w); // Establece el valor de la variable void setHeight(Uint16 h); // Obten el valor de la variable SDL_Rect getSpriteClip(); // Establece el valor de la variable void setSpriteClip(int x, int y, Uint16 w, Uint16 h); void setSpriteClip(SDL_Rect rect); // Obten el valor de la variable LTexture *getTexture(); // Establece el valor de la variable void setTexture(LTexture *texture); // Establece el valor de la variable void setRenderer(SDL_Renderer *renderer); protected: int mPosX; // Posición X donde dibujar el sprite int mPosY; // Posición Y donde dibujar el sprite Uint16 mWidth; // Ancho del sprite Uint16 mHeight; // Alto del sprite SDL_Renderer *mRenderer; // Puntero al renderizador LTexture *mTexture; // Textura donde estan todos los dibujos del sprite SDL_Rect mSpriteClip; // Rectangulo que apunta a la posición de la textura donde está el grafico que se dibujará en pantalla }; #endif