Renombrada la clase ltexture a texture

This commit is contained in:
2022-10-18 13:56:06 +02:00
parent 49f2c244ae
commit b949436cd7
27 changed files with 52 additions and 53 deletions

View File

@@ -15,7 +15,7 @@ Actor::Actor(actor_t actor)
renderer = actor.renderer; renderer = actor.renderer;
// Crea objetos // Crea objetos
texture = new LTexture(renderer, asset->get(actor.tileset)); texture = new Texture(renderer, asset->get(actor.tileset));
sprite = new AnimatedSprite(texture, renderer, asset->get(actor.animation)); sprite = new AnimatedSprite(texture, renderer, asset->get(actor.animation));
// Obten el resto de valores // Obten el resto de valores

View File

@@ -42,7 +42,7 @@ protected:
// Objetos y punteros // Objetos y punteros
AnimatedSprite *sprite; // Sprite del enemigo AnimatedSprite *sprite; // Sprite del enemigo
Asset *asset; // Objeto con la ruta a todos los ficheros de recursos Asset *asset; // Objeto con la ruta a todos los ficheros de recursos
LTexture *texture; // Textura con los graficos del enemigo Texture *texture; // Textura con los graficos del enemigo
SDL_Renderer *renderer; // El renderizador de la ventana SDL_Renderer *renderer; // El renderizador de la ventana
// Variables // Variables

View File

