From 1995b59320fe0fdced55c4605635f38cc42768f1 Mon Sep 17 00:00:00 2001 From: Perttu Ahola Date: Sat, 23 Apr 2011 18:31:31 +0300 Subject: Code refactoring; split half of main.cpp to game.cpp. --- src/game.h | 76 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 76 insertions(+) create mode 100644 src/game.h (limited to 'src/game.h') diff --git a/src/game.h b/src/game.h new file mode 100644 index 000000000..7cba1299e --- /dev/null +++ b/src/game.h @@ -0,0 +1,76 @@ +/* +Minetest-c55 +Copyright (C) 2011 celeron55, Perttu Ahola + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License along +with this program; if not, write to the Free Software Foundation, Inc., +51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +*/ + +#ifndef GAME_HEADER +#define GAME_HEADER + +#include "common_irrlicht.h" +#include + +class InputHandler +{ +public: + InputHandler() + { + } + virtual ~InputHandler() + { + } + + virtual bool isKeyDown(EKEY_CODE keyCode) = 0; + virtual bool wasKeyDown(EKEY_CODE keyCode) = 0; + + virtual v2s32 getMousePos() = 0; + virtual void setMousePos(s32 x, s32 y) = 0; + + virtual bool getLeftState() = 0; + virtual bool getRightState() = 0; + + virtual bool getLeftClicked() = 0; + virtual bool getRightClicked() = 0; + virtual void resetLeftClicked() = 0; + virtual void resetRightClicked() = 0; + + virtual bool getLeftReleased() = 0; + virtual bool getRightReleased() = 0; + virtual void resetLeftReleased() = 0; + virtual void resetRightReleased() = 0; + + virtual s32 getMouseWheel() = 0; + + virtual void step(float dtime) {}; + + virtual void clear() {}; +}; + +void the_game( + bool &kill, + bool random_input, + InputHandler *input, + IrrlichtDevice *device, + gui::IGUIFont* font, + std::string map_dir, + std::string playername, + std::string address, + u16 port, + std::wstring &error_message +); + +#endif + -- cgit v1.2.3