2 * Copyright (C) 2003 Robert Kooima
4 * NEVERBALL is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published
6 * by the Free Software Foundation; either version 2 of the License,
7 * or (at your option) any later version.
9 * This program is distributed in the hope that it will be useful, but
10 * WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * General Public License for more details.
20 * 1- some global config methods (stored in a config file)
21 * 2- some SDL based functions
23 * If you're looking for constants, you should also see base_config.h
28 #include "base_config.h"
31 /*---------------------------------------------------------------------------*/
33 /* Integer options. */
35 extern int CONFIG_FULLSCREEN;
36 extern int CONFIG_WIDTH;
37 extern int CONFIG_HEIGHT;
38 extern int CONFIG_STEREO;
39 extern int CONFIG_CAMERA;
40 extern int CONFIG_TEXTURES;
41 extern int CONFIG_REFLECTION;
42 extern int CONFIG_MULTISAMPLE;
43 extern int CONFIG_MIPMAP;
44 extern int CONFIG_ANISO;
45 extern int CONFIG_BACKGROUND;
46 extern int CONFIG_SHADOW;
47 extern int CONFIG_AUDIO_BUFF;
48 extern int CONFIG_MOUSE_SENSE;
49 extern int CONFIG_MOUSE_INVERT;
50 extern int CONFIG_VSYNC;
51 extern int CONFIG_MOUSE_CAMERA_1;
52 extern int CONFIG_MOUSE_CAMERA_2;
53 extern int CONFIG_MOUSE_CAMERA_3;
54 extern int CONFIG_MOUSE_CAMERA_TOGGLE;
55 extern int CONFIG_MOUSE_CAMERA_L;
56 extern int CONFIG_MOUSE_CAMERA_R;
57 extern int CONFIG_NICE;
58 extern int CONFIG_FPS;
59 extern int CONFIG_SOUND_VOLUME;
60 extern int CONFIG_MUSIC_VOLUME;
61 extern int CONFIG_JOYSTICK;
62 extern int CONFIG_JOYSTICK_DEVICE;
63 extern int CONFIG_JOYSTICK_AXIS_X;
64 extern int CONFIG_JOYSTICK_AXIS_Y;
65 extern int CONFIG_JOYSTICK_AXIS_U;
66 extern int CONFIG_JOYSTICK_AXIS_X_INVERT;
67 extern int CONFIG_JOYSTICK_AXIS_Y_INVERT;
68 extern int CONFIG_JOYSTICK_AXIS_U_INVERT;
69 extern int CONFIG_JOYSTICK_BUTTON_A;
70 extern int CONFIG_JOYSTICK_BUTTON_B;
71 extern int CONFIG_JOYSTICK_BUTTON_R;
72 extern int CONFIG_JOYSTICK_BUTTON_L;
73 extern int CONFIG_JOYSTICK_BUTTON_EXIT;
74 extern int CONFIG_JOYSTICK_CAMERA_1;
75 extern int CONFIG_JOYSTICK_CAMERA_2;
76 extern int CONFIG_JOYSTICK_CAMERA_3;
77 extern int CONFIG_JOYSTICK_DPAD_L;
78 extern int CONFIG_JOYSTICK_DPAD_R;
79 extern int CONFIG_JOYSTICK_DPAD_U;
80 extern int CONFIG_JOYSTICK_DPAD_D;
81 extern int CONFIG_JOYSTICK_CAMERA_TOGGLE;
82 extern int CONFIG_JOYSTICK_ROTATE_FAST;
83 extern int CONFIG_KEY_CAMERA_1;
84 extern int CONFIG_KEY_CAMERA_2;
85 extern int CONFIG_KEY_CAMERA_3;
86 extern int CONFIG_KEY_CAMERA_TOGGLE;
87 extern int CONFIG_KEY_CAMERA_R;
88 extern int CONFIG_KEY_CAMERA_L;
89 extern int CONFIG_KEY_FORWARD;
90 extern int CONFIG_KEY_BACKWARD;
91 extern int CONFIG_KEY_LEFT;
92 extern int CONFIG_KEY_RIGHT;
93 extern int CONFIG_KEY_PAUSE;
94 extern int CONFIG_KEY_RESTART;
95 extern int CONFIG_KEY_SCORE_NEXT;
96 extern int CONFIG_KEY_ROTATE_FAST;
97 extern int CONFIG_VIEW_FOV;
98 extern int CONFIG_VIEW_DP;
99 extern int CONFIG_VIEW_DC;
100 extern int CONFIG_VIEW_DZ;
101 extern int CONFIG_ROTATE_FAST;
102 extern int CONFIG_ROTATE_SLOW;
103 extern int CONFIG_CHEAT;
104 extern int CONFIG_STATS;
105 extern int CONFIG_SCREENSHOT;
106 extern int CONFIG_LOCK_GOALS;
108 /* String options. */
110 extern int CONFIG_PLAYER;
111 extern int CONFIG_BALL_FILE;
112 extern int CONFIG_WIIMOTE_ADDR;
113 extern int CONFIG_REPLAY_NAME;
115 /*---------------------------------------------------------------------------*/
117 void config_init(void);
118 void config_load(void);
119 void config_save(void);
121 /*---------------------------------------------------------------------------*/
123 void config_set_d(int, int);
124 void config_tgl_d(int);
125 int config_tst_d(int, int);
126 int config_get_d(int);
128 void config_set_s(int, const char *);
129 const char *config_get_s(int);
131 /*---------------------------------------------------------------------------*/
133 int config_cheat(void);
134 void config_set_cheat(void);
135 void config_clr_cheat(void);
137 /*---------------------------------------------------------------------------*/
139 int config_screenshot(void);
141 /*---------------------------------------------------------------------------*/