Prevent fall damage from overflowing when falling from a large height. (#5791)

master
red-001 2017-05-21 10:18:38 +01:00 committed by Loïc Blot
parent 4dc97eb99f
commit ae483f1bd0
1 changed files with 4 additions and 5 deletions

View File

@ -237,11 +237,10 @@ void ClientEnvironment::step(float dtime)
pre_factor = 1.0 + (float)addp/100.0;
}
float speed = pre_factor * speed_diff.getLength();
if(speed > tolerance)
{
f32 damage_f = (speed - tolerance)/BS * post_factor;
u16 damage = (u16)(damage_f+0.5);
if(damage != 0){
if (speed > tolerance) {
f32 damage_f = (speed - tolerance) / BS * post_factor;
u8 damage = (u8)MYMIN(damage_f + 0.5, 255);
if (damage != 0) {
damageLocalPlayer(damage, true);
MtEvent *e = new SimpleTriggerEvent("PlayerFallingDamage");
m_client->event()->put(e);