summaryrefslogtreecommitdiff
path: root/src/network/serverpackethandler.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/network/serverpackethandler.cpp')
-rw-r--r--src/network/serverpackethandler.cpp11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/network/serverpackethandler.cpp b/src/network/serverpackethandler.cpp
index 76a2dc3c2..2d810836b 100644
--- a/src/network/serverpackethandler.cpp
+++ b/src/network/serverpackethandler.cpp
@@ -812,8 +812,9 @@ void Server::handleCommand_Damage(NetworkPacket* pkt)
<< (int)damage << " hp at " << PP(playersao->getBasePosition() / BS)
<< std::endl;
- playersao->setHP(playersao->getHP() - damage);
- SendPlayerHPOrDie(playersao);
+ PlayerHPChangeReason reason(PlayerHPChangeReason::FALL);
+ playersao->setHP(playersao->getHP() - damage, reason);
+ SendPlayerHPOrDie(playersao, reason);
}
}
@@ -1175,12 +1176,14 @@ void Server::handleCommand_Interact(NetworkPacket* pkt)
// If the object is a player and its HP changed
if (src_original_hp != pointed_object->getHP() &&
pointed_object->getType() == ACTIVEOBJECT_TYPE_PLAYER) {
- SendPlayerHPOrDie((PlayerSAO *)pointed_object);
+ SendPlayerHPOrDie((PlayerSAO *)pointed_object,
+ PlayerHPChangeReason(PlayerHPChangeReason::PLAYER_PUNCH, playersao));
}
// If the puncher is a player and its HP changed
if (dst_origin_hp != playersao->getHP())
- SendPlayerHPOrDie(playersao);
+ SendPlayerHPOrDie(playersao,
+ PlayerHPChangeReason(PlayerHPChangeReason::PLAYER_PUNCH, pointed_object));
}
} // action == 0