X-Git-Url: https://git.jsancho.org/?a=blobdiff_plain;f=Source%2FGame.h;h=6469091fa0f2890a41fae5a60a7cc658cbd2beb7;hb=31801560f92e99939f40ee49d9c279324db044bb;hp=eb07d20c8ce7b9ddb9ef49a8b51f3cc1fc0c9f9e;hpb=24004d6ab1e68faaf85ece11b566449997da5013;p=lugaru.git diff --git a/Source/Game.h b/Source/Game.h index eb07d20..6469091 100644 --- a/Source/Game.h +++ b/Source/Game.h @@ -135,11 +135,8 @@ extern bool scoreadded; extern int numchallengelevels; extern bool console; -extern char consoletext[15][256]; -extern int consolechars[15]; -extern bool chatting; -extern char displaytext[15][256]; -extern int displaychars[15]; +extern std::string consoletext[15]; +extern std::string displaytext[15]; extern float displaytime[15]; extern float displayblinkdelay; extern bool displayblink; @@ -155,7 +152,7 @@ extern float changedelay; extern bool waiting; extern Account* accountactive; -extern unsigned short crouchkey, jumpkey, forwardkey, chatkey, backkey, leftkey, rightkey, drawkey, throwkey, attackkey; +extern unsigned short crouchkey, jumpkey, forwardkey, backkey, leftkey, rightkey, drawkey, throwkey, attackkey; extern unsigned short consolekey; void newGame(); @@ -178,7 +175,7 @@ int checkcollide(XYZ startpoint, XYZ endpoint, int what); 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(); } @@ -190,7 +187,15 @@ 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" { @@ -200,8 +205,6 @@ 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; @@ -233,15 +236,12 @@ enum maptypes { enum pathtypes {wpkeepwalking, wppause}; -static const char *pathtypenames[] = {"keepwalking", "pause"}; +extern const char *pathtypenames[2]; enum editortypes {typeactive, typesitting, typesittingwall, typesleeping, typedead1, typedead2, typedead3, typedead4 }; -static const char *editortypenames[] = { - "active", "sitting", "sitting wall", "sleeping", - "dead1", "dead2", "dead3", "dead4" -}; +extern const char *editortypenames[8]; #endif