1 /*
2  * Copyright 2010-2014 OpenXcom Developers.
3  *
4  * This file is part of OpenXcom.
5  *
6  * OpenXcom is free software: you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation, either version 3 of the License, or
9  * (at your option) any later version.
10  *
11  * OpenXcom is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with OpenXcom.  If not, see <http://www.gnu.org/licenses/>.
18  */
19 #ifndef OPENXCOM_DEFEATSTATE_H
20 #define OPENXCOM_DEFEATSTATE_H
21 
22 #include "../Engine/State.h"
23 
24 namespace OpenXcom
25 {
26 
27 class InteractiveSurface;
28 class Text;
29 class Timer;
30 
31 /**
32  * Game Over Screens.
33  */
34 class DefeatState : public State
35 {
36 private:
37 	static const int SCREENS = 2;
38 	InteractiveSurface *_bg[SCREENS];
39 	Text *_text[SCREENS];
40 	int _screen;
41 	Timer *_timer;
42 public:
43 	/// Creates the Defeat state.
44 	DefeatState(Game *game);
45 	/// Cleans up the Defeat state.
46 	~DefeatState();
47 	/// Handle timers.
48 	void think();
49 	/// Handler for clicking the screen.
50 	void screenClick(Action *action);
51 };
52 
53 }
54 
55 #endif
56