Actualizada la librería sprite.h
This commit is contained in:
@@ -1,20 +1,7 @@
|
||||
#include "sprite.h"
|
||||
|
||||
// Constructor
|
||||
Sprite::Sprite()
|
||||
{
|
||||
init(nullptr, nullptr);
|
||||
}
|
||||
|
||||
// Destructor
|
||||
Sprite::~Sprite()
|
||||
{
|
||||
mTexture = nullptr;
|
||||
mRenderer = nullptr;
|
||||
}
|
||||
|
||||
// Inicializador
|
||||
/*void Sprite::init(LTexture *texture, SDL_Renderer *renderer, int x, int y, Uint16 w, Uint16 h)
|
||||
Sprite::Sprite(int x, int y, int w, int h, LTexture *texture, SDL_Renderer *renderer)
|
||||
{
|
||||
// Establece el alto y el ancho del sprite
|
||||
setWidth(w);
|
||||
@@ -31,19 +18,21 @@ Sprite::~Sprite()
|
||||
setTexture(texture);
|
||||
|
||||
// Establece el rectangulo de donde coger la imagen
|
||||
setSpriteClip(0, 0, w, h);
|
||||
}*/
|
||||
setSpriteClip(x, y, w, h);
|
||||
|
||||
// Inicializador
|
||||
void Sprite::init(LTexture *texture, SDL_Renderer *renderer, SDL_Rect rect)
|
||||
// Inicializa variables
|
||||
setEnabled(true);
|
||||
}
|
||||
|
||||
Sprite::Sprite(SDL_Rect rect, LTexture *texture, SDL_Renderer *renderer)
|
||||
{
|
||||
// Establece el alto y el ancho del sprite
|
||||
mWidth = rect.w;
|
||||
mHeight = rect.h;
|
||||
setWidth(rect.w);
|
||||
setHeight(rect.h);
|
||||
|
||||
// Establece la posición X,Y del sprite
|
||||
mPosX = rect.x;
|
||||
mPosY = rect.y;
|
||||
setPosX(rect.x);
|
||||
setPosY(rect.y);
|
||||
|
||||
// Establece el puntero al renderizador de la ventana
|
||||
setRenderer(renderer);
|
||||
@@ -53,12 +42,25 @@ void Sprite::init(LTexture *texture, SDL_Renderer *renderer, SDL_Rect rect)
|
||||
|
||||
// Establece el rectangulo de donde coger la imagen
|
||||
setSpriteClip(rect);
|
||||
|
||||
// Inicializa variables
|
||||
setEnabled(true);
|
||||
}
|
||||
|
||||
// Destructor
|
||||
Sprite::~Sprite()
|
||||
{
|
||||
mTexture = nullptr;
|
||||
mRenderer = nullptr;
|
||||
}
|
||||
|
||||
// Muestra el sprite por pantalla
|
||||
void Sprite::render()
|
||||
{
|
||||
mTexture->render(mRenderer, mPosX, mPosY, &mSpriteClip);
|
||||
if (mEnabled)
|
||||
{
|
||||
mTexture->render(mRenderer, mPosX, mPosY, &mSpriteClip);
|
||||
}
|
||||
}
|
||||
|
||||
// Obten el valor de la variable
|
||||
@@ -74,13 +76,13 @@ int Sprite::getPosY()
|
||||
}
|
||||
|
||||
// Obten el valor de la variable
|
||||
Uint16 Sprite::getWidth()
|
||||
int Sprite::getWidth()
|
||||
{
|
||||
return mWidth;
|
||||
}
|
||||
|
||||
// Obten el valor de la variable
|
||||
Uint16 Sprite::getHeight()
|
||||
int Sprite::getHeight()
|
||||
{
|
||||
return mHeight;
|
||||
}
|
||||
@@ -98,13 +100,13 @@ void Sprite::setPosY(int y)
|
||||
}
|
||||
|
||||
// Establece el valor de la variable
|
||||
void Sprite::setWidth(Uint16 w)
|
||||
void Sprite::setWidth(int w)
|
||||
{
|
||||
mWidth = w;
|
||||
}
|
||||
|
||||
// Establece el valor de la variable
|
||||
void Sprite::setHeight(Uint16 h)
|
||||
void Sprite::setHeight(int h)
|
||||
{
|
||||
mHeight = h;
|
||||
}
|
||||
@@ -116,7 +118,13 @@ SDL_Rect Sprite::getSpriteClip()
|
||||
}
|
||||
|
||||
// Establece el valor de la variable
|
||||
void Sprite::setSpriteClip(int x, int y, Uint16 w, Uint16 h)
|
||||
void Sprite::setSpriteClip(SDL_Rect rect)
|
||||
{
|
||||
mSpriteClip = rect;
|
||||
}
|
||||
|
||||
// Establece el valor de la variable
|
||||
void Sprite::setSpriteClip(int x, int y, int w, int h)
|
||||
{
|
||||
mSpriteClip.x = x;
|
||||
mSpriteClip.y = y;
|
||||
@@ -124,12 +132,6 @@ void Sprite::setSpriteClip(int x, int y, Uint16 w, Uint16 h)
|
||||
mSpriteClip.h = h;
|
||||
}
|
||||
|
||||
// Establece el valor de la variable
|
||||
void Sprite::setSpriteClip(SDL_Rect rect)
|
||||
{
|
||||
mSpriteClip = rect;
|
||||
}
|
||||
|
||||
// Obten el valor de la variable
|
||||
LTexture *Sprite::getTexture()
|
||||
{
|
||||
@@ -146,4 +148,23 @@ void Sprite::setTexture(LTexture *texture)
|
||||
void Sprite::setRenderer(SDL_Renderer *renderer)
|
||||
{
|
||||
mRenderer = renderer;
|
||||
}
|
||||
|
||||
// Establece el valor de la variable
|
||||
void Sprite::setEnabled(bool value)
|
||||
{
|
||||
mEnabled = value;
|
||||
}
|
||||
|
||||
// Comprueba si el objeto está habilitado
|
||||
bool Sprite::isEnabled()
|
||||
{
|
||||
return mEnabled;
|
||||
}
|
||||
|
||||
// Devuelve el rectangulo donde está el sprite
|
||||
SDL_Rect Sprite::getRect()
|
||||
{
|
||||
SDL_Rect rect = {getPosX(), getPosY(), getWidth(), getHeight()};
|
||||
return rect;
|
||||
}
|
||||
Reference in New Issue
Block a user