From 2e5ee633cea4c47d305bc18d477ea16b5193e06b Mon Sep 17 00:00:00 2001 From: sippeangelo Date: Fri, 12 Feb 2016 06:10:20 +0100 Subject: [PATCH] Fixed bug when client would recieve input command from an entity that the client didn't know about --- src/Engine/Network/Client.cpp | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/Engine/Network/Client.cpp b/src/Engine/Network/Client.cpp index 10af98b7..8de62cb5 100644 --- a/src/Engine/Network/Client.cpp +++ b/src/Engine/Network/Client.cpp @@ -287,10 +287,14 @@ void Client::parseSnapshot(Packet& packet) Events::InputCommand e; e.PlayerID = packet.ReadPrimitive(); EntityID player = packet.ReadPrimitive(); - e.Player = EntityWrapper(m_World, m_ServerIDToClientID.at(player)); - e.Command = packet.ReadString(); - e.Value = packet.ReadPrimitive(); - m_EventBroker->Publish(e); + std::string command = packet.ReadString(); + float value = packet.ReadPrimitive(); + if (m_ServerIDToClientID.find(player) != m_ServerIDToClientID.end()) { + e.Player = EntityWrapper(m_World, m_ServerIDToClientID.at(player)); + e.Command = command; + e.Value = value; + m_EventBroker->Publish(e); + } } // Read world state