1
0
mirror of https://github.com/TerryCavanagh/VVVVVV.git synced 2024-06-25 05:58:30 +02:00
VVVVVV/desktop_version/src/Textbox.h
AllyTally 76ea4488af Initial implementation of textbox sprites
This commit adds a system for displaying sprites in textboxes, meant to
replace the hardcoded system in the main game. This does not support
levelcomplete.png and gamecomplete.png yet, which will most likely just
be special cases.
2023-11-19 15:07:25 -08:00

71 lines
1.0 KiB
C++

#ifndef TEXTBOX_H
#define TEXTBOX_H
#include <stdint.h>
#include <string>
#include <vector>
struct TextboxSprite
{
int x;
int y;
int col;
int tile;
};
class textboxclass
{
public:
textboxclass(void);
void addsprite(int x, int y, int tile, int col);
void centerx(void);
void centery(void);
void adjust(void);
void initcol(int rr, int gg, int bb);
void update(void);
void remove(void);
void removefast(void);
void resize(void);
void addline(const std::string& t);
void pad(size_t left_pad, size_t right_pad);
void padtowidth(size_t new_w);
void centertext(void);
public:
//Fundamentals
std::vector<std::string> lines;
int xp, yp, w, h;
int r,g,b;
int timer;
float tl;
float prev_tl;
int tm;
/* Whether to flip text box y-position in Flip Mode. */
bool flipme;
int rand;
bool large;
uint32_t print_flags;
bool fill_buttons;
std::vector<TextboxSprite> sprites;
};
#endif /* TEXTBOX_H */