88 lines
1.9 KiB
C++
88 lines
1.9 KiB
C++
#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(int x, int y, int w, int h, LTexture *texture, SDL_Renderer *renderer);
|
|
void init(SDL_Rect rect, LTexture *texture, SDL_Renderer *renderer);
|
|
|
|
// 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
|
|
int getWidth();
|
|
|
|
// Obten el valor de la variable
|
|
int 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(int w);
|
|
|
|
// Establece el valor de la variable
|
|
void setHeight(int h);
|
|
|
|
// Obten el valor de la variable
|
|
SDL_Rect getSpriteClip();
|
|
|
|
// Establece el valor de la variable
|
|
void setSpriteClip(SDL_Rect rect);
|
|
|
|
// Establece el valor de la variable
|
|
void setSpriteClip(int x, int y, int w, int h);
|
|
|
|
// 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:
|
|
// Posición X,Y donde dibujar el sprite
|
|
int mPosX;
|
|
int mPosY;
|
|
|
|
// Alto y ancho del sprite
|
|
Uint16 mWidth;
|
|
Uint16 mHeight;
|
|
|
|
// Puntero al renderizador de la ventana
|
|
SDL_Renderer *mRenderer;
|
|
|
|
// Textura donde estan todos los dibujos del sprite
|
|
LTexture *mTexture;
|
|
|
|
// Rectangulo de la textura que se dibujará en pantalla
|
|
SDL_Rect mSpriteClip;
|
|
};
|
|
|
|
#endif
|