]> git.lizzy.rs Git - dragonfireclient.git/blobdiff - src/localplayer.h
make formspec textarea wordwrap
[dragonfireclient.git] / src / localplayer.h
index 9d1829db86a12d7f70de44104cfd47103385d93d..38e7a4cd9e739ba0955dde3fbaf60f20dffe36ac 100644 (file)
@@ -1,6 +1,6 @@
 /*
-Minetest-c55
-Copyright (C) 2010-2012 celeron55, Perttu Ahola <celeron55@gmail.com>
+Minetest
+Copyright (C) 2010-2013 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 Lesser General Public License as published by
@@ -21,6 +21,13 @@ with this program; if not, write to the Free Software Foundation, Inc.,
 #define LOCALPLAYER_HEADER
 
 #include "player.h"
+#include <list>
+
+class Environment;
+
+class ClientActiveObject;
+
+enum LocalPlayerAnimations {NO_ANIM, WALK_ANIM, DIG_ANIM, WD_ANIM};  // no local animation, walking, digging, both
 
 class LocalPlayer : public Player
 {
@@ -32,18 +39,39 @@ class LocalPlayer : public Player
        {
                return true;
        }
+       
+       ClientActiveObject *parent;
 
        bool isAttached;
 
        v3f overridePosition;
        
-       void move(f32 dtime, Map &map, f32 pos_max_d,
-                       core::list<CollisionInfo> *collision_info);
-       void move(f32 dtime, Map &map, f32 pos_max_d);
+       void move(f32 dtime, Environment *env, f32 pos_max_d);
+       void move(f32 dtime, Environment *env, f32 pos_max_d,
+                       std::list<CollisionInfo> *collision_info);
 
        void applyControl(float dtime);
 
        v3s16 getStandingNodePos();
+
+       // Used to check if anything changed and prevent sending packets if not
+       v3f last_position;
+       v3f last_speed;
+       float last_pitch;
+       float last_yaw;
+       unsigned int last_keyPressed;
+
+       float camera_impact;
+       int camera_mode;
+       v3f eye_offset_first;
+       v3f eye_offset_third;
+
+       int last_animation;
+       float last_animation_speed;
+
+       std::string hotbar_image;
+       std::string hotbar_selected_image;
+
 private:
        // This is used for determining the sneaking range
        v3s16 m_sneak_node;