1 //----------------------------------------------------------------------------
2 //  LIST OF ALL CVARS
3 //----------------------------------------------------------------------------
4 //
5 //  Copyright (c) 2007-2009  The EDGE Team.
6 //
7 //  This program 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.  See the
15 //  GNU General Public License for more details.
16 //
17 //----------------------------------------------------------------------------
18 
19 #include "i_defs.h"
20 
21 #include "con_var.h"
22 
23 #include "e_input.h"  // jaxis_group_c
24 
25 
26 extern cvar_c edge_compat;
27 
28 extern cvar_c ddf_strict, ddf_lax, ddf_quiet;
29 
30 extern cvar_c g_skill, g_gametype;
31 extern cvar_c g_mlook, g_autoaim;
32 extern cvar_c g_jumping, g_crouching;
33 extern cvar_c g_true3d, g_aggression;
34 extern cvar_c g_moreblood, g_noextra;
35 extern cvar_c g_fastmon, g_passmissile;
36 extern cvar_c g_weaponkick, g_weaponswitch;
37 
38 extern cvar_c am_rotate, am_smoothing;
39 extern cvar_c am_gridsize;
40 
41 extern cvar_c m_language;
42 extern cvar_c m_diskicon, m_busywait, m_screenhud;
43 extern cvar_c m_messages, m_obituaries;
44 extern cvar_c m_goobers;
45 
46 extern cvar_c sys_directx, sys_waveout;
47 
48 extern cvar_c in_running, in_stageturn, in_shiftlook;
49 extern cvar_c in_keypad,  in_warpmouse;
50 extern cvar_c in_grab;
51 
52 extern cvar_c mouse_x_axis, mouse_y_axis;
53 extern cvar_c mouse_x_sens, mouse_y_sens;
54 extern cvar_c mouse_accel,  mouse_filter;
55 
56 extern cvar_c joy_dead, joy_peak, joy_tuning;
57 
58 extern cvar_c r_width, r_height, r_depth, r_fullscreen;
59 extern cvar_c r_colormaterial, r_colorlighting;
60 extern cvar_c r_dumbsky, r_dumbmulti, r_dumbcombine, r_dumbclamp;
61 extern cvar_c r_nearclip, r_farclip, r_fadepower;
62 extern cvar_c r_fov, r_zoomfov, r_aspect;
63 extern cvar_c r_mipmapping, r_smoothing;
64 extern cvar_c r_dithering, r_hq2x;
65 extern cvar_c r_dynlight, r_invultex;
66 extern cvar_c r_gamma, r_detaillevel;
67 extern cvar_c r_wipemethod, r_wipereverse;
68 extern cvar_c r_teleportflash;
69 extern cvar_c r_crosshair, r_crosscolor;
70 extern cvar_c r_crosssize, r_crossbright;
71 extern cvar_c r_precache_tex, r_precache_sprite, r_precache_model;
72 
73 extern cvar_c s_volume, s_mixchan, s_quietfactor;
74 extern cvar_c s_rate, s_bits, s_stereo;
75 extern cvar_c s_musicvol, s_musicdevice;
76 extern cvar_c tim_quietfactor;
77 
78 extern cvar_c debug_fullbright, debug_hom;
79 extern cvar_c debug_mouse,      debug_joyaxis;
80 extern cvar_c debug_fps,        debug_pos;
81 
82 extern cvar_c debug_nomonsters, debug_subsector;
83 
84 
85 #ifndef LINUX
86 #define S_MUSICDEV_CFG  "0"  // native
87 #else
88 #define S_MUSICDEV_CFG  "1"  // timidity
89 #endif
90 
91 
92 // Flag letters:
93 // =============
94 //
95 //   r : read only, user cannot change it
96 //   c : config file (saved and loaded)
97 //   h : cheat
98 //
99 
100 
101 cvar_link_t  all_cvars[] =
102 {
103 	/* General Stuff */
104 
105     { "language",       &m_language,     "c",   "ENGLISH" },
106 
107     { "ddf_strict",     &ddf_strict,     "c",   "0"  },
108     { "ddf_lax",        &ddf_lax,        "c",   "0"  },
109     { "ddf_quiet",      &ddf_quiet,      "c",   "0"  },
110 
111     { "aggression",     &g_aggression,   "c",   "0"  },
112 
113 	/* Input Stuff */
114 
115     { "in_grab",        &in_grab,        "c",   "1"  },
116 	{ "in_keypad",      &in_keypad,      "c",   "1"  },
117 	{ "in_running",     &in_running,     "c",   "0"  },
118 	{ "in_stageturn",   &in_stageturn,   "c",   "1"  },
119 	{ "in_warpmouse",   &in_warpmouse,   "c",   "1"  },
120 
121 	{ "joy_dead",       &joy_dead,       "c",   "0.15" },
122 	{ "joy_peak",       &joy_peak,       "c",   "0.95" },
123 	{ "joy_tuning",     &joy_peak,       "c",   "1.0"  },
124 
125   	{ "mouse_filter",   &mouse_filter,   "c",   "0"  },
126 
127 	{ "goobers",        &m_goobers,      "",    "0" },
128 	{ "m_diskicon",     &m_diskicon,     "c",   "1"  },
129 	{ "m_busywait",     &m_busywait,     "c",   "1"  },
130 
131 	/* Rendering Stuff */
132 
133 	{ "r_aspect",       &r_aspect,       "c",   "1.333" },
134 	{ "r_fov",          &r_fov,          "c",   "90" },
135 	{ "r_zoomfov",      &r_zoomfov,      "c",   "10" },
136 
137 	{ "r_crosshair",    &r_crosshair,    "c",   "0"  },
138 	{ "r_crosscolor",   &r_crosscolor,   "c",   "0"  },
139 	{ "r_crosssize",    &r_crosssize,    "c",   "16" },
140 	{ "r_crossbright",  &r_crossbright,  "c",   "1.0" },
141 
142 	{ "r_nearclip",     &r_nearclip,     "c",   "4"  },
143 	{ "r_farclip",      &r_farclip,      "c",   "64000" },
144 	{ "r_fadepower",    &r_fadepower,    "c",   "1"  },
145 
146 	{ "r_precache_tex",    &r_precache_tex,    "c", "1" },
147 	{ "r_precache_sprite", &r_precache_sprite, "c", "1" },
148 	{ "r_precache_model",  &r_precache_model,  "c", "1" },
149 
150 	{ "r_colormaterial",&r_colormaterial, "",   "1"  },
151 	{ "r_colorlighting",&r_colorlighting, "",   "1"  },
152 	{ "r_dumbsky",      &r_dumbsky,       "",   "0"  },
153 	{ "r_dumbmulti",    &r_dumbmulti,     "",   "0"  },
154 	{ "r_dumbcombine",  &r_dumbcombine,   "",   "0"  },
155 	{ "r_dumbclamp",    &r_dumbclamp,     "",   "0"  },
156 
157 	{ "am_smoothing",   &am_smoothing,   "c",   "1"  },
158 	{ "am_gridsize",    &am_gridsize,    "c",   "128" },
159 
160 	/* Sound Stuff */
161 
162 	/* Debugging Stuff */
163 
164 	{ "debug_fullbright", &debug_fullbright, "h", "0" },
165 	{ "debug_hom",        &debug_hom,        "h", "0" },
166 	{ "debug_joyaxis",    &debug_joyaxis,    "",  "0" },
167 	{ "debug_mouse",      &debug_mouse,      "",  "0" },
168 	{ "debug_pos",        &debug_pos,        "h", "0" },
169 	{ "debug_fps",        &debug_fps,        "c", "0" },
170 
171 #if 0 // FIXME
172     { "edge_compat",    &edge_compat,    "",    "0"  },
173 
174     { "sys_directx",    &sys_directx,    "c",   "0"  },
175     { "sys_waveout",    &sys_waveout,    "c",   "0"  },
176 
177     { "g_skill",        &g_skill,        "c",   "3"  },
178     { "g_gametype",     &g_gametype,     "",    "0"  },
179     { "g_mlook",        &g_mlook,        "c",   "1"  },
180     { "g_autoaim",      &g_autoaim,      "c",   "1"  },
181     { "g_jumping",      &g_jumping,      "c",   "0"  },
182     { "g_crouching",    &g_crouching,    "c",   "0"  },
183     { "g_true3d",       &g_true3d,       "c",   "1"  },
184     { "g_noextra",      &g_noextra,      "c",   "0"  },
185     { "g_moreblood",    &g_moreblood,    "c",   "0"  },
186     { "g_fastmon",      &g_fastmon,      "c",   "0"  },
187     { "g_passmissile",  &g_passmissile,  "c",   "1"  },
188     { "g_weaponkick",   &g_weaponkick,   "c",   "0"  },
189     { "g_weaponswitch", &g_weaponswitch, "c",   "1"  },
190 
191 	{ "am_rotate",      &am_rotate,      "c",   "0"  },
192 
193 	{ "m_messages",     &m_messages,     "c",   "1"  },
194 	{ "m_obituaries",   &m_obituaries,   "c",   "1"  },
195 	{ "m_screenhud",    &m_screenhud,    "c",   "0"  },
196 
197 	{ "r_width",        &r_width,        "c",   "640"   },
198 	{ "r_height",       &r_height,       "c",   "480"   },
199     { "r_depth",        &r_depth,        "c",   "32"    },
200     { "r_fullscreen",   &r_fullscreen,   "c",   "1"     },
201 
202 	{ "r_gamma",        &r_gamma,        "c",   "1"  },
203 
204 	{ "r_mipmapping",   &r_mipmapping,   "c",   "0"  },
205 	{ "r_smoothing",    &r_smoothing,    "c",   "0"  },
206 	{ "r_dithering",    &r_dithering,    "c",   "0"  },
207 	{ "r_hq2x",         &r_hq2x,         "c",   "0"  },
208 
209 	{ "r_dynlight",     &r_dynlight,     "c",   "1"  },
210 	{ "r_detaillevel",  &r_detaillevel,  "c",   "1"  },
211 	{ "r_invultex",     &r_invultex,     "c",   "1"  },
212 	{ "r_wipemethod",   &r_wipemethod,   "c",   "1" /* Melt */ },
213 	{ "r_wipereverse",  &r_wipereverse,  "c",   "0"  },
214 	{ "r_teleportflash",&r_teleportflash,"c",   "1"  },
215 
216 	{ "s_volume",       &s_volume,       "c",   "0.5"  },
217 	{ "s_mixchan",      &s_mixchan,      "c",   "32"   },
218 	{ "s_rate",         &s_rate,         "c",   "22050" },
219 	{ "s_bits",         &s_bits,         "c",   "16" },
220 	{ "s_stereo",       &s_stereo,       "c",   "1"  },
221 	{ "s_musicvol",     &s_musicvol,     "c",   "0.5"  },
222 	{ "s_musicdevice",  &s_musicdevice,  "c",   S_MUSICDEV_CFG },
223 
224 	{ "s_quietfactor",  &s_quietfactor,  "c",   "1"  },
225 	{ "tim_quietfactor",&tim_quietfactor,"c",   "1"  },
226 
227 	{ "in_shiftlook",   &in_shiftlook,   "c",   "1"  },
228 
229 	{ "mouse_x.axis",   &mouse_x_axis,   "c",   "1" /* AXIS_TURN */  },
230 	{ "mouse_x.sens",   &mouse_x_sens,   "c",   "10"  },
231 	{ "mouse_y.axis",   &mouse_y_axis,   "c",   "4" /* AXIS_MLOOK */ },
232 	{ "mouse_y.sens",   &mouse_y_sens,   "c",   "10" },
233 //	{ "mouse_accel",    &mouse_accel,    "c",   "0"  },
234 
235 	{ "debug_nomonsters", &debug_nomonsters, "h", "0" },
236 	{ "debug_subsector",  &debug_subsector,  "h", "0" },
237 #endif
238 
239 //---- END OF LIST -----------------------------------------------------------
240 
241 	{ NULL, NULL, NULL, NULL }
242 };
243 
244 //--- editor settings ---
245 // vi:ts=4:sw=4:noexpandtab
246