Use LastPlacedSign instead of LastPlacedBlock.
This commit is contained in:
@@ -93,7 +93,7 @@ cClientHandle::cClientHandle(const cSocket * a_Socket, int a_ViewDistance) :
|
||||
m_UniqueID(0),
|
||||
m_HasSentPlayerChunk(false),
|
||||
m_Locale("en_GB"),
|
||||
m_LastPlacedBlock(0, -1, 0),
|
||||
m_LastPlacedSign(0, -1, 0),
|
||||
m_ProtocolVersion(0)
|
||||
{
|
||||
m_Protocol = new cProtocolRecognizer(this);
|
||||
@@ -1501,7 +1501,6 @@ void cClientHandle::HandlePlaceBlock(int a_BlockX, int a_BlockY, int a_BlockZ, e
|
||||
{
|
||||
m_Player->GetInventory().RemoveOneEquippedItem();
|
||||
}
|
||||
m_LastPlacedBlock.Set(a_BlockX, a_BlockY, a_BlockZ);
|
||||
|
||||
cChunkInterface ChunkInterface(World->GetChunkMap());
|
||||
NewBlock->OnPlacedByPlayer(ChunkInterface, *World, m_Player, a_BlockX, a_BlockY, a_BlockZ, a_BlockFace, a_CursorX, a_CursorY, a_CursorZ, BlockType, BlockMeta);
|
||||
@@ -1680,8 +1679,9 @@ void cClientHandle::HandleUpdateSign(
|
||||
const AString & a_Line3, const AString & a_Line4
|
||||
)
|
||||
{
|
||||
if (m_LastPlacedBlock.Equals(Vector3i(a_BlockX, a_BlockY, a_BlockZ)))
|
||||
if (m_LastPlacedSign.Equals(Vector3i(a_BlockX, a_BlockY, a_BlockZ)))
|
||||
{
|
||||
m_LastPlacedSign.Set(0, -1, 0);
|
||||
m_Player->GetWorld()->SetSignLines(a_BlockX, a_BlockY, a_BlockZ, a_Line1, a_Line2, a_Line3, a_Line4, m_Player);
|
||||
}
|
||||
}
|
||||
@@ -2262,6 +2262,7 @@ void cClientHandle::SendDisconnect(const AString & a_Reason)
|
||||
|
||||
void cClientHandle::SendEditSign(int a_BlockX, int a_BlockY, int a_BlockZ)
|
||||
{
|
||||
m_LastPlacedSign.Set(a_BlockX, a_BlockY, a_BlockZ);
|
||||
m_Protocol->SendEditSign(a_BlockX, a_BlockY, a_BlockZ);
|
||||
}
|
||||
|
||||
|
||||
@@ -125,9 +125,6 @@ public:
|
||||
|
||||
inline bool IsLoggedIn(void) const { return (m_State >= csAuthenticating); }
|
||||
|
||||
/** Returns the positions from the last block that the player placed. */
|
||||
const Vector3i & GetLastPlacedBlock(void) const { return m_LastPlacedBlock; } // tolua_export
|
||||
|
||||
/** Called while the client is being ticked from the world via its cPlayer object */
|
||||
void Tick(float a_Dt);
|
||||
|
||||
@@ -436,8 +433,8 @@ private:
|
||||
/** Client Settings */
|
||||
AString m_Locale;
|
||||
|
||||
/** The positions from the last block that the player placed. It's needed to verify the sign text change. */
|
||||
Vector3i m_LastPlacedBlock;
|
||||
/** The positions from the last sign that the player placed. It's needed to verify the sign text change. */
|
||||
Vector3i m_LastPlacedSign;
|
||||
|
||||
/** The plugin channels that the client has registered. */
|
||||
cChannels m_PluginChannels;
|
||||
|
||||
Reference in New Issue
Block a user