extern int numchallengelevels;
extern bool console;
-extern char consoletext[15][256];
-extern int consolechars[15];
+extern std::string consoletext[15];
extern bool chatting;
-extern char displaytext[15][256];
-extern int displaychars[15];
+extern std::string displaytext[15];
extern float displaytime[15];
extern float displayblinkdelay;
extern bool displayblink;
void fireSound(int sound = fireendsound);
void setKeySelected();
-void inputText(char* str, int* charselected, int* nb_chars);
+void inputText(std::string& str, int* charselected);
void flash();
}
static __forceinline void swap_gl_buffers(void)
{
- SDL_GL_SwapBuffers();
+ extern SDL_Window *sdlwindow;
+ SDL_GL_SwapWindow(sdlwindow);
+
+ // try to limit this to 60fps, even if vsync fails.
+ Uint32 now;
+ static Uint32 frameticks = 0;
+ const Uint32 endticks = (frameticks + 16);
+ while ((now = SDL_GetTicks()) < endticks) { /* spin. */ }
+ frameticks = now;
}
extern "C" {
#define STUBBED(x) { static bool seen = false; if (!seen) { seen = true; fprintf(stderr, "STUBBED: %s at %s:%d\n", x, __FILE__, __LINE__); } }
//#define STUBBED(x)
-extern int numplayers;
-
extern int numdialogues;
const int max_dialogues = 20;
const int max_dialoguelength = 20;