2012-06-03 16:09:33 +00:00
|
|
|
//
|
|
|
|
// Definitions of common game-only data structures/functions
|
|
|
|
// (and declarations of data appearing in both)
|
|
|
|
// for EDuke32 and Mapster32
|
|
|
|
//
|
|
|
|
|
|
|
|
#ifndef EDUKE32_COMMON_GAME_H_
|
|
|
|
#define EDUKE32_COMMON_GAME_H_
|
|
|
|
|
|
|
|
#define GAMEFLAG_DUKE 0x00000001
|
|
|
|
#define GAMEFLAG_NAM 0x00000002
|
|
|
|
#define GAMEFLAG_NAPALM 0x00000004
|
|
|
|
#define GAMEFLAG_WW2GI 0x00000008
|
2013-04-08 18:30:39 +00:00
|
|
|
#define GAMEFLAG_ADDON 0x00000010
|
2013-05-23 18:28:04 +00:00
|
|
|
#define GAMEFLAG_SHAREWARE 0x00000020
|
|
|
|
#define GAMEFLAG_DUKEBETA 0x00000060 // includes 0x20 since it's a shareware beta
|
2012-06-03 16:09:33 +00:00
|
|
|
|
|
|
|
extern int32_t g_gameType;
|
|
|
|
|
|
|
|
#define DUKE (g_gameType & GAMEFLAG_DUKE)
|
|
|
|
#define NAM (g_gameType & GAMEFLAG_NAM)
|
|
|
|
#define NAPALM (g_gameType & GAMEFLAG_NAPALM)
|
|
|
|
#define WW2GI (g_gameType & GAMEFLAG_WW2GI)
|
2013-05-23 18:28:04 +00:00
|
|
|
#define SHAREWARE (g_gameType & GAMEFLAG_SHAREWARE)
|
2013-06-14 21:29:14 +00:00
|
|
|
#define DUKEBETA ((g_gameType & GAMEFLAG_DUKEBETA) == GAMEFLAG_DUKEBETA)
|
2012-06-03 16:09:33 +00:00
|
|
|
|
|
|
|
enum Games_t {
|
|
|
|
GAME_DUKE = 0,
|
|
|
|
GAME_NAM,
|
|
|
|
GAME_NAPALM,
|
|
|
|
GAME_WW2GI,
|
|
|
|
GAMECOUNT
|
|
|
|
};
|
|
|
|
|
2013-04-05 07:48:20 +00:00
|
|
|
enum instpath_t {
|
|
|
|
INSTPATH_STEAM,
|
|
|
|
INSTPATH_GOG,
|
|
|
|
NUMINSTPATHS
|
|
|
|
};
|
|
|
|
|
2012-07-01 22:11:33 +00:00
|
|
|
extern const char *defaultgamegrp[GAMECOUNT];
|
|
|
|
extern const char *defaultdeffilename[GAMECOUNT];
|
|
|
|
extern const char *defaultconfilename;
|
|
|
|
extern const char *defaultgameconfilename[GAMECOUNT];
|
2012-06-03 16:09:33 +00:00
|
|
|
|
|
|
|
extern char *g_grpNamePtr;
|
|
|
|
extern char *g_scriptNamePtr;
|
|
|
|
|
2012-07-01 22:11:33 +00:00
|
|
|
extern const char *G_DefaultGrpFile(void);
|
|
|
|
extern const char *G_GrpFile(void);
|
2012-06-03 16:09:33 +00:00
|
|
|
|
2012-07-01 22:11:33 +00:00
|
|
|
extern const char *G_DefaultConFile(void);
|
|
|
|
extern const char *G_ConFile(void);
|
2012-06-03 16:09:33 +00:00
|
|
|
|
|
|
|
extern void clearGrpNamePtr(void);
|
|
|
|
extern void clearDefNamePtr(void);
|
|
|
|
extern void clearScriptNamePtr(void);
|
|
|
|
|
2012-11-25 04:25:31 +00:00
|
|
|
//////////
|
|
|
|
|
2013-08-04 20:37:45 +00:00
|
|
|
extern void G_MultiPskyInit(int32_t MOONSKY1__DYN, int32_t BIGORBIT1__DYN, int32_t LA__DYN);
|
2012-11-25 04:25:31 +00:00
|
|
|
|
2013-03-21 09:48:21 +00:00
|
|
|
//////////
|
|
|
|
|
2013-03-21 09:49:12 +00:00
|
|
|
extern void G_ExtPreInit(void);
|
|
|
|
|
2013-03-21 09:48:21 +00:00
|
|
|
extern void G_AddSearchPaths(void);
|
2013-04-08 18:30:39 +00:00
|
|
|
extern void G_CleanupSearchPaths(void);
|
2013-03-21 09:48:21 +00:00
|
|
|
|
2013-04-05 07:48:20 +00:00
|
|
|
extern const char * G_GetInstallPath(int32_t insttype);
|
|
|
|
|
2012-06-03 16:09:33 +00:00
|
|
|
#endif
|