Cambiado el nombre de la clase LTexture a Texture

This commit is contained in:
2022-10-19 08:56:13 +02:00
parent ddd54fdd3f
commit 8160ddc14a
27 changed files with 64 additions and 62 deletions

View File

@@ -1,7 +1,7 @@
#include "animatedsprite.h"
// 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
setTexture(texture);

View File

@@ -30,7 +30,7 @@ private:
public:
// 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
~AnimatedSprite();

View File

@@ -2,7 +2,7 @@
#include "movingsprite.h"
// 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
this->texture = texture;

View File

@@ -35,7 +35,7 @@ protected:
public:
// 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
~MovingSprite();

View File

@@ -1,7 +1,7 @@
#include "sprite.h"
// 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
this->x = x;
@@ -24,7 +24,7 @@ Sprite::Sprite(int x, int y, int w, int h, LTexture *texture, SDL_Renderer *rend
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
x = rect.x;
@@ -149,13 +149,13 @@ void Sprite::setSpriteClip(int x, int y, int w, int h)
}
// Obten el valor de la variable
LTexture *Sprite::getTexture()
Texture *Sprite::getTexture()
{
return texture;
}
// Establece el valor de la variable
void Sprite::setTexture(LTexture *texture)
void Sprite::setTexture(Texture *texture)
{
this->texture = texture;
}

View File

@@ -1,7 +1,7 @@
#pragma once
#include <SDL2/SDL.h>
#include "ltexture.h"
#include "texture.h"
#ifndef SPRITE_H
#define SPRITE_H
@@ -16,15 +16,15 @@ protected:
int h; // Alto del sprite
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
SDL_Rect spriteClip; // Rectangulo de origen de la textura que se dibujará en pantalla
bool enabled; // Indica si el sprite esta habilitado
public:
// Constructor
Sprite(int x = 0, int y = 0, int w = 0, int h = 0, LTexture *texture = nullptr, SDL_Renderer *renderer = nullptr);
Sprite(SDL_Rect rect, LTexture *texture, SDL_Renderer *renderer);
Sprite(int x = 0, int y = 0, int w = 0, int h = 0, Texture *texture = nullptr, SDL_Renderer *renderer = nullptr);
Sprite(SDL_Rect rect, Texture *texture, SDL_Renderer *renderer);
// Destructor
~Sprite();
@@ -75,10 +75,10 @@ public:
void setSpriteClip(int x, int y, int w, int h);
// Obten el valor de la variable
LTexture *getTexture();
Texture *getTexture();
// Establece el valor de la variable
void setTexture(LTexture *texture);
void setTexture(Texture *texture);
// Establece el valor de la variable
void setRenderer(SDL_Renderer *renderer);

View File

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

View File

@@ -24,7 +24,7 @@ private:
// Objetos
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
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
#include "stb_image.h"
// Constructor
LTexture::LTexture(SDL_Renderer *renderer, std::string path)
Texture::Texture(SDL_Renderer *renderer, std::string path)
{
// Copia punteros
this->renderer = renderer;
@@ -23,14 +23,14 @@ LTexture::LTexture(SDL_Renderer *renderer, std::string path)
}
// Destructor
LTexture::~LTexture()
Texture::~Texture()
{
// Libera memoria
unload();
}
// 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);
int req_format = STBI_rgb_alpha;
@@ -98,7 +98,7 @@ bool LTexture::loadFromFile(std::string path, SDL_Renderer *renderer)
}
// 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
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
void LTexture::unload()
void Texture::unload()
{
// Libera la textura si existe
if (texture != nullptr)
@@ -129,25 +129,25 @@ void LTexture::unload()
}
// 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);
}
// Establece el blending
void LTexture::setBlendMode(SDL_BlendMode blending)
void Texture::setBlendMode(SDL_BlendMode blending)
{
SDL_SetTextureBlendMode(texture, blending);
}
// Establece el alpha para la modulación
void LTexture::setAlpha(Uint8 alpha)
void Texture::setAlpha(Uint8 alpha)
{
SDL_SetTextureAlphaMod(texture, alpha);
}
// 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
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
void LTexture::setAsRenderTarget(SDL_Renderer *renderer)
void Texture::setAsRenderTarget(SDL_Renderer *renderer)
{
SDL_SetRenderTarget(renderer, texture);
}
// Obtiene el ancho de la imagen
int LTexture::getWidth()
int Texture::getWidth()
{
return width;
}
// Obtiene el alto de la imagen
int LTexture::getHeight()
int Texture::getHeight()
{
return height;
}
// Recarga la textura
bool LTexture::reLoad()
bool Texture::reLoad()
{
return loadFromFile(path, renderer);
}

View File

