Merge pull request #124 from teamfisk/FixNetworkBugs
Test text here. Good work Jocke.
This commit is contained in:
@@ -437,11 +437,12 @@ void Client::parsePlayerDamage(Packet& packet)
|
||||
{
|
||||
Events::PlayerDamage e;
|
||||
PlayerID victimID = packet.ReadPrimitive<EntityID>();
|
||||
if(serverClientMapsHasEntity(victimID)){
|
||||
PlayerID inflictorID = packet.ReadPrimitive<EntityID>();
|
||||
if(!serverClientMapsHasEntity(victimID) || !serverClientMapsHasEntity(inflictorID)){
|
||||
return;
|
||||
}
|
||||
e.Inflictor = EntityWrapper(m_World, m_ServerIDToClientID.at(victimID));
|
||||
e.Victim = EntityWrapper(m_World, m_ServerIDToClientID.at(packet.ReadPrimitive<EntityID>()));
|
||||
e.Victim = EntityWrapper(m_World, m_ServerIDToClientID.at(inflictorID));
|
||||
e.Damage = packet.ReadPrimitive<double>();
|
||||
// Don't rebroadcast our own player damage events or we'll have an infinite loop!
|
||||
if (e.Inflictor != m_LocalPlayer) {
|
||||
|
||||
@@ -84,7 +84,6 @@ void Server::Update()
|
||||
if (isReadingData) {
|
||||
Network::Update();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
void Server::parseMessageType(Packet& packet)
|
||||
|
||||
@@ -24,7 +24,7 @@ void HealthSystem::UpdateComponent(EntityWrapper& entity, ComponentWrapper& cHea
|
||||
|
||||
bool HealthSystem::OnPlayerDamaged(Events::PlayerDamage& e)
|
||||
{
|
||||
if (!IsServer && m_NetworkEnabled) {
|
||||
if (!IsServer && m_NetworkEnabled || !e.Victim.Valid()) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user