Subversion Repositories eduke32

Rev

Rev 216 | Rev 1089 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
5 Plagman 1
//-------------------------------------------------------------------------
2
/*
3
Copyright (C) 1996, 2003 - 3D Realms Entertainment
484 terminx 4
Copyright (C) 2000, 2003 - Matt Saettler (EDuke Enhancements)
5
Copyright (C) 2004, 2007 - EDuke32 developers
5 Plagman 6
 
484 terminx 7
This file is part of EDuke32
5 Plagman 8
 
484 terminx 9
EDuke32 is free software; you can redistribute it and/or
10
modify it under the terms of the GNU General Public License version 2
11
as published by the Free Software Foundation.
5 Plagman 12
 
13
This program is distributed in the hope that it will be useful,
14
but WITHOUT ANY WARRANTY; without even the implied warranty of
15
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
16
 
17
See the GNU General Public License for more details.
18
 
19
You should have received a copy of the GNU General Public License
20
along with this program; if not, write to the Free Software
21
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
22
*/
23
//-------------------------------------------------------------------------
24
 
25
//****************************************************************************
26
//
27
// gamedefs.h
28
//
29
// common defines between the game and the setup program
30
//
31
//****************************************************************************
32
 
33
#ifndef _gamedefs_public_
34
#define _gamedefs_public_
35
#ifdef __cplusplus
36
extern "C" {
37
#endif
38
 
39
//****************************************************************************
40
//
41
// DEFINES
42
//
43
//****************************************************************************
44
 
45
//
46
// Setup program defines
47
//
48
#define SETUPFILENAME "duke3d.cfg"
49
 
50
 
51
// Max number of players
52
 
53
#define MAXPLAYERS 16
54
 
55
// Number of Mouse buttons
56
 
57
#define MAXMOUSEBUTTONS 6
58
 
59
// Number of JOY buttons
60
 
61
#define MAXJOYBUTTONS (32+4)
62
 
63
// Number of EXTERNAL buttons
64
 
65
//#define MAXEXTERNALBUTTONS 6
66
 
67
//
68
// modem string defines
69
//
70
 
71
#define MAXMODEMSTRING 50
72
 
73
// MACRO defines
74
 
75
#define MAXMACROS      10
76
#define MAXMACROLENGTH 34
77
 
78
// Phone list defines
79
 
80
#define PHONENUMBERLENGTH 28
81
#define PHONENAMELENGTH   16
82
#define MAXPHONEENTRIES   10
83
 
84
// length of program functions
85
 
86
#define MAXFUNCTIONLENGTH 30
87
 
88
// length of axis functions
89
 
90
#define MAXAXISFUNCTIONLENGTH 30
91
 
92
// Max Player Name length
93
 
94
#define MAXPLAYERNAMELENGTH 11
95
 
96
// Max RTS Name length
97
 
98
#define MAXRTSNAMELENGTH 15
99
 
100
// Number of Mouse Axes
101
 
102
#define MAXMOUSEAXES 2
103
 
104
// Number of JOY axes
105
 
106
#define MAXJOYAXES 8
107
 
108
// Number of GAMEPAD axes
109
 
110
#define MAXGAMEPADAXES 2
111
 
112
// MIN/MAX scale value for controller scales
113
 
114
#define MAXCONTROLSCALEVALUE (1<<19)
115
 
116
// DEFAULT scale value for controller scales
117
 
118
#define DEFAULTCONTROLSCALEVALUE (1<<16)
119
 
120
// base value for controller scales
121
 
122
#define BASECONTROLSCALEVALUE (1<<16)
123
 
124
// MAX mouse sensitivity scale
125
 
126
#define MAXMOUSESENSITIVITY (1<<17)
127
 
128
// DEFAULT mouse sensitivity scale
129
 
216 terminx 130
#define DEFAULTMOUSESENSITIVITY 18
5 Plagman 131
 
132
enum
133
   {
134
   gametype_network=3,
135
   gametype_serial=1,
136
   gametype_modem=2
137
   };
138
 
139
enum
140
   {
141
   connecttype_dialing=0,
142
   connecttype_answer=1,
143
   connecttype_alreadyconnected=2
144
   };
145
 
146
enum
147
   {
148
   screenbuffer_320x200,
149
   screenbuffer_640x400,
150
   screenbuffer_640x480,
151
   screenbuffer_800x600,
152
   screenbuffer_1024x768,
153
   screenbuffer_1280x1024,
154
   screenbuffer_1600x1200
155
   };
156
 
157
enum
158
   {
159
   vesa_320x200,
160
   vesa_360x200,
161
   vesa_320x240,
162
   vesa_360x240,
163
   vesa_320x400,
164
   vesa_360x400,
165
   vesa_640x350,
166
   vesa_640x400,
167
   vesa_640x480,
168
   vesa_800x600,
169
   vesa_1024x768,
170
   vesa_1280x1024,
171
   vesa_1600x1200
172
   };
173
 
174
enum
175
   {
176
   screenmode_chained,
177
   screenmode_vesa,
178
   screenmode_buffered,
179
   screenmode_tseng,
180
   screenmode_paradise,
181
   screenmode_s3,
182
   screenmode_crystal,
183
   screenmode_redblue,
184
   };
185
 
186
 
187
#ifdef __cplusplus
188
};
189
#endif
190
#endif
191