Actualizado a la última versión de ltexture
This commit is contained in:
@@ -47,24 +47,24 @@ Game::Game(int numPlayers, SDL_Renderer *renderer, Screen *screen, std::string *
|
|||||||
mSmartSprite[i] = new SmartSprite();
|
mSmartSprite[i] = new SmartSprite();
|
||||||
}
|
}
|
||||||
|
|
||||||
mTextureBalloon = new LTexture();
|
mTextureBalloon = new LTexture(mRenderer);
|
||||||
mTextureBullet = new LTexture();
|
mTextureBullet = new LTexture(mRenderer);
|
||||||
mTextureGameBG = new LTexture();
|
mTextureGameBG = new LTexture(mRenderer);
|
||||||
mTextureGameText = new LTexture();
|
mTextureGameText = new LTexture(mRenderer);
|
||||||
mTextureItems = new LTexture();
|
mTextureItems = new LTexture(mRenderer);
|
||||||
mTexturePlayer1Head = new LTexture();
|
mTexturePlayer1Head = new LTexture(mRenderer);
|
||||||
mTexturePlayer1Body = new LTexture();
|
mTexturePlayer1Body = new LTexture(mRenderer);
|
||||||
mTexturePlayer1Death = new LTexture();
|
mTexturePlayer1Death = new LTexture(mRenderer);
|
||||||
mTexturePlayer1Legs = new LTexture();
|
mTexturePlayer1Legs = new LTexture(mRenderer);
|
||||||
mTexturePlayer2Head = new LTexture();
|
mTexturePlayer2Head = new LTexture(mRenderer);
|
||||||
mTexturePlayer2Body = new LTexture();
|
mTexturePlayer2Body = new LTexture(mRenderer);
|
||||||
mTexturePlayer2Death = new LTexture();
|
mTexturePlayer2Death = new LTexture(mRenderer);
|
||||||
mTexturePlayer2Legs = new LTexture();
|
mTexturePlayer2Legs = new LTexture(mRenderer);
|
||||||
mTextureText = new LTexture();
|
mTextureText = new LTexture(mRenderer);
|
||||||
mTextureTextScoreBoard = new LTexture();
|
mTextureTextScoreBoard = new LTexture(mRenderer);
|
||||||
mTextureTextBig = new LTexture();
|
mTextureTextBig = new LTexture(mRenderer);
|
||||||
mTextureTextNokia2 = new LTexture();
|
mTextureTextNokia2 = new LTexture(mRenderer);
|
||||||
mTextureTextNokiaBig2 = new LTexture();
|
mTextureTextNokiaBig2 = new LTexture(mRenderer);
|
||||||
|
|
||||||
mText = new Text(mFileList[48], mTextureText, mRenderer);
|
mText = new Text(mFileList[48], mTextureText, mRenderer);
|
||||||
mTextScoreBoard = new Text(mFileList[46], mTextureTextScoreBoard, mRenderer);
|
mTextScoreBoard = new Text(mFileList[46], mTextureTextScoreBoard, mRenderer);
|
||||||
@@ -449,8 +449,11 @@ void Game::init()
|
|||||||
|
|
||||||
// Vector de jugadores
|
// Vector de jugadores
|
||||||
if (mNumPlayers == 1)
|
if (mNumPlayers == 1)
|
||||||
|
{
|
||||||
mPlayer[0]->init(PLAY_AREA_CENTER_X - 11, PLAY_AREA_BOTTOM - 24, mTexturePlayer1Legs, mTexturePlayer1Body, mTexturePlayer1Head, mTexturePlayer1Death, mRenderer);
|
mPlayer[0]->init(PLAY_AREA_CENTER_X - 11, PLAY_AREA_BOTTOM - 24, mTexturePlayer1Legs, mTexturePlayer1Body, mTexturePlayer1Head, mTexturePlayer1Death, mRenderer);
|
||||||
if (mNumPlayers == 2)
|
}
|
||||||
|
|
||||||
|
else if (mNumPlayers == 2)
|
||||||
{
|
{
|
||||||
mPlayer[0]->init((PLAY_AREA_CENTER_FIRST_QUARTER_X * ((0 * 2) + 1)) - 11, PLAY_AREA_BOTTOM - 24, mTexturePlayer1Legs, mTexturePlayer1Body, mTexturePlayer1Head, mTexturePlayer1Death, mRenderer);
|
mPlayer[0]->init((PLAY_AREA_CENTER_FIRST_QUARTER_X * ((0 * 2) + 1)) - 11, PLAY_AREA_BOTTOM - 24, mTexturePlayer1Legs, mTexturePlayer1Body, mTexturePlayer1Head, mTexturePlayer1Death, mRenderer);
|
||||||
mPlayer[1]->init((PLAY_AREA_CENTER_FIRST_QUARTER_X * ((1 * 2) + 1)) - 11, PLAY_AREA_BOTTOM - 24, mTexturePlayer2Legs, mTexturePlayer2Body, mTexturePlayer2Head, mTexturePlayer2Death, mRenderer);
|
mPlayer[1]->init((PLAY_AREA_CENTER_FIRST_QUARTER_X * ((1 * 2) + 1)) - 11, PLAY_AREA_BOTTOM - 24, mTexturePlayer2Legs, mTexturePlayer2Body, mTexturePlayer2Head, mTexturePlayer2Death, mRenderer);
|
||||||
@@ -3531,10 +3534,12 @@ void Game::initPaths()
|
|||||||
{
|
{
|
||||||
mStageBitmapPath[i] = (mSin[(int)((i * 1.8f) + 90)] * (distance) + centerPoint);
|
mStageBitmapPath[i] = (mSin[(int)((i * 1.8f) + 90)] * (distance) + centerPoint);
|
||||||
}
|
}
|
||||||
|
|
||||||
else if (i < secondPart)
|
else if (i < secondPart)
|
||||||
{
|
{
|
||||||
mStageBitmapPath[i] = (int)centerPoint;
|
mStageBitmapPath[i] = (int)centerPoint;
|
||||||
}
|
}
|
||||||
|
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
mStageBitmapPath[i] = (mSin[(int)(((i - 149) * 1.8f) + 90)] * (centerPoint + 17) - 17);
|
mStageBitmapPath[i] = (mSin[(int)(((i - 149) * 1.8f) + 90)] * (centerPoint + 17) - 17);
|
||||||
|
|||||||
@@ -13,8 +13,8 @@ Instructions::Instructions(SDL_Renderer *renderer, Screen *screen, std::string *
|
|||||||
|
|
||||||
// Reserva memoria para los punteros
|
// Reserva memoria para los punteros
|
||||||
mEventHandler = new SDL_Event();
|
mEventHandler = new SDL_Event();
|
||||||
mItemTexture = new LTexture();
|
mItemTexture = new LTexture(mRenderer);
|
||||||
mTextTexture = new LTexture();
|
mTextTexture = new LTexture(mRenderer);
|
||||||
mSprite = new Sprite();
|
mSprite = new Sprite();
|
||||||
mText = new Text(mFileList[48], mTextTexture, mRenderer);
|
mText = new Text(mFileList[48], mTextTexture, mRenderer);
|
||||||
|
|
||||||
|
|||||||
@@ -11,8 +11,8 @@ Intro::Intro(SDL_Renderer *renderer, Screen *screen, std::string *fileList, Lang
|
|||||||
|
|
||||||
// Reserva memoria para los punteros
|
// Reserva memoria para los punteros
|
||||||
mEventHandler = new SDL_Event();
|
mEventHandler = new SDL_Event();
|
||||||
mBitmapTexture = new LTexture();
|
mBitmapTexture = new LTexture(mRenderer);
|
||||||
mTextTexture = new LTexture();
|
mTextTexture = new LTexture(mRenderer);
|
||||||
mText = new Text(mFileList[52], mTextTexture, mRenderer);
|
mText = new Text(mFileList[52], mTextTexture, mRenderer);
|
||||||
|
|
||||||
for (int i = 0; i < INTRO_TOTAL_BITMAPS; i++)
|
for (int i = 0; i < INTRO_TOTAL_BITMAPS; i++)
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ Logo::Logo(SDL_Renderer *renderer, Screen *screen, std::string *fileList)
|
|||||||
|
|
||||||
// Reserva memoria para los punteros
|
// Reserva memoria para los punteros
|
||||||
mEventHandler = new SDL_Event();
|
mEventHandler = new SDL_Event();
|
||||||
mTexture = new LTexture();
|
mTexture = new LTexture(mRenderer);
|
||||||
mSprite = new Sprite();
|
mSprite = new Sprite();
|
||||||
|
|
||||||
// Crea un backbuffer para el renderizador
|
// Crea un backbuffer para el renderizador
|
||||||
|
|||||||
@@ -1,28 +1,41 @@
|
|||||||
#include "const.h"
|
|
||||||
#include "ltexture.h"
|
#include "ltexture.h"
|
||||||
#define STB_IMAGE_IMPLEMENTATION
|
#define STB_IMAGE_IMPLEMENTATION
|
||||||
#include "stb_image.h"
|
#include "stb_image.h"
|
||||||
|
|
||||||
LTexture::LTexture()
|
// Constructor
|
||||||
|
LTexture::LTexture(SDL_Renderer *renderer, std::string path)
|
||||||
{
|
{
|
||||||
// Initialize
|
// Copia punteros
|
||||||
mTexture = NULL;
|
this->renderer = renderer;
|
||||||
mWidth = 0;
|
this->path = path;
|
||||||
mHeight = 0;
|
|
||||||
|
// Inicializa
|
||||||
|
texture = nullptr;
|
||||||
|
width = 0;
|
||||||
|
height = 0;
|
||||||
|
|
||||||
|
// Carga el fichero en la textura
|
||||||
|
if (path != "")
|
||||||
|
{
|
||||||
|
loadFromFile(path, renderer);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Destructor
|
||||||
LTexture::~LTexture()
|
LTexture::~LTexture()
|
||||||
{
|
{
|
||||||
// Deallocate
|
// Libera memoria
|
||||||
unload();
|
unload();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Carga una imagen desde un fichero
|
||||||
bool LTexture::loadFromFile(std::string path, SDL_Renderer *renderer)
|
bool LTexture::loadFromFile(std::string path, SDL_Renderer *renderer)
|
||||||
{
|
{
|
||||||
int req_format = STBI_rgb_alpha;
|
int req_format = STBI_rgb_alpha;
|
||||||
int width, height, orig_format;
|
int width, height, orig_format;
|
||||||
unsigned char *data = stbi_load(path.c_str(), &width, &height, &orig_format, req_format);
|
unsigned char *data = stbi_load(path.c_str(), &width, &height, &orig_format, req_format);
|
||||||
if (data == NULL)
|
if (data == nullptr)
|
||||||
{
|
{
|
||||||
SDL_Log("Loading image failed: %s", stbi_failure_reason());
|
SDL_Log("Loading image failed: %s", stbi_failure_reason());
|
||||||
exit(1);
|
exit(1);
|
||||||
@@ -33,7 +46,7 @@ bool LTexture::loadFromFile(std::string path, SDL_Renderer *renderer)
|
|||||||
if (req_format == STBI_rgb)
|
if (req_format == STBI_rgb)
|
||||||
{
|
{
|
||||||
depth = 24;
|
depth = 24;
|
||||||
pitch = 3 * width; // 3 bytes per pixel * pixels per row
|
pitch = 3 * width; // 3 bytes por pixel * pixels per linea
|
||||||
pixel_format = SDL_PIXELFORMAT_RGB24;
|
pixel_format = SDL_PIXELFORMAT_RGB24;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@@ -43,100 +56,99 @@ bool LTexture::loadFromFile(std::string path, SDL_Renderer *renderer)
|
|||||||
pixel_format = SDL_PIXELFORMAT_RGBA32;
|
pixel_format = SDL_PIXELFORMAT_RGBA32;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Get rid of preexisting texture
|
// Limpia
|
||||||
unload();
|
unload();
|
||||||
|
|
||||||
// The final texture
|
// La textura final
|
||||||
SDL_Texture *newTexture = NULL;
|
SDL_Texture *newTexture = nullptr;
|
||||||
|
|
||||||
// Load image at specified path
|
// Carga la imagen desde una ruta específica
|
||||||
//SDL_Surface *loadedSurface = IMG_Load(path.c_str());
|
|
||||||
SDL_Surface *loadedSurface = SDL_CreateRGBSurfaceWithFormatFrom((void *)data, width, height, depth, pitch, pixel_format);
|
SDL_Surface *loadedSurface = SDL_CreateRGBSurfaceWithFormatFrom((void *)data, width, height, depth, pitch, pixel_format);
|
||||||
if (loadedSurface == NULL)
|
if (loadedSurface == nullptr)
|
||||||
{
|
{
|
||||||
printf("Unable to load image %s!\n", path.c_str());
|
printf("Unable to load image %s!\n", path.c_str());
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
// Color key image
|
// Crea la textura desde los pixels de la surface
|
||||||
//SDL_SetColorKey(loadedSurface, SDL_TRUE, SDL_MapRGB(loadedSurface->format, COLOR_KEY_R, COLOR_KEY_G, COLOR_KEY_B));
|
|
||||||
|
|
||||||
// Create texture from surface pixels
|
|
||||||
newTexture = SDL_CreateTextureFromSurface(renderer, loadedSurface);
|
newTexture = SDL_CreateTextureFromSurface(renderer, loadedSurface);
|
||||||
if (newTexture == NULL)
|
if (newTexture == nullptr)
|
||||||
{
|
{
|
||||||
printf("Unable to create texture from %s! SDL Error: %s\n", path.c_str(), SDL_GetError());
|
printf("Unable to create texture from %s! SDL Error: %s\n", path.c_str(), SDL_GetError());
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
// Get image dimensions
|
// Obtiene las dimensiones de la imagen
|
||||||
mWidth = loadedSurface->w;
|
this->width = loadedSurface->w;
|
||||||
mHeight = loadedSurface->h;
|
this->height = loadedSurface->h;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Get rid of old loaded surface
|
// Elimina la textura cargada
|
||||||
SDL_FreeSurface(loadedSurface);
|
SDL_FreeSurface(loadedSurface);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Return success
|
// Return success
|
||||||
mTexture = newTexture;
|
texture = newTexture;
|
||||||
return mTexture != NULL;
|
return texture != nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Crea una textura en blanco
|
||||||
bool LTexture::createBlank(SDL_Renderer *renderer, int width, int height, SDL_TextureAccess access)
|
bool LTexture::createBlank(SDL_Renderer *renderer, int width, int height, SDL_TextureAccess access)
|
||||||
{
|
{
|
||||||
// Create uninitialized texture
|
// Crea una textura sin inicializar
|
||||||
mTexture = SDL_CreateTexture(renderer, SDL_PIXELFORMAT_RGBA8888, access, width, height);
|
texture = SDL_CreateTexture(renderer, SDL_PIXELFORMAT_RGBA8888, access, width, height);
|
||||||
if (mTexture == NULL)
|
if (texture == nullptr)
|
||||||
{
|
{
|
||||||
printf("Unable to create blank texture! SDL Error: %s\n", SDL_GetError());
|
printf("Unable to create blank texture! SDL Error: %s\n", SDL_GetError());
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
mWidth = width;
|
this->width = width;
|
||||||
mHeight = height;
|
this->height = height;
|
||||||
}
|
}
|
||||||
|
|
||||||
return mTexture != NULL;
|
return texture != nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Libera la memoria de la textura
|
||||||
void LTexture::unload()
|
void LTexture::unload()
|
||||||
{
|
{
|
||||||
// Free texture if it exists
|
// Libera la textura si existe
|
||||||
if (mTexture != NULL)
|
if (texture != nullptr)
|
||||||
{
|
{
|
||||||
SDL_DestroyTexture(mTexture);
|
SDL_DestroyTexture(texture);
|
||||||
mTexture = NULL;
|
texture = nullptr;
|
||||||
mWidth = 0;
|
width = 0;
|
||||||
mHeight = 0;
|
height = 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Establece el color para la modulacion
|
||||||
void LTexture::setColor(Uint8 red, Uint8 green, Uint8 blue)
|
void LTexture::setColor(Uint8 red, Uint8 green, Uint8 blue)
|
||||||
{
|
{
|
||||||
// Modulate texture rgb
|
SDL_SetTextureColorMod(texture, red, green, blue);
|
||||||
SDL_SetTextureColorMod(mTexture, red, green, blue);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Establece el blending
|
||||||
void LTexture::setBlendMode(SDL_BlendMode blending)
|
void LTexture::setBlendMode(SDL_BlendMode blending)
|
||||||
{
|
{
|
||||||
// Set blending function
|
SDL_SetTextureBlendMode(texture, blending);
|
||||||
SDL_SetTextureBlendMode(mTexture, blending);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Establece el alpha para la modulación
|
||||||
void LTexture::setAlpha(Uint8 alpha)
|
void LTexture::setAlpha(Uint8 alpha)
|
||||||
{
|
{
|
||||||
// Modulate texture alpha
|
SDL_SetTextureAlphaMod(texture, alpha);
|
||||||
SDL_SetTextureAlphaMod(mTexture, 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 LTexture::render(SDL_Renderer *renderer, int x, int y, SDL_Rect *clip, float zoomW, float zoomH, double angle, SDL_Point *center, SDL_RendererFlip flip)
|
||||||
{
|
{
|
||||||
// Set rendering space and render to screen
|
// Establece el destini de renderizado en la pantalla
|
||||||
SDL_Rect renderQuad = {x, y, mWidth, mHeight};
|
SDL_Rect renderQuad = {x, y, width, height};
|
||||||
|
|
||||||
// Set clip rendering dimensions
|
// Obtiene las dimesiones del clip de renderizado
|
||||||
if (clip != NULL)
|
if (clip != nullptr)
|
||||||
{
|
{
|
||||||
renderQuad.w = clip->w;
|
renderQuad.w = clip->w;
|
||||||
renderQuad.h = clip->h;
|
renderQuad.h = clip->h;
|
||||||
@@ -145,22 +157,30 @@ void LTexture::render(SDL_Renderer *renderer, int x, int y, SDL_Rect *clip, floa
|
|||||||
renderQuad.w = renderQuad.w * zoomW;
|
renderQuad.w = renderQuad.w * zoomW;
|
||||||
renderQuad.h = renderQuad.h * zoomH;
|
renderQuad.h = renderQuad.h * zoomH;
|
||||||
|
|
||||||
// Render to screen
|
// Renderiza a pantalla
|
||||||
SDL_RenderCopyEx(renderer, mTexture, clip, &renderQuad, angle, center, flip);
|
SDL_RenderCopyEx(renderer, texture, clip, &renderQuad, angle, center, flip);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Establece la textura como objetivo de renderizado
|
||||||
void LTexture::setAsRenderTarget(SDL_Renderer *renderer)
|
void LTexture::setAsRenderTarget(SDL_Renderer *renderer)
|
||||||
{
|
{
|
||||||
// Make self render target
|
SDL_SetRenderTarget(renderer, texture);
|
||||||
SDL_SetRenderTarget(renderer, mTexture);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Obtiene el ancho de la imagen
|
||||||
int LTexture::getWidth()
|
int LTexture::getWidth()
|
||||||
{
|
{
|
||||||
return mWidth;
|
return width;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Obtiene el alto de la imagen
|
||||||
int LTexture::getHeight()
|
int LTexture::getHeight()
|
||||||
{
|
{
|
||||||
return mHeight;
|
return height;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Recarga la textura
|
||||||
|
bool LTexture::reLoad()
|
||||||
|
{
|
||||||
|
return loadFromFile(path, renderer);
|
||||||
|
}
|
||||||
@@ -7,61 +7,55 @@
|
|||||||
#ifndef LTEXTURE_H
|
#ifndef LTEXTURE_H
|
||||||
#define LTEXTURE_H
|
#define LTEXTURE_H
|
||||||
|
|
||||||
// Texture wrapper class
|
// Clase LTexture
|
||||||
class LTexture
|
class LTexture
|
||||||
{
|
{
|
||||||
public:
|
private:
|
||||||
// Initializes variables
|
SDL_Texture *texture; // La textura
|
||||||
LTexture();
|
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
|
||||||
|
|
||||||
// Deallocates memory
|
public:
|
||||||
|
// Constructor
|
||||||
|
LTexture(SDL_Renderer *renderer, std::string path = "");
|
||||||
|
|
||||||
|
// Destructor
|
||||||
~LTexture();
|
~LTexture();
|
||||||
|
|
||||||
// Loads image at specified path
|
// Carga una imagen desde un fichero
|
||||||
bool loadFromFile(std::string path, SDL_Renderer *renderer);
|
bool loadFromFile(std::string path, SDL_Renderer *renderer);
|
||||||
|
|
||||||
// Creates blank texture
|
// Crea una textura en blanco
|
||||||
bool createBlank(SDL_Renderer *renderer, int width, int height, SDL_TextureAccess = SDL_TEXTUREACCESS_STREAMING);
|
bool createBlank(SDL_Renderer *renderer, int width, int height, SDL_TextureAccess = SDL_TEXTUREACCESS_STREAMING);
|
||||||
|
|
||||||
// Deallocates texture
|
// Libera la memoria de la textura
|
||||||
void unload();
|
void unload();
|
||||||
|
|
||||||
// Set color modulation
|
// Establece el color para la modulacion
|
||||||
void setColor(Uint8 red, Uint8 green, Uint8 blue);
|
void setColor(Uint8 red, Uint8 green, Uint8 blue);
|
||||||
|
|
||||||
// Set blending
|
// Establece el blending
|
||||||
void setBlendMode(SDL_BlendMode blending);
|
void setBlendMode(SDL_BlendMode blending);
|
||||||
|
|
||||||
// Set alpha modulation
|
// Establece el alpha para la modulación
|
||||||
void setAlpha(Uint8 alpha);
|
void setAlpha(Uint8 alpha);
|
||||||
|
|
||||||
// Renders texture at given point
|
// Renderiza la textura en un punto específico
|
||||||
void render(SDL_Renderer *renderer, int x, int y, SDL_Rect *clip = NULL, float zoomW = 1, float zoomH = 1, double angle = 0.0, SDL_Point *center = NULL, SDL_RendererFlip flip = SDL_FLIP_NONE);
|
void render(SDL_Renderer *renderer, int x, int y, SDL_Rect *clip = nullptr, float zoomW = 1, float zoomH = 1, double angle = 0.0, SDL_Point *center = nullptr, SDL_RendererFlip flip = SDL_FLIP_NONE);
|
||||||
|
|
||||||
// Set self as render target
|
// Establece la textura como objetivo de renderizado
|
||||||
void setAsRenderTarget(SDL_Renderer *renderer);
|
void setAsRenderTarget(SDL_Renderer *renderer);
|
||||||
|
|
||||||
// Gets image dimensions
|
// Obtiene el ancho de la imagen
|
||||||
int getWidth();
|
int getWidth();
|
||||||
|
|
||||||
|
// Obtiene el alto de la imagen
|
||||||
int getHeight();
|
int getHeight();
|
||||||
|
|
||||||
// Pixel manipulators
|
// Recarga la textura
|
||||||
bool lockTexture();
|
bool reLoad();
|
||||||
bool unlockTexture();
|
|
||||||
void *getPixels();
|
|
||||||
void copyPixels(void *pixels);
|
|
||||||
int getPitch();
|
|
||||||
Uint32 getPixel32(unsigned int x, unsigned int y);
|
|
||||||
|
|
||||||
private:
|
|
||||||
// The actual hardware texture
|
|
||||||
SDL_Texture *mTexture;
|
|
||||||
void *mPixels;
|
|
||||||
int mPitch;
|
|
||||||
|
|
||||||
// Image dimensions
|
|
||||||
int mWidth;
|
|
||||||
int mHeight;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
@@ -15,10 +15,10 @@ Title::Title(SDL_Window *window, SDL_Renderer *renderer, Screen *screen, Input *
|
|||||||
// Reserva memoria para los punteros propios
|
// Reserva memoria para los punteros propios
|
||||||
mEventHandler = new SDL_Event();
|
mEventHandler = new SDL_Event();
|
||||||
mFade = new Fade(renderer);
|
mFade = new Fade(renderer);
|
||||||
mTitleTexture = new LTexture();
|
mTitleTexture = new LTexture(mRenderer);
|
||||||
mItemsTexture = new LTexture();
|
mItemsTexture = new LTexture(mRenderer);
|
||||||
mTextTexture = new LTexture();
|
mTextTexture = new LTexture(mRenderer);
|
||||||
mTextTexture2 = new LTexture();
|
mTextTexture2 = new LTexture(mRenderer);
|
||||||
mCoffeeBitmap = new SmartSprite();
|
mCoffeeBitmap = new SmartSprite();
|
||||||
mCrisisBitmap = new SmartSprite();
|
mCrisisBitmap = new SmartSprite();
|
||||||
mDustBitmapL = new AnimatedSprite();
|
mDustBitmapL = new AnimatedSprite();
|
||||||
|
|||||||
Reference in New Issue
Block a user