Rewrite on simdjson with a flat src and smack-style build
This commit is contained in:
1 parent
2d11cddc5e
commit
1a0db1abbd
178 files changed
+5935
-44757
No files matched your search
@@ -0,0 +1,40 @@
|
||||
#pragma once
|
||||
|
||||
#include "character.h"
|
||||
|
||||
class Play;
|
||||
|
||||
enum TextMode
|
||||
{
|
||||
TEXT_INTERRUPTIBLE,
|
||||
TEXT_UNINTERRUPTIBLE,
|
||||
TEXT_SEQUENCE
|
||||
};
|
||||
|
||||
// Plays out a dialogue entry a character at a time with its effects, then offers its choices or the entry it leads to.
|
||||
// A scene holds the game still until its last entry finishes.
|
||||
class Text
|
||||
{
|
||||
public:
|
||||
std::string idleOnEnd;
|
||||
Entry* entry = nullptr;
|
||||
float animationTimePrevious = 0;
|
||||
float life = 0;
|
||||
int delay = 0;
|
||||
int delayBase = 0;
|
||||
int index = 0;
|
||||
int tick = 0;
|
||||
bool isAnimationStarted = false;
|
||||
bool isBlipQueued = false;
|
||||
bool isFinished = false;
|
||||
bool isScene = false;
|
||||
bool isStarted = false;
|
||||
|
||||
void set(Play& play, Entry* next, TextMode mode = TEXT_INTERRUPTIBLE, const std::string& onEnd = "");
|
||||
void update(Play& play, Vec2 screenSize);
|
||||
void clear(Play& play);
|
||||
bool is_interruptible();
|
||||
|
||||
private:
|
||||
void effects_apply(Play& play, int at);
|
||||
};
|
||||
Reference in new issue
Block a user