Fixed two typo's in commit 615fd498bc
[oweals/minetest.git] / src / player.h
index 6108af3db8786cae8638e434a259d19ee8468032..67b02c3445d15b7cac634ce8b6917063f3bfce78 100644 (file)
@@ -3,16 +3,16 @@ Minetest-c55
 Copyright (C) 2010-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
+it under the terms of the GNU Lesser General Public License as published by
+the Free Software Foundation; either version 2.1 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.
+GNU Lesser General Public License for more details.
 
-You should have received a copy of the GNU General Public License along
+You should have received a copy of the GNU Lesser 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.
 */
@@ -20,13 +20,69 @@ with this program; if not, write to the Free Software Foundation, Inc.,
 #ifndef PLAYER_HEADER
 #define PLAYER_HEADER
 
-#include "irrlichttypes.h"
+#include "irrlichttypes_bloated.h"
 #include "inventory.h"
+#include "constants.h" // BS
 
 #define PLAYERNAME_SIZE 20
 
 #define PLAYERNAME_ALLOWED_CHARS "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-_"
 
+struct PlayerControl
+{
+       PlayerControl()
+       {
+               up = false;
+               down = false;
+               left = false;
+               right = false;
+               jump = false;
+               aux1 = false;
+               sneak = false;
+               LMB = false;
+               RMB = false;
+               pitch = 0;
+               yaw = 0;
+       }
+       PlayerControl(
+               bool a_up,
+               bool a_down,
+               bool a_left,
+               bool a_right,
+               bool a_jump,
+               bool a_aux1,
+               bool a_sneak,
+               bool a_LMB,
+               bool a_RMB,
+               float a_pitch,
+               float a_yaw
+       )
+       {
+               up = a_up;
+               down = a_down;
+               left = a_left;
+               right = a_right;
+               jump = a_jump;
+               aux1 = a_aux1;
+               sneak = a_sneak;
+               LMB = a_LMB;
+               RMB = a_RMB;
+               pitch = a_pitch;
+               yaw = a_yaw;
+       }
+       bool up;
+       bool down;
+       bool left;
+       bool right;
+       bool jump;
+       bool aux1;
+       bool sneak;
+       bool LMB;
+       bool RMB;
+       float pitch;
+       float yaw;
+};
+
 class Map;
 class IGameDef;
 struct CollisionInfo;
@@ -149,12 +205,24 @@ public:
        
        u8 light;
 
-       // In creative mode, this is the invisible backup inventory
        Inventory inventory;
 
        u16 hp;
 
+       float hurt_tilt_timer;
+       float hurt_tilt_strength;
+
        u16 peer_id;
+       
+       std::string inventory_formspec;
+       
+       PlayerControl control;
+       PlayerControl getPlayerControl()
+       {
+               return control;
+       }
+       
+       u32 keyPressed;
 
 protected:
        IGameDef *m_gamedef;
@@ -180,7 +248,7 @@ public:
        void setPlayerSAO(PlayerSAO *sao)
        { m_sao = sao; }
        void setPosition(const v3f &position);
-
+       
 private:
        PlayerSAO *m_sao;
 };