From 73391013f7fbc0558b96146e2014bdcf3c675e4d Mon Sep 17 00:00:00 2001 From: Riley Adams Date: Mon, 10 Apr 2023 18:04:52 -0400 Subject: Add node pos to node damage HP change reason (#13196) --- src/server/player_sao.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'src/server/player_sao.cpp') diff --git a/src/server/player_sao.cpp b/src/server/player_sao.cpp index 9aa7ce39f..1255a4461 100644 --- a/src/server/player_sao.cpp +++ b/src/server/player_sao.cpp @@ -185,6 +185,7 @@ void PlayerSAO::step(float dtime, bool send_recommended) if (!isImmortal() && m_node_hurt_interval.step(dtime, 1.0f)) { u32 damage_per_second = 0; std::string nodename; + v3s16 node_pos; // Lowest and highest damage points are 0.1 within collisionbox float dam_top = m_prop.collisionbox.MaxEdge.Y - 0.1f; @@ -198,6 +199,7 @@ void PlayerSAO::step(float dtime, bool send_recommended) if (c.damage_per_second > damage_per_second) { damage_per_second = c.damage_per_second; nodename = c.name; + node_pos = p; } } @@ -209,11 +211,12 @@ void PlayerSAO::step(float dtime, bool send_recommended) if (c.damage_per_second > damage_per_second) { damage_per_second = c.damage_per_second; nodename = c.name; + node_pos = ptop; } if (damage_per_second != 0 && m_hp > 0) { s32 newhp = (s32)m_hp - (s32)damage_per_second; - PlayerHPChangeReason reason(PlayerHPChangeReason::NODE_DAMAGE, nodename); + PlayerHPChangeReason reason(PlayerHPChangeReason::NODE_DAMAGE, nodename, node_pos); setHP(newhp, reason); } } -- cgit v1.2.3