@@ -4,25 +4,27 @@
#include <stdio.h>
#include <string>
#ifndef LTEXTURE_H
#define LTEXTURE_H
#ifndef TEXTURE_H
#define TEXTURE_H
// Clase LTexture
class LTexture
class Texture
{
private:
// Objetos y punteros
SDL_Texture *texture; // La textura
SDL_Renderer *renderer; // Renderizador donde dibujar la textura
int width; // Ancho de la imagen
int height; // Alto de la imagen
std::string path; // Ruta de la imagen de la textura
// Variables
int width; // Ancho de la imagen
int height; // Alto de la imagen
std::string path; // Ruta de la imagen de la textura
public:
// Constructor
LTexture(SDL_Renderer *renderer, std::string path = "");
Texture(SDL_Renderer *renderer, std::string path = "");
// Destructor
~LTexture();
~Texture();
// Carga una imagen desde un fichero
bool loadFromFile(std::string path, SDL_Renderer *renderer);

View File

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

View File

@@ -10,7 +10,7 @@ Enemy::Enemy(enemy_t enemy)
renderer = enemy.renderer;
// 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));
// Obten el resto de valores

View File

@@ -48,7 +48,7 @@ struct enemy_t
class Enemy
{
private:
LTexture *texture; // Textura con los graficos del enemigo
Texture *texture; // Textura con los graficos del enemigo
AnimatedSprite *sprite; // Sprite del enemigo
SDL_Renderer *renderer; // El renderizador de la ventana

View File

@@ -10,8 +10,8 @@ Intro::Intro(SDL_Renderer *renderer, Screen *screen, Asset *asset)
// Reserva memoria para los punteros
eventHandler = new SDL_Event();
loadingScreenTexture1 = new LTexture(renderer, asset->get("loading_screen1.png"));
loadingScreenTexture2 = new LTexture(renderer, asset->get("loading_screen2.png"));
loadingScreenTexture1 = new Texture(renderer, asset->get("loading_screen1.png"));
loadingScreenTexture2 = new Texture(renderer, asset->get("loading_screen2.png"));
sprite1 = new Sprite(0, 0, loadingScreenTexture1->getWidth(), loadingScreenTexture1->getHeight(), loadingScreenTexture1, renderer);
sprite2 = new Sprite(0, 0, loadingScreenTexture2->getWidth(), loadingScreenTexture2->getHeight(), loadingScreenTexture2, renderer);
loadingSound1 = JA_LoadMusic(asset->get("loading_sound1.ogg").c_str());

View File

@@ -22,8 +22,8 @@ private:
SDL_Renderer *renderer; // El renderizador de la ventana
Screen *screen; // Objeto encargado de dibujar en pantalla
Asset *asset; // Objeto con los ficheros de recursos
LTexture *loadingScreenTexture1; // Textura con la pantalla de carga en blanco y negro
LTexture *loadingScreenTexture2; // Textura con la pantalla de carga en color
Texture *loadingScreenTexture1; // Textura con la pantalla de carga en blanco y negro
Texture *loadingScreenTexture2; // Textura con la pantalla de carga en color
SDL_Event *eventHandler; // Manejador de eventos
Sprite *sprite1; // Sprite para manejar la textura loadingScreenTexture1
Sprite *sprite2; // Sprite para manejar la textura loadingScreenTexture2

View File

@@ -12,7 +12,7 @@ Item::Item(item_t item)
renderer = item.renderer;
// Crea objetos
texture = new LTexture(renderer, asset->get(item.tileset));
texture = new Texture(renderer, asset->get(item.tileset));
sprite = new Sprite(item.x, item.y, itemSize, itemSize, texture, renderer);
// Inicia variables

View File

@@ -32,7 +32,7 @@ struct item_t
class Item
{
private:
LTexture *texture; // Textura con los graficos del objeto
Texture *texture; // Textura con los graficos del objeto
Sprite *sprite; // Sprite del objeto
SDL_Renderer *renderer; // El renderizador de la ventana
Asset *asset; // Objeto con la ruta a todos los ficheros de recursos

View File

@@ -10,8 +10,8 @@ Logo::Logo(SDL_Renderer *renderer, Screen *screen, Asset *asset, int subsection)
// Reserva memoria para los punteros
eventHandler = new SDL_Event();
texture = new LTexture(renderer, asset->get("jailgames.png"));
texture2 = new LTexture(renderer, asset->get("since_1998.png"));
texture = new Texture(renderer, asset->get("jailgames.png"));
texture2 = new Texture(renderer, asset->get("since_1998.png"));
sprite2 = new Sprite((256 - texture2->getWidth()) / 2, 83 + texture->getHeight() + 5, texture2->getWidth(), texture2->getHeight(), texture2, renderer);
sprite2->setSpriteClip(0, 0, texture2->getWidth(), texture2->getHeight());
texture2->setColor(0, 0, 0);

View File

@@ -19,8 +19,8 @@ private:
SDL_Renderer *renderer; // El renderizador de la ventana
Screen *screen; // Objeto encargado de dibujar en pantalla
Asset *asset; // Objeto con los ficheros de recursos
LTexture *texture; // Textura con los graficos "JAILGAMES"
LTexture *texture2; // Textura con los graficos "Since 1998"
Texture *texture; // Textura con los graficos "JAILGAMES"
Texture *texture2; // Textura con los graficos "Since 1998"
SDL_Event *eventHandler; // Manejador de eventos
std::vector<Sprite *> sprite; // Vector con los sprites de cada linea que forman el bitmap JAILGAMES
Sprite *sprite2; // Sprite para manejar la textura2

View File

@@ -13,7 +13,7 @@ Player::Player(player_t ini, std::string tileset, std::string animation, SDL_Ren
this->debug = debug;
// Crea objetos
texture = new LTexture(renderer, asset->get(tileset));
texture = new Texture(renderer, asset->get(tileset));
sprite = new AnimatedSprite(texture, renderer, animation);
// Inicializa variables

View File

@@ -46,7 +46,7 @@ public:
Input *input; // Objeto para gestionar la entrada
Asset *asset; // Objeto con la ruta a todos los ficheros de recursos
Room *room; // Objeto encargado de gestionar cada habitación del juego
LTexture *texture; // Textura con los graficos del enemigo
Texture *texture; // Textura con los graficos del enemigo
AnimatedSprite *sprite; // Sprite del enemigo
Debug *debug; // Objeto para gestionar la información de debug
color_t color; // Color del jugador

View File

@@ -26,7 +26,7 @@ Room::Room(std::string file, SDL_Renderer *renderer, Screen *screen, Asset *asse
// Crea los objetos
loadMapFile(file);
texture = new LTexture(renderer, asset->get(tileset));
texture = new Texture(renderer, asset->get(tileset));
tilesetWidth = texture->getWidth() / tileSize;
itemSound = JA_LoadSound(asset->get("item.wav").c_str());

View File

@@ -52,7 +52,7 @@ private:
std::vector<int> tilemap; // Indice de los tiles a dibujar en la habitación
std::vector<Enemy *> enemies; // Listado con los enemigos de la habitación
std::vector<Item *> items; // Listado con los items que hay en la habitación
LTexture *texture; // Textura con los graficos de la habitación
Texture *texture; // Textura con los graficos de la habitación
Asset *asset; // Objeto con la ruta a todos los ficheros de recursos
Screen *screen; // Objeto encargado de dibujar en pantalla
ItemTracker *itemTracker; // Lleva el control de los objetos recogidos

View File

@@ -11,8 +11,8 @@ ScoreBoard::ScoreBoard(SDL_Renderer *renderer, Asset *asset, board_t *board)
this->board = board;
// Reserva memoria para los objetos
playerTexture = new LTexture(renderer, asset->get("player.png"));
itemTexture = new LTexture(renderer, asset->get("items.png"));
playerTexture = new Texture(renderer, asset->get("player.png"));
itemTexture = new Texture(renderer, asset->get("items.png"));
sprite = new AnimatedSprite(playerTexture, renderer, asset->get("player.ani"));
sprite->setCurrentAnimation("walk_menu");
text = new Text(asset->get("smb2.png"), asset->get("smb2.txt"), renderer);

View File

@@ -33,7 +33,7 @@ private:
std::string separator;
};
LTexture *playerTexture; // Textura con los graficos para las vidas
Texture *playerTexture; // Textura con los graficos para las vidas
AnimatedSprite *sprite; // Sprite para mostrar las vidas en el marcador
SDL_Renderer *renderer; // El renderizador de la ventana
Asset *asset; // Objeto con la ruta a todos los ficheros de recursos
@@ -45,7 +45,7 @@ private:
Uint32 timePaused; // Milisegundos que ha estado el marcador en pausa
Uint32 totalTimePaused; // Tiempo acumulado en pausa
clock_t clock; // Contiene las horas, minutos y segundos transcurridos desde el inicio de la partida
LTexture *itemTexture; // Textura con los graficos para las vidas
Texture *itemTexture; // Textura con los graficos para las vidas
board_t *board; // Contiene las variables a mostrar en el marcador
// Obtiene el tiempo transcurrido de partida

View File

@@ -10,7 +10,7 @@ Title::Title(SDL_Renderer *renderer, Screen *screen, Asset *asset)
// Reserva memoria para los punteros
eventHandler = new SDL_Event();
texture = new LTexture(renderer, asset->get("loading_screen2.png"));
texture = new Texture(renderer, asset->get("loading_screen2.png"));
sprite = new Sprite(0, 0, texture->getWidth(), texture->getHeight(), texture, renderer);
text = new Text(asset->get("smb2.png"), asset->get("smb2.txt"), renderer);

View File

@@ -28,7 +28,7 @@ private:
Screen *screen; // Objeto encargado de dibujar en pantalla
Asset *asset; // Objeto con los ficheros de recursos
SDL_Event *eventHandler; // Manejador de eventos
LTexture *texture; // Textura con los graficos
Texture *texture; // Textura con los graficos
Sprite *sprite; // Sprite para manejar la textura
Text *text; // Objeto para escribir texto en pantalla
int counter; // Contador