From 93611b84377e6453d1444a91b4d9ffda08cdf7f2 Mon Sep 17 00:00:00 2001 From: Tiger Wang Date: Sun, 6 Jun 2021 17:20:21 +0100 Subject: SetBedPos: make World parameter non-null * Fixes #5190 --- src/Entities/Player.cpp | 13 ++++++------- src/Entities/Player.h | 4 ++-- 2 files changed, 8 insertions(+), 9 deletions(-) (limited to 'src') diff --git a/src/Entities/Player.cpp b/src/Entities/Player.cpp index fcdbcf64c..12d937baf 100644 --- a/src/Entities/Player.cpp +++ b/src/Entities/Player.cpp @@ -776,9 +776,9 @@ void cPlayer::SetCustomName(const AString & a_CustomName) -void cPlayer::SetBedPos(const Vector3i & a_Pos) +void cPlayer::SetBedPos(const Vector3i a_Position) { - m_LastBedPos = a_Pos; + m_LastBedPos = a_Position; m_SpawnWorldName = m_World->GetName(); } @@ -786,11 +786,10 @@ void cPlayer::SetBedPos(const Vector3i & a_Pos) -void cPlayer::SetBedPos(const Vector3i & a_Pos, cWorld * a_World) +void cPlayer::SetBedPos(const Vector3i a_Position, const cWorld & a_World) { - m_LastBedPos = a_Pos; - ASSERT(a_World != nullptr); - m_SpawnWorldName = a_World->GetName(); + m_LastBedPos = a_Position; + m_SpawnWorldName = a_World.GetName(); } @@ -1752,7 +1751,7 @@ void cPlayer::LoadFromDisk() const Vector3i WorldSpawn(static_cast(m_World->GetSpawnX()), static_cast(m_World->GetSpawnY()), static_cast(m_World->GetSpawnZ())); SetPosition(WorldSpawn); - SetBedPos(WorldSpawn, m_World); + SetBedPos(WorldSpawn, *m_World); m_Inventory.Clear(); m_EnchantmentSeed = GetRandomProvider().RandInt(); // Use a random number to seed the enchantment generator diff --git a/src/Entities/Player.h b/src/Entities/Player.h index f4ce76f21..dc30fca30 100644 --- a/src/Entities/Player.h +++ b/src/Entities/Player.h @@ -520,10 +520,10 @@ public: /** Sets the player's bed (home / respawn) position to the specified position. Sets the respawn world to the player's world. */ - void SetBedPos(const Vector3i & a_Pos); + void SetBedPos(const Vector3i a_Position); /** Sets the player's bed (home / respawn) position and respawn world to the specified parameters. */ - void SetBedPos(const Vector3i & a_Pos, cWorld * a_World); + void SetBedPos(const Vector3i a_Position, const cWorld & a_World); // tolua_end -- cgit v1.2.3