]> git.lizzy.rs Git - dragonfireclient.git/blobdiff - src/localplayer.cpp
Add dtime_s to entity activation
[dragonfireclient.git] / src / localplayer.cpp
index 15b6fd15def7fd62901936207b91a662d36d7bb9..4b5e53fea294734e765ea262ab0eb070f69ea697 100644 (file)
@@ -150,13 +150,16 @@ void LocalPlayer::move(f32 dtime, Map &map, f32 pos_max_d,
                position.X = rangelim(position.X, lwn_f.X-maxd, lwn_f.X+maxd);
                position.Z = rangelim(position.Z, lwn_f.Z-maxd, lwn_f.Z+maxd);
                
-               f32 min_y = lwn_f.Y + 0.5*BS;
-               if(position.Y < min_y)
+               if(!is_climbing)
                {
-                       position.Y = min_y;
+                       f32 min_y = lwn_f.Y + 0.5*BS;
+                       if(position.Y < min_y)
+                       {
+                               position.Y = min_y;
 
-                       if(m_speed.Y < 0)
-                               m_speed.Y = 0;
+                               if(m_speed.Y < 0)
+                                       m_speed.Y = 0;
+                       }
                }
        }
 
@@ -486,9 +489,8 @@ void LocalPlayer::applyControl(float dtime)
                        v3f speed = getSpeed();
                        if(speed.Y >= -0.5*BS)
                        {
-                               speed.Y += 6.5*BS;
+                               speed.Y = 6.5*BS;
                                setSpeed(speed);
-                               m_can_jump = false;
                                
                                MtEvent *e = new SimpleTriggerEvent("PlayerJump");
                                m_gamedef->event()->put(e);