@@ -1,7 +1,7 @@
#include "animatedsprite.h" #include "animatedsprite.h"
// Constructor // Constructor
AnimatedSprite::AnimatedSprite(LTexture *texture, SDL_Renderer *renderer, std::string file, std::vector<std::string> *buffer) AnimatedSprite::AnimatedSprite(Texture *texture, SDL_Renderer *renderer, std::string file, std::vector<std::string> *buffer)
{ {
// Copia los punteros // Copia los punteros
setTexture(texture); setTexture(texture);

View File

@@ -32,7 +32,7 @@ private:
public: public:
// Constructor // Constructor
AnimatedSprite(LTexture *texture = nullptr, SDL_Renderer *renderer = nullptr, std::string file = "", std::vector<std::string> *buffer = nullptr); AnimatedSprite(Texture *texture = nullptr, SDL_Renderer *renderer = nullptr, std::string file = "", std::vector<std::string> *buffer = nullptr);
// Destructor // Destructor
~AnimatedSprite(); ~AnimatedSprite();

View File

@@ -2,7 +2,7 @@
#include "movingsprite.h" #include "movingsprite.h"
// Constructor // Constructor
MovingSprite::MovingSprite(float x, float y, int w, int h, float velx, float vely, float accelx, float accely, LTexture *texture, SDL_Renderer *renderer) MovingSprite::MovingSprite(float x, float y, int w, int h, float velx, float vely, float accelx, float accely, Texture *texture, SDL_Renderer *renderer)
{ {
// Copia los punteros // Copia los punteros
this->texture = texture; this->texture = texture;

View File

@@ -38,7 +38,7 @@ protected:
public: public:
// Constructor // Constructor
MovingSprite(float x = 0, float y = 0, int w = 0, int h = 0, float velx = 0, float vely = 0, float accelx = 0, float accely = 0, LTexture *texture = nullptr, SDL_Renderer *renderer = nullptr); MovingSprite(float x = 0, float y = 0, int w = 0, int h = 0, float velx = 0, float vely = 0, float accelx = 0, float accely = 0, Texture *texture = nullptr, SDL_Renderer *renderer = nullptr);
// Destructor // Destructor
~MovingSprite(); ~MovingSprite();

View File

@@ -1,7 +1,7 @@
#include "sprite.h" #include "sprite.h"
// Constructor // Constructor
Sprite::Sprite(int x, int y, int w, int h, LTexture *texture, SDL_Renderer *renderer) Sprite::Sprite(int x, int y, int w, int h, Texture *texture, SDL_Renderer *renderer)
{ {
// Establece la posición X,Y del sprite // Establece la posición X,Y del sprite
this->x = x; this->x = x;
@@ -24,7 +24,7 @@ Sprite::Sprite(int x, int y, int w, int h, LTexture *texture, SDL_Renderer *rend
enabled = true; enabled = true;
} }
Sprite::Sprite(SDL_Rect rect, LTexture *texture, SDL_Renderer *renderer) Sprite::Sprite(SDL_Rect rect, Texture *texture, SDL_Renderer *renderer)
{ {
// Establece la posición X,Y del sprite // Establece la posición X,Y del sprite
x = rect.x; x = rect.x;
@@ -137,13 +137,13 @@ void Sprite::setSpriteClip(int x, int y, int w, int h)
} }
// Obten el valor de la variable // Obten el valor de la variable
LTexture *Sprite::getTexture() Texture *Sprite::getTexture()
{ {
return texture; return texture;
} }
// Establece el valor de la variable // Establece el valor de la variable
void Sprite::setTexture(LTexture *texture) void Sprite::setTexture(Texture *texture)
{ {
this->texture = texture; this->texture = texture;
} }

View File

@@ -1,7 +1,7 @@
#pragma once #pragma once
#include <SDL2/SDL.h> #include <SDL2/SDL.h>
#include "ltexture.h" #include "texture.h"
#ifndef SPRITE_H #ifndef SPRITE_H
#define SPRITE_H #define SPRITE_H
@@ -12,7 +12,7 @@ class Sprite
protected: protected:
// Objetos y punteros // Objetos y punteros
SDL_Renderer *renderer; // Puntero al renderizador de la ventana SDL_Renderer *renderer; // Puntero al renderizador de la ventana
LTexture *texture; // Textura donde estan todos los dibujos del sprite Texture *texture; // Textura donde estan todos los dibujos del sprite
// Variables // Variables
int x; // Posición en el eje X donde dibujar el sprite int x; // Posición en el eje X donde dibujar el sprite
@@ -24,8 +24,8 @@ protected:
public: public:
// Constructor // Constructor
Sprite(int x = 0, int y = 0, int w = 0, int h = 0, LTexture *texture = nullptr, SDL_Renderer *renderer = nullptr); Sprite(int x = 0, int y = 0, int w = 0, int h = 0, Texture *texture = nullptr, SDL_Renderer *renderer = nullptr);
Sprite(SDL_Rect rect, LTexture *texture, SDL_Renderer *renderer); Sprite(SDL_Rect rect, Texture *texture, SDL_Renderer *renderer);
// Destructor // Destructor
~Sprite(); ~Sprite();
@@ -70,10 +70,10 @@ public:
void setSpriteClip(int x, int y, int w, int h); void setSpriteClip(int x, int y, int w, int h);
// Obten el valor de la variable // Obten el valor de la variable
LTexture *getTexture(); Texture *getTexture();
// Establece el valor de la variable // Establece el valor de la variable
void setTexture(LTexture *texture); void setTexture(Texture *texture);
// Obten el valor de la variable // Obten el valor de la variable
SDL_Renderer *getRenderer(); SDL_Renderer *getRenderer();

View File

@@ -10,7 +10,7 @@ Text::Text(std::string bitmapFile, std::string textFile, SDL_Renderer *renderer)
initOffsetFromFile(textFile); initOffsetFromFile(textFile);
// Crea los objetos // Crea los objetos
texture = new LTexture(renderer, bitmapFile); texture = new Texture(renderer, bitmapFile);
sprite = new Sprite({0, 0, boxWidth, boxHeight}, texture, renderer); sprite = new Sprite({0, 0, boxWidth, boxHeight}, texture, renderer);
} }

View File

@@ -24,7 +24,7 @@ private:
// Objetos y punteros // Objetos y punteros
Sprite *sprite; // Objeto con los graficos para el texto Sprite *sprite; // Objeto con los graficos para el texto
LTexture *texture; // Textura con los bitmaps del texto Texture *texture; // Textura con los bitmaps del texto
// Variables // Variables
int boxWidth; // Anchura de la caja de cada caracter en el png int boxWidth; // Anchura de la caja de cada caracter en el png

View File

@@ -1,10 +1,10 @@
#include "ltexture.h" #include "texture.h"
#define STB_IMAGE_IMPLEMENTATION #define STB_IMAGE_IMPLEMENTATION
#include "stb_image.h" #include "stb_image.h"
// Constructor // Constructor
LTexture::LTexture(SDL_Renderer *renderer, std::string path) Texture::Texture(SDL_Renderer *renderer, std::string path)
{ {
// Copia punteros // Copia punteros
this->renderer = renderer; this->renderer = renderer;
@@ -23,14 +23,14 @@ LTexture::LTexture(SDL_Renderer *renderer, std::string path)
} }
// Destructor // Destructor
LTexture::~LTexture() Texture::~Texture()
{ {
// Libera memoria // Libera memoria
unload(); unload();
} }
// Carga una imagen desde un fichero // Carga una imagen desde un fichero
bool LTexture::loadFromFile(std::string path, SDL_Renderer *renderer) bool Texture::loadFromFile(std::string path, SDL_Renderer *renderer)
{ {
const std::string filename = path.substr(path.find_last_of("\\/") + 1); const std::string filename = path.substr(path.find_last_of("\\/") + 1);
int req_format = STBI_rgb_alpha; int req_format = STBI_rgb_alpha;
@@ -98,7 +98,7 @@ bool LTexture::loadFromFile(std::string path, SDL_Renderer *renderer)
} }
// Crea una textura en blanco // Crea una textura en blanco
bool LTexture::createBlank(SDL_Renderer *renderer, int width, int height, SDL_TextureAccess access) bool Texture::createBlank(SDL_Renderer *renderer, int width, int height, SDL_TextureAccess access)
{ {
// Crea una textura sin inicializar // Crea una textura sin inicializar
texture = SDL_CreateTexture(renderer, SDL_PIXELFORMAT_RGBA8888, access, width, height); texture = SDL_CreateTexture(renderer, SDL_PIXELFORMAT_RGBA8888, access, width, height);
@@ -116,7 +116,7 @@ bool LTexture::createBlank(SDL_Renderer *renderer, int width, int height, SDL_Te
} }
// Libera la memoria de la textura // Libera la memoria de la textura
void LTexture::unload() void Texture::unload()
{ {
// Libera la textura si existe // Libera la textura si existe
if (texture != nullptr) if (texture != nullptr)
@@ -129,25 +129,25 @@ void LTexture::unload()
} }
// Establece el color para la modulacion // Establece el color para la modulacion
void LTexture::setColor(Uint8 red, Uint8 green, Uint8 blue) void Texture::setColor(Uint8 red, Uint8 green, Uint8 blue)
{ {
SDL_SetTextureColorMod(texture, red, green, blue); SDL_SetTextureColorMod(texture, red, green, blue);
} }
// Establece el blending // Establece el blending
void LTexture::setBlendMode(SDL_BlendMode blending) void Texture::setBlendMode(SDL_BlendMode blending)
{ {
SDL_SetTextureBlendMode(texture, blending); SDL_SetTextureBlendMode(texture, blending);
} }
// Establece el alpha para la modulación // Establece el alpha para la modulación
void LTexture::setAlpha(Uint8 alpha) void Texture::setAlpha(Uint8 alpha)
{ {
SDL_SetTextureAlphaMod(texture, alpha); SDL_SetTextureAlphaMod(texture, alpha);
} }
// Renderiza la textura en un punto específico // Renderiza la textura en un punto específico
void LTexture::render(SDL_Renderer *renderer, int x, int y, SDL_Rect *clip, float zoomW, float zoomH, double angle, SDL_Point *center, SDL_RendererFlip flip) void Texture::render(SDL_Renderer *renderer, int x, int y, SDL_Rect *clip, float zoomW, float zoomH, double angle, SDL_Point *center, SDL_RendererFlip flip)
{ {
// Establece el destino de renderizado en la pantalla // Establece el destino de renderizado en la pantalla
SDL_Rect renderQuad = {x, y, width, height}; SDL_Rect renderQuad = {x, y, width, height};
@@ -167,25 +167,25 @@ void LTexture::render(SDL_Renderer *renderer, int x, int y, SDL_Rect *clip, floa
} }
// Establece la textura como objetivo de renderizado // Establece la textura como objetivo de renderizado
void LTexture::setAsRenderTarget(SDL_Renderer *renderer) void Texture::setAsRenderTarget(SDL_Renderer *renderer)
{ {
SDL_SetRenderTarget(renderer, texture); SDL_SetRenderTarget(renderer, texture);
} }
// Obtiene el ancho de la imagen // Obtiene el ancho de la imagen
int LTexture::getWidth() int Texture::getWidth()
{ {
return width; return width;
} }
// Obtiene el alto de la imagen // Obtiene el alto de la imagen
int LTexture::getHeight() int Texture::getHeight()
{ {
return height; return height;
} }
// Recarga la textura // Recarga la textura
bool LTexture::reLoad() bool Texture::reLoad()
{ {
return loadFromFile(path, renderer); return loadFromFile(path, renderer);
} }

View File

@@ -4,11 +4,10 @@
#include <stdio.h> #include <stdio.h>
#include <string> #include <string>
#ifndef LTEXTURE_H #ifndef TEXTURE_H
#define LTEXTURE_H #define TEXTURE_H
// Clase LTexture class Texture
class LTexture
{ {
private: private:
// Objetos y punteros // Objetos y punteros
@@ -22,10 +21,10 @@ private:
public: public:
// Constructor // Constructor
LTexture(SDL_Renderer *renderer, std::string path = ""); Texture(SDL_Renderer *renderer, std::string path = "");
// Destructor // Destructor
~LTexture(); ~Texture();
// Carga una imagen desde un fichero // Carga una imagen desde un fichero
bool loadFromFile(std::string path, SDL_Renderer *renderer); bool loadFromFile(std::string path, SDL_Renderer *renderer);

View File

@@ -1,7 +1,7 @@
#pragma once #pragma once
#include <SDL2/SDL.h> #include <SDL2/SDL.h>
#include "ltexture.h" #include "texture.h"
#include <string> #include <string>
#ifndef UTILS_H #ifndef UTILS_H

View File

@@ -15,7 +15,7 @@ Enemy::Enemy(enemy_t enemy)
renderer = enemy.renderer; renderer = enemy.renderer;
// Crea objetos // Crea objetos
texture = new LTexture(renderer, asset->get(enemy.tileset)); texture = new Texture(renderer, asset->get(enemy.tileset));
sprite = new AnimatedSprite(texture, renderer, asset->get(enemy.animation)); sprite = new AnimatedSprite(texture, renderer, asset->get(enemy.animation));
// Obten el resto de valores // Obten el resto de valores

View File

@@ -31,7 +31,7 @@ protected:
// Objetos y punteros // Objetos y punteros
AnimatedSprite *sprite; // Sprite del enemigo AnimatedSprite *sprite; // Sprite del enemigo
Asset *asset; // Objeto con la ruta a todos los ficheros de recursos Asset *asset; // Objeto con la ruta a todos los ficheros de recursos
LTexture *texture; // Textura con los graficos del enemigo Texture *texture; // Textura con los graficos del enemigo
SDL_Renderer *renderer; // El renderizador de la ventana SDL_Renderer *renderer; // El renderizador de la ventana
// Variables // Variables

View File

@@ -10,7 +10,7 @@ Intro::Intro(SDL_Renderer *renderer, Screen *screen, Asset *asset)
// Reserva memoria para los punteros // Reserva memoria para los punteros
eventHandler = new SDL_Event(); eventHandler = new SDL_Event();
texture = new LTexture(renderer, asset->get("intro.png")); texture = new Texture(renderer, asset->get("intro.png"));
sprite = new AnimatedSprite(texture, renderer, asset->get("intro.ani")); sprite = new AnimatedSprite(texture, renderer, asset->get("intro.ani"));
// Inicializa variables // Inicializa variables

View File

@@ -18,7 +18,7 @@ private:
// Objetos y punteros // Objetos y punteros
AnimatedSprite *sprite; // Sprite para dibujar los graficos de la intro AnimatedSprite *sprite; // Sprite para dibujar los graficos de la intro
Asset *asset; // Objeto con los ficheros de recurso Asset *asset; // Objeto con los ficheros de recurso
LTexture *texture; // Textura con los graficos Texture *texture; // Textura con los graficos
Screen *screen; // Objeto encargado de dibujar en pantalla Screen *screen; // Objeto encargado de dibujar en pantalla
SDL_Event *eventHandler; // Manejador de eventos SDL_Event *eventHandler; // Manejador de eventos
SDL_Renderer *renderer; // El renderizador de la ventana SDL_Renderer *renderer; // El renderizador de la ventana

View File

@@ -10,7 +10,7 @@ Logo::Logo(SDL_Renderer *renderer, Screen *screen, Asset *asset)
// Reserva memoria para los punteros // Reserva memoria para los punteros
eventHandler = new SDL_Event(); eventHandler = new SDL_Event();
texture = new LTexture(renderer, asset->get("logo.png")); texture = new Texture(renderer, asset->get("logo.png"));
sprite = new Sprite(0, 0, GAMECANVAS_WIDTH, GAMECANVAS_HEIGHT, texture, renderer); sprite = new Sprite(0, 0, GAMECANVAS_WIDTH, GAMECANVAS_HEIGHT, texture, renderer);
// Crea un backbuffer para el renderizador // Crea un backbuffer para el renderizador

View File

@@ -17,7 +17,7 @@ class Logo
private: private:
// Objetos y punteros // Objetos y punteros
Asset *asset; // Objeto con los ficheros de recursos Asset *asset; // Objeto con los ficheros de recursos
LTexture *texture; // Textura con los graficos Texture *texture; // Textura con los graficos
Screen *screen; // Objeto encargado de dibujar en pantalla Screen *screen; // Objeto encargado de dibujar en pantalla
SDL_Event *eventHandler; // Manejador de eventos SDL_Event *eventHandler; // Manejador de eventos
SDL_Renderer *renderer; // El renderizador de la ventana SDL_Renderer *renderer; // El renderizador de la ventana

View File

@@ -42,7 +42,7 @@ Map::Map(std::string file, SDL_Renderer *renderer, Asset *asset, ItemTracker *it
// Crea los objetos // Crea los objetos
loadMapFile(file); loadMapFile(file);
textureTile = new LTexture(renderer, asset->get(tileset)); textureTile = new Texture(renderer, asset->get(tileset));
tilesetWidth = textureTile->getWidth() / tileSize; tilesetWidth = textureTile->getWidth() / tileSize;
loadMapTileFile(asset->get(tileMapFile)); loadMapTileFile(asset->get(tileMapFile));

View File

@@ -37,7 +37,7 @@ private:
// Objetos y punteros // Objetos y punteros
Asset *asset; // Objeto con la ruta a todos los ficheros de recursos Asset *asset; // Objeto con la ruta a todos los ficheros de recursos
ItemTracker *itemTracker; // Objeto que gestiona los items que ya se han recogido ItemTracker *itemTracker; // Objeto que gestiona los items que ya se han recogido
LTexture *textureTile; // Textura con los graficos de los tiles habitación Texture *textureTile; // Textura con los graficos de los tiles habitación
SDL_Renderer *renderer; // El renderizador de la ventana SDL_Renderer *renderer; // El renderizador de la ventana
SDL_Texture *mapLayer0; // Textura para dibujar la capa 0 del mapa de la habitación SDL_Texture *mapLayer0; // Textura para dibujar la capa 0 del mapa de la habitación
SDL_Texture *mapLayer1; // Textura para dibujar la capa 1 del mapa de la habitación SDL_Texture *mapLayer1; // Textura para dibujar la capa 1 del mapa de la habitación

View File

@@ -14,7 +14,7 @@ Player::Player(player_t player, SDL_Renderer *renderer, Asset *asset, Input *inp
sound_death = JA_LoadSound(asset->get("sound_player_death.wav").c_str()); sound_death = JA_LoadSound(asset->get("sound_player_death.wav").c_str());
sound_coin = JA_LoadSound(asset->get("sound_player_coin.wav").c_str()); sound_coin = JA_LoadSound(asset->get("sound_player_coin.wav").c_str());
texture = new LTexture(renderer, asset->get("player.png")); texture = new Texture(renderer, asset->get("player.png"));
sprite = new AnimatedSprite(texture, renderer, asset->get("player.ani")); sprite = new AnimatedSprite(texture, renderer, asset->get("player.ani"));
w = 16; w = 16;

View File

@@ -52,7 +52,7 @@ private:
Asset *asset; // Objeto con la ruta a todos los ficheros de recursos Asset *asset; // Objeto con la ruta a todos los ficheros de recursos
Debug *debug; // Objeto para gestionar la información de debug Debug *debug; // Objeto para gestionar la información de debug
Input *input; // Objeto Input para gestionar las entradas Input *input; // Objeto Input para gestionar las entradas
LTexture *texture; // Textura con los graficos del jugador Texture *texture; // Textura con los graficos del jugador
Map *map; // Objeto con el mapa Map *map; // Objeto con el mapa
SDL_Renderer *renderer; // El renderizador de la ventana SDL_Renderer *renderer; // El renderizador de la ventana

View File

@@ -12,7 +12,7 @@ ScoreBoard::ScoreBoard(SDL_Renderer *renderer, Asset *asset, Input *input, board
this->input = input; this->input = input;
// Reserva memoria para los objetos // Reserva memoria para los objetos
texture = new LTexture(renderer, asset->get("player.png")); texture = new Texture(renderer, asset->get("player.png"));
sprite = new Sprite({0, 0, 0, 0}, texture, renderer); sprite = new Sprite({0, 0, 0, 0}, texture, renderer);
text = new Text(asset->get("smb2.png"), asset->get("smb2.txt"), renderer); text = new Text(asset->get("smb2.png"), asset->get("smb2.txt"), renderer);

View File

@@ -34,7 +34,7 @@ private:
Asset *asset; // Objeto con la ruta a todos los ficheros de recursos Asset *asset; // Objeto con la ruta a todos los ficheros de recursos
board_t *board; // Contiene las variables a mostrar en el marcador board_t *board; // Contiene las variables a mostrar en el marcador
Input *input; // Objeto Input para gestionar las entradas Input *input; // Objeto Input para gestionar las entradas
LTexture *texture; // Textura con los graficos Texture *texture; // Textura con los graficos
SDL_Renderer *renderer; // El renderizador de la ventana SDL_Renderer *renderer; // El renderizador de la ventana
SDL_Texture *layer; // Textura donde dibujar el marcador SDL_Texture *layer; // Textura donde dibujar el marcador
Sprite *sprite; // Sprite para mostrar los graficos Sprite *sprite; // Sprite para mostrar los graficos

View File

@@ -11,7 +11,7 @@ Title::Title(SDL_Renderer *renderer, Screen *screen, Asset *asset, Input *input)
// Reserva memoria para los punteros // Reserva memoria para los punteros
eventHandler = new SDL_Event(); eventHandler = new SDL_Event();
texture = new LTexture(renderer, asset->get("intro.png")); texture = new Texture(renderer, asset->get("intro.png"));
sprite = new AnimatedSprite(texture, renderer, asset->get("intro.ani")); sprite = new AnimatedSprite(texture, renderer, asset->get("intro.ani"));
sprite->setCurrentAnimation("menu"); sprite->setCurrentAnimation("menu");
text = new Text(asset->get("debug.png"), asset->get("debug.txt"), renderer); text = new Text(asset->get("debug.png"), asset->get("debug.txt"), renderer);

View File

@@ -25,7 +25,7 @@ private:
AnimatedSprite *sprite; // Sprite para dibujar los graficos de la intro AnimatedSprite *sprite; // Sprite para dibujar los graficos de la intro
Asset *asset; // Objeto con los ficheros de recurso Asset *asset; // Objeto con los ficheros de recurso
Input *input; // Objeto para gestionar las entradas Input *input; // Objeto para gestionar las entradas
LTexture *texture; // Textura con los graficos Texture *texture; // Textura con los graficos
Menu *menu; // Objeto para gestionar el menu del titulo Menu *menu; // Objeto para gestionar el menu del titulo
Screen *screen; // Objeto encargado de dibujar en pantalla Screen *screen; // Objeto encargado de dibujar en pantalla
SDL_Event *eventHandler; // Manejador de eventos SDL_Event *eventHandler; // Manejador de eventos