aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSmallJoker <mk939@ymail.com>2015-02-04 09:00:34 +0100
committerCraig Robbins <kde.psych@gmail.com>2015-02-05 17:33:08 +1000
commit929e0b0ad8a1e2a7b373f5661e52e2384a24916d (patch)
treeff1b218193e9fc1e6dede0fa95142a91ee0b662c
parent5e075c3344911176421be3ae08e2bdc432a83b8f (diff)
downloadminetest-929e0b0ad8a1e2a7b373f5661e52e2384a24916d.tar.gz
minetest-929e0b0ad8a1e2a7b373f5661e52e2384a24916d.tar.bz2
minetest-929e0b0ad8a1e2a7b373f5661e52e2384a24916d.zip
Give full breath after death
-rw-r--r--src/constants.h3
-rw-r--r--src/player.cpp6
-rw-r--r--src/server.cpp1
3 files changed, 7 insertions, 3 deletions
diff --git a/src/constants.h b/src/constants.h
index 6969b4d81..9a7bb9d86 100644
--- a/src/constants.h
+++ b/src/constants.h
@@ -89,6 +89,9 @@ with this program; if not, write to the Free Software Foundation, Inc.,
// Maximum hit points of a player
#define PLAYER_MAX_HP 20
+// Maximal breath of a player
+#define PLAYER_MAX_BREATH 11
+
// Number of different files to try to save a player to if the first fails
// (because of a case-insensitive filesystem)
// TODO: Use case-insensitive player names instead of this hack.
diff --git a/src/player.cpp b/src/player.cpp
index 64c138d02..0da761eed 100644
--- a/src/player.cpp
+++ b/src/player.cpp
@@ -47,7 +47,7 @@ Player::Player(IGameDef *gamedef, const char *name):
keyPressed(0),
// protected
m_gamedef(gamedef),
- m_breath(-1),
+ m_breath(PLAYER_MAX_BREATH),
m_pitch(0),
m_yaw(0),
m_speed(0,0,0),
@@ -213,12 +213,12 @@ void Player::deSerialize(std::istream &is, std::string playername)
try{
hp = args.getS32("hp");
}catch(SettingNotFoundException &e) {
- hp = 20;
+ hp = PLAYER_MAX_HP;
}
try{
m_breath = args.getS32("breath");
}catch(SettingNotFoundException &e) {
- m_breath = 11;
+ m_breath = PLAYER_MAX_BREATH;
}
inventory.deSerialize(is);
diff --git a/src/server.cpp b/src/server.cpp
index 31b5041ed..399c41b70 100644
--- a/src/server.cpp
+++ b/src/server.cpp
@@ -4294,6 +4294,7 @@ void Server::RespawnPlayer(u16 peer_id)
<<" respawns"<<std::endl;
playersao->setHP(PLAYER_MAX_HP);
+ playersao->setBreath(PLAYER_MAX_BREATH);
bool repositioned = m_script->on_respawnplayer(playersao);
if(!repositioned){