diff options
author | Loic Blot <loic.blot@unix-experience.fr> | 2015-03-13 08:57:19 +0100 |
---|---|---|
committer | Loic Blot <loic.blot@unix-experience.fr> | 2015-03-13 08:57:58 +0100 |
commit | 4e63c977c782e81e828445d20c836d84e3ba1766 (patch) | |
tree | 80467660176c9ddfab9880e2204687de3d01dbb3 | |
parent | 7c19933a8cca173157e0c21923cafe56b2334708 (diff) | |
download | minetest-4e63c977c782e81e828445d20c836d84e3ba1766.tar.gz minetest-4e63c977c782e81e828445d20c836d84e3ba1766.tar.bz2 minetest-4e63c977c782e81e828445d20c836d84e3ba1766.zip |
Use the new Player::isDead function when it's the case
-rw-r--r-- | src/environment.cpp | 6 | ||||
-rw-r--r-- | src/network/packethandlers/server.cpp | 12 | ||||
-rw-r--r-- | src/server.cpp | 2 |
3 files changed, 13 insertions, 7 deletions
diff --git a/src/environment.cpp b/src/environment.cpp index f75e7a0b7..953fa2860 100644 --- a/src/environment.cpp +++ b/src/environment.cpp @@ -2563,9 +2563,11 @@ void ClientEnvironment::damageLocalPlayer(u8 damage, bool handle_hp) LocalPlayer *lplayer = getLocalPlayer(); assert(lplayer); - if(handle_hp){ - if (lplayer->hp == 0) // Don't damage a dead player + if(handle_hp) { + // Don't damage a dead player + if (lplayer->isDead()) return; + if(lplayer->hp > damage) lplayer->hp -= damage; else diff --git a/src/network/packethandlers/server.cpp b/src/network/packethandlers/server.cpp index b188bb931..537858e52 100644 --- a/src/network/packethandlers/server.cpp +++ b/src/network/packethandlers/server.cpp @@ -556,7 +556,9 @@ void Server::handleCommand_PlayerPos(NetworkPacket* pkt) } // If player is dead we don't care of this packet - if (player->hp == 0) { + if (player->isDead()) { + verbosestream << "TOSERVER_PLAYERPOS: " << player->getName() + << " is dead. Ignoring packet"; return; } @@ -921,6 +923,8 @@ void Server::handleCommand_Breath(NetworkPacket* pkt) * He is dead ! */ if (player->isDead()) { + verbosestream << "TOSERVER_BREATH: " << player->getName() + << " is dead. Ignoring packet"; return; } @@ -1051,7 +1055,7 @@ void Server::handleCommand_Respawn(NetworkPacket* pkt) return; } - if (player->hp != 0 || !g_settings->getBool("enable_damage")) + if (!player->isDead() || !g_settings->getBool("enable_damage")) return; RespawnPlayer(pkt->getPeerId()); @@ -1108,9 +1112,9 @@ void Server::handleCommand_Interact(NetworkPacket* pkt) return; } - if (player->hp == 0) { + if (player->isDead()) { verbosestream << "TOSERVER_INTERACT: " << player->getName() - << " tried to interact, but is dead!" << std::endl; + << " is dead. Ignoring packet"; return; } diff --git a/src/server.cpp b/src/server.cpp index 1e2c445f7..a21d12e6a 100644 --- a/src/server.cpp +++ b/src/server.cpp @@ -1106,7 +1106,7 @@ PlayerSAO* Server::StageTwoClientInit(u16 peer_id) SendPlayerBreath(peer_id); // Show death screen if necessary - if(player->hp == 0) + if(player->isDead()) SendDeathscreen(peer_id, false, v3f(0,0,0)); // Note things in chat if not in simple singleplayer mode |