/*
-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
#define LOCALPLAYER_HEADER
#include "player.h"
+#include <list>
+
+class ClientEnvironment;
+
+class ClientActiveObject;
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, ClientEnvironment *env, f32 pos_max_d,
+ std::list<CollisionInfo> *collision_info);
+ void move(f32 dtime, ClientEnvironment *env, f32 pos_max_d);
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;
+
+ std::string hotbar_image;
+ std::string hotbar_selected_image;
+
private:
// This is used for determining the sneaking range
v3s16 m_sneak_node;