mirror of
https://github.com/luanti-org/luanti.git
synced 2025-08-11 17:51:04 +00:00
Attachments: Fix interpolation from (0,0,0) after detach
GenericCAO::getPosition() did not take the camera offset into account LocalPlayer attachment cleanup: Use sane getParent() function Make that getPosition() (GenericCAO and LocalPlayer) always return the absolute position
This commit is contained in:
parent
51f230895c
commit
aa8df112ff
7 changed files with 57 additions and 61 deletions
|
@ -285,9 +285,13 @@ void Camera::update(LocalPlayer* player, f32 frametime, f32 busytime, f32 tool_r
|
|||
// Smooth the movement when walking up stairs
|
||||
v3f old_player_position = m_playernode->getPosition();
|
||||
v3f player_position = player->getPosition();
|
||||
if (player->isAttached && player->parent)
|
||||
player_position = player->parent->getPosition();
|
||||
//if(player->touching_ground && player_position.Y > old_player_position.Y)
|
||||
|
||||
// This is worse than `LocalPlayer::getPosition()` but
|
||||
// mods expect the player head to be at the parent's position
|
||||
// plus eye height.
|
||||
if (player->getParent())
|
||||
player_position = player->getParent()->getPosition();
|
||||
|
||||
if(player->touching_ground &&
|
||||
player_position.Y > old_player_position.Y)
|
||||
{
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue