1
0
mirror of https://github.com/TerryCavanagh/VVVVVV.git synced 2024-06-01 10:33:32 +02:00
VVVVVV/desktop_version/src/Textbox.h
Misa 43cf3c4f19 Remove allowspecial, replace with opaqueness check
When I added the over-30-FPS mode, I kept running into this problem
where the special images of text boxes would render during the
deltaframes of fade-in/fade-out animations, even though they shouldn't
be. So I simply added a flag to the text box that enables drawing these
special images.

However, this doesn't solve the problem fully, and there's still a small
chance that a special-image text box could draw another special image
during its deltaframes. It's really rare and you have to have your
deltaframe luck juuuuuust right (or you could use libTAS, probably), but
it helps to be in 40% slowmode and have a high refresh rate (which, if
it isn't a multiple of 30, you should disable VSync, too, in order to
not have a low framerate).

So instead, special images will only be drawn if the text box has fully
faded in completely. That solves the issue completely.
2020-08-06 22:12:15 -04:00

51 lines
665 B
C++

#ifndef TEXTBOX_H
#define TEXTBOX_H
#include <SDL.h>
#include <string>
#include <vector>
class textboxclass
{
public:
textboxclass();
void centerx();
void centery();
void adjust();
void initcol(int rr, int gg, int bb);
void setcol(int rr, int gg, int bb);
void update();
void remove();
void removefast();
void resize();
void addline(std::string t);
public:
//Fundamentals
std::vector<std::string> line;
int xp, yp, lw, w, h;
int x,y;
int r,g,b;
int tr,tg,tb;
SDL_Rect textrect;
int timer;
float tl;
float prev_tl;
int tm;
int max;
};
#endif /* TEXTBOX_H */