changes to how configs react to input
[physics.git] / src / config / config.cpp
CommitLineData
8f8b6693
PG
1/*
2 * Copyright (C) 2008 Patrik Gornicz, Gornicz_P (at) hotmail (dot) com.
3 *
4 * This program is free software: you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation, either version 3 of the License, or
7 * (at your option) any later version.
8 *
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
13 *
14 * You should have received a copy of the GNU General Public License
15 * along with this program. If not, see <http://www.gnu.org/licenses/>.
16 */
17
b1d92c2f 18#include "config.h"
c04d3365 19#include "../debug.h"
87c9b12f 20
b552aa3b
PG
21#include <SDL/SDL.h>
22#include "keys.h"
23
87c9b12f 24#include "reader.h"
8f8b6693
PG
25#include "../input/inputManager.h"
26
27/// ***** Private Method Headers *****
28/// ***** Private Variables *****
29
2b8199e7
PG
30bool fPaused = false;
31
32bool fEndGame = false;
33
34bool fWellFollow= false;
35bool fWellOn = false;
36bool fWellOff = false;
37
38bool fShowFPS = true;
39bool fShowUPS = true;
c46074c1 40
8f8b6693
PG
41/// ***** Initializers/Cleaners *****
42
b1d92c2f
PG
43void cfg::init()
44{
338e728a
PG
45 key::init();
46 readConfigs();
b552aa3b 47
b1d92c2f
PG
48 // TODO read in config files
49}
50void cfg::clean()
51{
52 // TODO save to config files?
53}
54
8f8b6693
PG
55/// ***** Public Methods *****
56
2b8199e7
PG
57void cfg::handleInput()
58{
59 fPaused = input::wasPressed (key::pause) ? !fPaused : fPaused;
60
61 fEndGame = input::wasReleased(key::end);
62
63 fWellFollow = input::isPressed (key::follow);
64 fWellOn = input::wasPressed (key::well);
65 fWellOff = input::wasReleased(key::well);
66}
67
c46074c1 68bool cfg::paused()
8f8b6693 69{
c46074c1 70 return fPaused;
8f8b6693
PG
71}
72
b1d92c2f
PG
73bool cfg::endGame()
74{
2b8199e7 75 return fEndGame;
b1d92c2f
PG
76}
77
f103ba70
PG
78bool cfg::mouseWellFollow()
79{
2b8199e7 80 return fWellFollow;
f103ba70 81}
a860c0c7
PG
82bool cfg::mouseWellOn()
83{
2b8199e7 84 return fWellOn;
f103ba70
PG
85}
86bool cfg::mouseWellOff()
87{
2b8199e7 88 return fWellOff;
a860c0c7
PG
89}
90
c46074c1
PG
91bool cfg::showFPS()
92{
2b8199e7 93 return fShowFPS;
c46074c1
PG
94}
95bool cfg::showUPS()
96{
2b8199e7 97 return fShowUPS;
c46074c1
PG
98}
99
8f8b6693 100/// ***** Private Methods *****