1 //-------------------------------------------------------------------------
2 /*
3 Copyright (C) 1997, 2005 - 3D Realms Entertainment
4 
5 This file is part of Shadow Warrior version 1.2
6 
7 Shadow Warrior is free software; you can redistribute it and/or
8 modify it under the terms of the GNU General Public License
9 as published by the Free Software Foundation; either version 2
10 of the License, or (at your option) any later version.
11 
12 This program is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
15 
16 See the GNU General Public License for more details.
17 
18 You should have received a copy of the GNU General Public License
19 along with this program; if not, write to the Free Software
20 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
21 
22 Original Source: 1997 - Frank Maddin and Jim Norwood
23 Prepared for public release: 03/28/2005 - Charlie Wiederhold, 3D Realms
24 */
25 //-------------------------------------------------------------------------
26 
27 //****************************************************************************
28 //
29 // common_game.h
30 //
31 // common defines for the setup program
32 //
33 //****************************************************************************
34 
35 #ifndef common_public_
36 #define common_public_
37 #ifdef __cplusplus
38 extern "C" {
39 #endif
40 
41 //****************************************************************************
42 //
43 // DEFINES
44 //
45 //****************************************************************************
46 
47 #define APPNAME "VoidSW"
48 #ifndef APPBASENAME
49 #define APPBASENAME         "voidsw"
50 #endif
51 
52 //
53 // Color Defines
54 //
55 
56 #define MENUBACK_FOREGROUND COLOR_BLACK
57 #define MENUBACK_BACKGROUND COLOR_DARKGRAY
58 
59 #define MENUBACKBORDER_FOREGROUND COLOR_BLACK
60 #define MENUBACKBORDER_BACKGROUND COLOR_GRAY
61 
62 #define MENU_ACTIVE_FOREGROUND   COLOR_WHITE
63 #define MENU_INACTIVE_FOREGROUND COLOR_GRAY
64 #define MENU_DISPLAY_FOREGROUND  COLOR_LIGHTGREEN
65 
66 #define MENU_SECTIONHEADER_FOREGROUND   COLOR_YELLOW
67 
68 //
69 // Setup program defines
70 //
71 
72 #define SETUPPROGRAMNAME ("Shadow Warrior Setup")
73 #define SETUPPROGRAMVERSION ("1.2")
74 
75 #define GAMENAME "Shadow Warrior"
76 #define GAMELAUNCHER ("SW.EXE")
77 #define GAMETOTYPE ("SW")
78 
79 #define MENUFOOTER "Esc Exits   Move  �� Selects\0"
80 
81 #define COMMITLAUNCHER ("COMMIT.EXE")
82 #define COMMITFILENAME ("COMMIT.DAT")
83 
84 #define MAXVOICES 32
85 #define SONGNAME ("Shadow Warrior Theme Song")
86 //#define SOUNDSETUPLAUNCHER ("SNDSETUP.EXE")
87 
88 // Default Socket Number
89 
90 #define DEFAULTSOCKETNUMBER 0x8849
91 
92 // Default RTS file
93 
94 #define DEFAULTRTSFILE "sw.rts"
95 
96 // Default RTS path
97 
98 #define DEFAULTRTSPATH ".\\"
99 
100 // Default UserLevel path
101 
102 #define DEFAULTLEVELPATH ".\\"
103 
104 // Default External Control file
105 
106 #define DEFAULTCONTROLFILE "EXTERNAL.EXE"
107 
108 // Default Help file
109 
110 #define DEFAULTHELPFILE "SWHELP.EXE"
111 
112 // RTS extension
113 
114 #define RTSEXTENSION "RTS"
115 
116 // MAP extension
117 
118 #define MAPEXTENSION "MAP"
119 
120 // Default Player name
121 
122 #define DEFAULTPLAYERNAME "KATO"
123 
124 // Default Macros
125 
126 #define MACRO1  "Burn baby burn..."
127 #define MACRO2  "You make another stupid move."
128 #define MACRO3  "Blocking with your head again?"
129 #define MACRO4  "You not fight well with hands!"
130 #define MACRO5  "You so stupid!"
131 #define MACRO6  "Quit jerking off. Come fight me!"
132 #define MACRO7  "What the matter you scaredy cat?"
133 #define MACRO8  "Did I break your concentration?"
134 #define MACRO9  "Hope you were paying attention."
135 #define MACRO10 "ITTAIIIUUU!!!"
136 
137 enum
138 {
139     GAMEFLAG_SHAREWARE = 1u<<0u,
140     GAMEFLAG_SWWD = 1u<<1u,
141     GAMEFLAG_SWTD = 1u<<2u,
142 };
143 extern uint8_t SW_GameFlags;
144 
145 //#define SW_SHAREWARE 1     // This determines whether game is shareware compile or not!
146 #define SW_SHAREWARE (SW_GameFlags & GAMEFLAG_SHAREWARE)
147 
148 extern struct grpfile const * g_selectedGrp;
149 
150 extern int g_useCwd;
151 
152 extern char *g_grpNamePtr;
153 
154 const char *G_DefaultGrpFile(void);
155 const char *G_GrpFile(void);
156 
157 void clearGrpNamePtr(void);
158 
159 void SW_InitMultiPsky(void);
160 
161 void SW_ExtPreInit(int32_t argc, char const * const * argv);
162 void SW_ExtInit(void);
163 
164 void SW_ScanGroups(void);
165 void SW_LoadGroups(void);
166 
167 void SW_CleanupSearchPaths(void);
168 
169 enum searchpathtypes_t {
170     SEARCHPATH_REMOVE = 1<<0,
171 };
172 
173 extern int g_addonNum;
174 
175 typedef enum basepal_ {
176     BASEPAL = 0,
177     DREALMSPAL,
178     TITLEPAL,
179     TENPAL,
180     ANIMPAL,
181     BASEPALCOUNT
182 } basepal_t;
183 
184 #ifdef __cplusplus
185 };
186 #endif
187 #endif
188