]> git.lizzy.rs Git - dragonfireclient.git/commitdiff
Remove redundant on_dieplayer calls
authorsavilli <78875209+savilli@users.noreply.github.com>
Sat, 28 Aug 2021 10:14:16 +0000 (12:14 +0200)
committerGitHub <noreply@github.com>
Sat, 28 Aug 2021 10:14:16 +0000 (12:14 +0200)
src/network/serverpackethandler.cpp
src/script/common/c_content.cpp
src/script/lua_api/l_object.cpp
src/server.cpp
src/server/player_sao.cpp

index dc5864be3cd9977ca5f818dd2bdc5a9e35ed1a30..77fde2a6637427ea04e5d4a59e3a9bd3e697d941 100644 (file)
@@ -828,7 +828,6 @@ void Server::handleCommand_Damage(NetworkPacket* pkt)
 
                PlayerHPChangeReason reason(PlayerHPChangeReason::FALL);
                playersao->setHP((s32)playersao->getHP() - (s32)damage, reason);
-               SendPlayerHPOrDie(playersao, reason);
        }
 }
 
@@ -1113,9 +1112,6 @@ void Server::handleCommand_Interact(NetworkPacket *pkt)
                float time_from_last_punch =
                        playersao->resetTimeFromLastPunch();
 
-               u16 src_original_hp = pointed_object->getHP();
-               u16 dst_origin_hp = playersao->getHP();
-
                u16 wear = pointed_object->punch(dir, &toolcap, playersao,
                                time_from_last_punch);
 
@@ -1125,18 +1121,6 @@ void Server::handleCommand_Interact(NetworkPacket *pkt)
                if (changed)
                        playersao->setWieldedItem(selected_item);
 
-               // 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,
-                                       PlayerHPChangeReason(PlayerHPChangeReason::PLAYER_PUNCH, playersao));
-               }
-
-               // If the puncher is a player and its HP changed
-               if (dst_origin_hp != playersao->getHP())
-                       SendPlayerHPOrDie(playersao,
-                                       PlayerHPChangeReason(PlayerHPChangeReason::PLAYER_PUNCH, pointed_object));
-
                return;
        } // action == INTERACT_START_DIGGING
 
index f13287375a44e4590714a8b5af1e195b54318599..5a095fd8f1fb57f0f1247f6e26bc3bec8ea770ff 100644 (file)
@@ -200,8 +200,6 @@ void read_object_properties(lua_State *L, int index,
                if (prop->hp_max < sao->getHP()) {
                        PlayerHPChangeReason reason(PlayerHPChangeReason::SET_HP);
                        sao->setHP(prop->hp_max, reason);
-                       if (sao->getType() == ACTIVEOBJECT_TYPE_PLAYER)
-                               sao->getEnv()->getGameDef()->SendPlayerHPOrDie((PlayerSAO *)sao, reason);
                }
        }
 
index c8fa7d806f3ee54985e02d38b4988d5a2b966eb8..b7185f7ec5a98f711cfdd2ea0473e28f50258d17 100644 (file)
@@ -172,27 +172,11 @@ int ObjectRef::l_punch(lua_State *L)
        float time_from_last_punch = readParam<float>(L, 3, 1000000.0f);
        ToolCapabilities toolcap = read_tool_capabilities(L, 4);
        v3f dir = readParam<v3f>(L, 5, sao->getBasePosition() - puncher->getBasePosition());
-
        dir.normalize();
-       u16 src_original_hp = sao->getHP();
-       u16 dst_origin_hp = puncher->getHP();
 
        u16 wear = sao->punch(dir, &toolcap, puncher, time_from_last_punch);
        lua_pushnumber(L, wear);
 
-       // If the punched is a player, and its HP changed
-       if (src_original_hp != sao->getHP() &&
-                       sao->getType() == ACTIVEOBJECT_TYPE_PLAYER) {
-               getServer(L)->SendPlayerHPOrDie((PlayerSAO *)sao,
-                               PlayerHPChangeReason(PlayerHPChangeReason::PLAYER_PUNCH, puncher));
-       }
-
-       // If the puncher is a player, and its HP changed
-       if (dst_origin_hp != puncher->getHP() &&
-                       puncher->getType() == ACTIVEOBJECT_TYPE_PLAYER) {
-               getServer(L)->SendPlayerHPOrDie((PlayerSAO *)puncher,
-                               PlayerHPChangeReason(PlayerHPChangeReason::PLAYER_PUNCH, sao));
-       }
        return 1;
 }
 
@@ -238,8 +222,6 @@ int ObjectRef::l_set_hp(lua_State *L)
        }
 
        sao->setHP(hp, reason);
-       if (sao->getType() == ACTIVEOBJECT_TYPE_PLAYER)
-               getServer(L)->SendPlayerHPOrDie((PlayerSAO *)sao, reason);
        if (reason.hasLuaReference())
                luaL_unref(L, LUA_REGISTRYINDEX, reason.lua_reference);
        return 0;
index 8339faa76cf57d6ff5e39fca3dd25f721fa25694..b96db120995d725c63f55064168e2dc40f81765a 100644 (file)
@@ -1079,8 +1079,7 @@ PlayerSAO* Server::StageTwoClientInit(session_t peer_id)
        if (playersao->isDead())
                SendDeathscreen(peer_id, false, v3f(0,0,0));
        else
-               SendPlayerHPOrDie(playersao,
-                               PlayerHPChangeReason(PlayerHPChangeReason::SET_HP));
+               SendPlayerHP(peer_id);
 
        // Send Breath
        SendPlayerBreath(playersao);
index 0d31f2e0b549ba455f5bd2c62f4cb969ed3728b6..d4d036726dc391fd110f04f82481df9574d29db1 100644 (file)
@@ -167,7 +167,6 @@ void PlayerSAO::step(float dtime, bool send_recommended)
                        if (m_breath == 0) {
                                PlayerHPChangeReason reason(PlayerHPChangeReason::DROWNING);
                                setHP(m_hp - c.drowning, reason);
-                               m_env->getGameDef()->SendPlayerHPOrDie(this, reason);
                        }
                }
        }
@@ -216,7 +215,6 @@ void PlayerSAO::step(float dtime, bool send_recommended)
                        s32 newhp = (s32)m_hp - (s32)damage_per_second;
                        PlayerHPChangeReason reason(PlayerHPChangeReason::NODE_DAMAGE, nodename);
                        setHP(newhp, reason);
-                       m_env->getGameDef()->SendPlayerHPOrDie(this, reason);
                }
        }
 
@@ -491,6 +489,8 @@ void PlayerSAO::setHP(s32 hp, const PlayerHPChangeReason &reason)
        // Update properties on death
        if ((hp == 0) != (oldhp == 0))
                m_properties_sent = false;
+
+       m_env->getGameDef()->SendPlayerHPOrDie(this, reason);
 }
 
 void PlayerSAO::setBreath(const u16 breath, bool send)