ahora se puede elegir el modo de la clase tiledbg
añadido modo estático a la clase tiledbg
This commit is contained in:
@@ -1,13 +1,14 @@
|
||||
#include "tiledbg.h"
|
||||
|
||||
// Constructor
|
||||
Tiledbg::Tiledbg(SDL_Renderer *renderer, Screen *screen, Asset *asset, SDL_Rect pos)
|
||||
Tiledbg::Tiledbg(SDL_Renderer *renderer, Screen *screen, Asset *asset, SDL_Rect pos, int mode)
|
||||
{
|
||||
// Copia los punteros
|
||||
this->renderer = renderer;
|
||||
this->screen = screen;
|
||||
this->asset = asset;
|
||||
this->pos = pos;
|
||||
this->mode = mode;
|
||||
|
||||
// Crea la textura para el mosaico de fondo
|
||||
canvas = SDL_CreateTexture(renderer, SDL_PIXELFORMAT_RGBA8888, SDL_TEXTUREACCESS_TARGET, pos.w * 2, pos.h * 2);
|
||||
@@ -26,7 +27,10 @@ Tiledbg::~Tiledbg()
|
||||
void Tiledbg::init()
|
||||
{
|
||||
counter = 0;
|
||||
mode = rand() % 2;
|
||||
if (mode == TILED_MODE_RANDOM)
|
||||
{
|
||||
mode = rand() % 2;
|
||||
}
|
||||
tileWidth = 64;
|
||||
tileHeight = 64;
|
||||
|
||||
@@ -90,12 +94,12 @@ void Tiledbg::render()
|
||||
// Actualiza la lógica de la clase
|
||||
void Tiledbg::update()
|
||||
{
|
||||
if (mode == 0)
|
||||
if (mode == TILED_MODE_DIAGONAL)
|
||||
{ // El tileado de fondo se desplaza en diagonal
|
||||
++window.x %= tileWidth;
|
||||
++window.y %= tileHeight;
|
||||
}
|
||||
else
|
||||
else if (mode == TILED_MODE_CIRCLE)
|
||||
{ // El tileado de fondo se desplaza en circulo
|
||||
++counter %= 360;
|
||||
window.x = 128 + (int(sin[(counter + 270) % 360] * 128));
|
||||
|
||||
Reference in New Issue
Block a user