mirror of
https://github.com/minetest/minetest.git
synced 2024-11-27 01:53:45 +01:00
Disable autoforward if player is dead
This commit is contained in:
parent
ded5da7800
commit
3c395d908f
@ -1541,6 +1541,9 @@ void GenericCAO::processMessage(const std::string &data)
|
|||||||
|
|
||||||
m_hp = result_hp;
|
m_hp = result_hp;
|
||||||
|
|
||||||
|
if (m_is_local_player)
|
||||||
|
m_env->getLocalPlayer()->hp = m_hp;
|
||||||
|
|
||||||
if (damage > 0)
|
if (damage > 0)
|
||||||
{
|
{
|
||||||
if (m_hp <= 0)
|
if (m_hp <= 0)
|
||||||
|
@ -2466,7 +2466,7 @@ void Game::updatePlayerControl(const CameraOrientation &cam)
|
|||||||
}
|
}
|
||||||
|
|
||||||
// autoforward if set: simulate "up" key
|
// autoforward if set: simulate "up" key
|
||||||
if (player->getPlayerSettings().continuous_forward) {
|
if (player->getPlayerSettings().continuous_forward && !player->isDead()) {
|
||||||
control.up = true;
|
control.up = true;
|
||||||
keypress_bits |= 1U << 0;
|
keypress_bits |= 1U << 0;
|
||||||
}
|
}
|
||||||
@ -2483,7 +2483,7 @@ inline void Game::step(f32 *dtime)
|
|||||||
bool can_be_and_is_paused =
|
bool can_be_and_is_paused =
|
||||||
(simple_singleplayer_mode && g_menumgr.pausesGame());
|
(simple_singleplayer_mode && g_menumgr.pausesGame());
|
||||||
|
|
||||||
if (can_be_and_is_paused) { // This is for a singleplayer server
|
if (can_be_and_is_paused) { // This is for a singleplayer server
|
||||||
*dtime = 0; // No time passes
|
*dtime = 0; // No time passes
|
||||||
} else {
|
} else {
|
||||||
if (server)
|
if (server)
|
||||||
|
@ -259,7 +259,7 @@ void LocalPlayer::move(f32 dtime, Environment *env, f32 pos_max_d,
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Check if player is climbing
|
Check if player is climbing
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
@ -489,7 +489,7 @@ void LocalPlayer::applyControl(float dtime, Environment *env)
|
|||||||
PlayerSettings &player_settings = getPlayerSettings();
|
PlayerSettings &player_settings = getPlayerSettings();
|
||||||
|
|
||||||
// All vectors are relative to the player's yaw,
|
// All vectors are relative to the player's yaw,
|
||||||
// (and pitch if pitch fly mode enabled),
|
// (and pitch if pitch move mode enabled),
|
||||||
// and will be rotated at the end
|
// and will be rotated at the end
|
||||||
v3f speedH = v3f(0,0,0); // Horizontal (X, Z)
|
v3f speedH = v3f(0,0,0); // Horizontal (X, Z)
|
||||||
v3f speedV = v3f(0,0,0); // Vertical (Y)
|
v3f speedV = v3f(0,0,0); // Vertical (Y)
|
||||||
@ -930,11 +930,11 @@ void LocalPlayer::old_move(f32 dtime, Environment *env, f32 pos_max_d,
|
|||||||
bool touching_ground_was = touching_ground;
|
bool touching_ground_was = touching_ground;
|
||||||
touching_ground = result.touching_ground;
|
touching_ground = result.touching_ground;
|
||||||
|
|
||||||
//bool standing_on_unloaded = result.standing_on_unloaded;
|
//bool standing_on_unloaded = result.standing_on_unloaded;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Check the nodes under the player to see from which node the
|
Check the nodes under the player to see from which node the
|
||||||
player is sneaking from, if any. If the node from under
|
player is sneaking from, if any. If the node from under
|
||||||
the player has been removed, the player falls.
|
the player has been removed, the player falls.
|
||||||
*/
|
*/
|
||||||
f32 position_y_mod = 0.05 * BS;
|
f32 position_y_mod = 0.05 * BS;
|
||||||
|
@ -100,7 +100,7 @@ public:
|
|||||||
bool makes_footstep_sound = true;
|
bool makes_footstep_sound = true;
|
||||||
|
|
||||||
int last_animation = NO_ANIM;
|
int last_animation = NO_ANIM;
|
||||||
float last_animation_speed;
|
float last_animation_speed = 0.0f;
|
||||||
|
|
||||||
std::string hotbar_image = "";
|
std::string hotbar_image = "";
|
||||||
std::string hotbar_selected_image = "";
|
std::string hotbar_selected_image = "";
|
||||||
@ -149,6 +149,8 @@ public:
|
|||||||
|
|
||||||
bool getAutojump() const { return m_autojump; }
|
bool getAutojump() const { return m_autojump; }
|
||||||
|
|
||||||
|
bool isDead() const { return hp <= 0; }
|
||||||
|
|
||||||
inline void addVelocity(const v3f &vel)
|
inline void addVelocity(const v3f &vel)
|
||||||
{
|
{
|
||||||
added_velocity += vel;
|
added_velocity += vel;
|
||||||
|
Loading…
Reference in New Issue
Block a user