Files
volcano_2022/source/text2.h

76 lines
1.9 KiB
C++

#pragma once
#include "sprite.h"
#include "text.h"
#ifndef TEXT2_H
#define TEXT2_H
// Clase texto. Pinta texto en pantalla a partir de un bitmap
class Text2 : public Text
{
public:
// Constructor
Text2();
// Destructor
~Text2();
// Inicializador
void init(LTexture *texture, SDL_Renderer *renderer, Uint8 height);
// Establece el valor de la variable
void setPosX(int value);
// Establece el valor de la variable
void setPosY(int value);
// Establece el valor de la variable
void setKerning(int value);
// Establece el valor de la variable
void setCaption(std::string text);
// Establece el valor de la variable
void setSpeed(Uint16 value);
// Establece el valor de la variable
void setEnabled(bool value);
// Obtiene el valor de la variable
bool IsEnabled();
// Establece el valor de la variable
void setEnabledCounter(Uint16 value);
// Obtiene el valor de la variable
Uint16 getEnabledCounter();
// Actualiza todas las variables del objeto
void update();
// Dibuja el objeto en pantalla
void render();
// Centra la cadena de texto respecto a un punto X
void center(int x);
// Establece el valor de la variable mId
void setId(int id);
private:
bool mCompleted; // Indica si se ha escrito todo el texto
bool mEnabled; // Indica si el objeto está habilitado
int mId; // Identificador
int mKerning; // Espacio entre caracteres
int mPosX; // Posicion en el eje X donde empezar a escribir el texto
int mPosY; // Posicion en el eje Y donde empezar a escribir el texto
std::string mCaption; // Texto para escribir
Uint16 mCounter; // Temporizador de escritura para cada caracter
Uint16 mEnabledCounter; // Contador para deshabilitar el objeto
Uint16 mIndex; // Indice a la posición dentro de la cadena de texto que se está escribiendo
Uint16 mLenght; // Longitud de la cadena a escribir
Uint16 mSpeed; // Velocidad de escritura
};
#endif