diff options
author | Perttu Ahola <celeron55@gmail.com> | 2011-04-23 18:31:31 +0300 |
---|---|---|
committer | Perttu Ahola <celeron55@gmail.com> | 2011-04-23 18:31:31 +0300 |
commit | 1995b59320fe0fdced55c4605635f38cc42768f1 (patch) | |
tree | f3d919f91bfc599110d901fe769e5b761403ecc7 /src/game.h | |
parent | 9f17664336e15b987045e0db453c012691ab852c (diff) | |
download | minetest-1995b59320fe0fdced55c4605635f38cc42768f1.tar.gz minetest-1995b59320fe0fdced55c4605635f38cc42768f1.tar.bz2 minetest-1995b59320fe0fdced55c4605635f38cc42768f1.zip |
Code refactoring; split half of main.cpp to game.cpp.
Diffstat (limited to 'src/game.h')
-rw-r--r-- | src/game.h | 76 |
1 files changed, 76 insertions, 0 deletions
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 <celeron55@gmail.com> + +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 <string> + +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 + |