Sprite: Se peude establecer el nivel de zoom en ancho y alto

This commit is contained in:
2023-05-07 12:55:32 +02:00
parent 3ba5f6cce0
commit 7725f8ab3e
6 changed files with 73 additions and 12 deletions

View File

@@ -22,6 +22,8 @@ Sprite::Sprite(int x, int y, int w, int h, Texture *texture, SDL_Renderer *rende
// Inicializa variables
enabled = true;
zoomW = 1.0f;
zoomH = 1.0f;
}
Sprite::Sprite(SDL_Rect rect, Texture *texture, SDL_Renderer *renderer)
@@ -45,6 +47,8 @@ Sprite::Sprite(SDL_Rect rect, Texture *texture, SDL_Renderer *renderer)
// Inicializa variables
enabled = true;
zoomW = 1.0f;
zoomH = 1.0f;
}
// Muestra el sprite por pantalla
@@ -52,7 +56,7 @@ void Sprite::render()
{
if (enabled)
{
texture->render(renderer, x, y, &spriteClip);
texture->render(renderer, x, y, &spriteClip, zoomW, zoomH);
}
}
@@ -198,4 +202,16 @@ void Sprite::setRect(SDL_Rect rect)
y = rect.y;
w = rect.w;
h = rect.h;
}
// Establece el nivel de zoom en horizontal
void Sprite::setZoomW(float value)
{
zoomW = value;
}
// Establece el nivel de zoom en vertical
void Sprite::setZoomH(float value)
{
zoomH = value;
}