From f31b0a3361c0c39b9f6f6ee440b93293690bbe02 Mon Sep 17 00:00:00 2001 From: JacobF Date: Wed, 7 Sep 2011 10:56:04 -0400 Subject: Display which tool the player is holding And some simple animation when trying to dig... --- src/player.h | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/player.h') diff --git a/src/player.h b/src/player.h index 13cffa205..0f2c40011 100644 --- a/src/player.h +++ b/src/player.h @@ -356,6 +356,8 @@ public: { return true; } + + void wieldItem(u16 item); void move(f32 dtime, Map &map, f32 pos_max_d, core::list *collision_info); @@ -365,6 +367,8 @@ public: PlayerControl control; + scene::ISceneNode *wield; + private: // This is used for determining the sneaking range v3s16 m_sneak_node; -- cgit v1.2.3 From 36bcbca9acabbc47976d3d7625ffb1c9396b8fdc Mon Sep 17 00:00:00 2001 From: Kahrl Date: Mon, 19 Sep 2011 03:01:11 +0200 Subject: Added sprite extruder --- src/player.h | 4 ---- 1 file changed, 4 deletions(-) (limited to 'src/player.h') diff --git a/src/player.h b/src/player.h index 0f2c40011..ad0fb5ff9 100644 --- a/src/player.h +++ b/src/player.h @@ -357,8 +357,6 @@ public: return true; } - void wieldItem(u16 item); - void move(f32 dtime, Map &map, f32 pos_max_d, core::list *collision_info); void move(f32 dtime, Map &map, f32 pos_max_d); @@ -367,8 +365,6 @@ public: PlayerControl control; - scene::ISceneNode *wield; - private: // This is used for determining the sneaking range v3s16 m_sneak_node; -- cgit v1.2.3 From 6599002149f58c03b807cd1378ec17278dbdc09d Mon Sep 17 00:00:00 2001 From: Kahrl Date: Tue, 20 Sep 2011 18:25:29 +0200 Subject: fix a numerical problem, but tool is still jittery --- src/player.h | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'src/player.h') diff --git a/src/player.h b/src/player.h index ad0fb5ff9..350b85e1b 100644 --- a/src/player.h +++ b/src/player.h @@ -67,12 +67,17 @@ public: return floatToInt(m_position + v3f(0,BS+BS/2,0), BS); } - v3f getEyePosition() + v3f getEyeOffset() { // This is at the height of the eyes of the current figure - // return m_position + v3f(0, BS+BS/2, 0); + // return v3f(0, BS+BS/2, 0); // This is more like in minecraft - return m_position + v3f(0,BS+(5*BS)/8,0); + return v3f(0,BS+(5*BS)/8,0); + } + + v3f getEyePosition() + { + return m_position + getEyeOffset(); } virtual void setPosition(const v3f &position) -- cgit v1.2.3 From 3e012122d1607a6269af4e4522305d8b5efcd9d4 Mon Sep 17 00:00:00 2001 From: Kahrl Date: Wed, 21 Sep 2011 18:37:29 +0200 Subject: Simplistic wielded tool lighting, added setMeshVerticesColor to utility.h and refactored some other code into calls of that --- src/player.h | 24 +++++++++--------------- 1 file changed, 9 insertions(+), 15 deletions(-) (limited to 'src/player.h') diff --git a/src/player.h b/src/player.h index 350b85e1b..ce1001992 100644 --- a/src/player.h +++ b/src/player.h @@ -126,7 +126,10 @@ public: virtual bool isLocal() const = 0; - virtual void updateLight(u8 light_at_pos) {}; + virtual void updateLight(u8 light_at_pos) + { + light = light_at_pos; + } // NOTE: Use peer_id == 0 for disconnected /*virtual bool isClientConnected() { return false; } @@ -149,6 +152,8 @@ public: bool swimming_up; bool is_frozen; + u8 light; + Inventory inventory; // Actual inventory is backed up here when creative mode is used Inventory *inventory_backup; @@ -266,25 +271,14 @@ public: virtual void updateLight(u8 light_at_pos) { + Player::updateLight(light_at_pos); + if(m_node == NULL) return; u8 li = decode_light(light_at_pos); video::SColor color(255,li,li,li); - - scene::IMesh *mesh = m_node->getMesh(); - - u16 mc = mesh->getMeshBufferCount(); - for(u16 j=0; jgetMeshBuffer(j); - video::S3DVertex *vertices = (video::S3DVertex*)buf->getVertices(); - u16 vc = buf->getVertexCount(); - for(u16 i=0; igetMesh(), color); } void move(f32 dtime, Map &map, f32 pos_max_d); -- cgit v1.2.3