X-Git-Url: http://git.xonotic.org/?a=blobdiff_plain;f=common.h;h=bd715ed65eeb2cc9259b33bfabb116c5db959b6a;hb=f535fca6e58ecf5e8f85e160369ab2eb1bde3826;hp=228a133e572874b95059abc0cf268a83259c4167;hpb=66004173f5fb4d3ebed536eb5b4862caea471e95;p=xonotic%2Fdarkplaces.git diff --git a/common.h b/common.h index 228a133e..bd715ed6 100644 --- a/common.h +++ b/common.h @@ -134,7 +134,7 @@ typedef enum protocolversion_e PROTOCOL_QUAKEWORLD, ///< quakeworld protocol PROTOCOL_NEHAHRABJP, ///< same as QUAKEDP but with 16bit modelindex PROTOCOL_NEHAHRABJP2, ///< same as NEHAHRABJP but with 16bit soundindex - PROTOCOL_NEHAHRABJP3, ///< same as NEHAHRABJP2 but with some changes + PROTOCOL_NEHAHRABJP3 ///< same as NEHAHRABJP2 but with some changes } protocolversion_t; @@ -216,7 +216,13 @@ char *va(const char *format, ...) DP_FUNC_PRINTF(1); // snprintf and vsnprintf are NOT portable. Use their DP counterparts instead +#ifdef snprintf +# undef snprintf +#endif #define snprintf DO_NOT_USE_SNPRINTF__USE_DPSNPRINTF +#ifdef vsnprintf +# undef vsnprintf +#endif #define vsnprintf DO_NOT_USE_VSNPRINTF__USE_DPVSNPRINTF // dpsnprintf and dpvsnprintf @@ -245,6 +251,16 @@ extern int dpvsnprintf (char *buffer, size_t buffersize, const char *format, va_ extern struct cvar_s registered; extern struct cvar_s cmdline; +typedef enum userdirmode_e +{ + USERDIRMODE_NOHOME, // basedir only + USERDIRMODE_HOME, // Windows basedir, general POSIX (~/.) + USERDIRMODE_MYGAMES, // pre-Vista (My Documents/My Games/), general POSIX (~/.) + USERDIRMODE_SAVEDGAMES, // Vista (%USERPROFILE%/Saved Games/), OSX (~/Library/Application Support/), Linux (~/.config) + USERDIRMODE_COUNT +} +userdirmode_t; + typedef enum gamemode_e { GAME_NORMAL, @@ -252,6 +268,7 @@ typedef enum gamemode_e GAME_ROGUE, GAME_NEHAHRA, GAME_NEXUIZ, + GAME_XONOTIC, GAME_TRANSFUSION, GAME_GOODVSBAD2, GAME_TEU, @@ -273,6 +290,7 @@ typedef enum gamemode_e GAME_BLOODOMNICIDE, GAME_STEELSTORM, // added by motorsep GAME_STRAPBOMB, // added by motorsep for Urre + GAME_MOONHELM, GAME_COUNT } gamemode_t; @@ -285,6 +303,8 @@ extern const char *gamescreenshotname; extern const char *gameuserdirname; extern char com_modname[MAX_OSPATH]; +void COM_ChangeGameTypeForGameDirs(void); + void COM_ToLowerString (const char *in, char *out, size_t size_out); void COM_ToUpperString (const char *in, char *out, size_t size_out); int COM_StringBeginsWith(const char *s, const char *match); @@ -309,7 +329,7 @@ int matchpattern_with_separator(const char *in, const char *pattern, int caseins void stringlistinit(stringlist_t *list); void stringlistfreecontents(stringlist_t *list); void stringlistappend(stringlist_t *list, const char *text); -void stringlistsort(stringlist_t *list); +void stringlistsort(stringlist_t *list, qboolean uniq); void listdirectory(stringlist_t *list, const char *basepath, const char *path); char *SearchInfostring(const char *infostring, const char *key); @@ -351,5 +371,7 @@ void FindFraction(double val, int *num, int *denom, int denomMax); // decodes XPM file to XPM array (as if #include'd) char **XPM_DecodeString(const char *in); +size_t base64_encode(unsigned char *buf, size_t buflen, size_t outbuflen); + #endif