]> git.lizzy.rs Git - minetest.git/blobdiff - src/localplayer.cpp
Remove Android makefile ugly make -j hack
[minetest.git] / src / localplayer.cpp
index a5ce147c1975551468e56305b1d7fd40217d6e72..55578422e8a2fea792e26b56dd2f537dd8124f68 100644 (file)
@@ -67,15 +67,13 @@ LocalPlayer::~LocalPlayer()
 }
 
 void LocalPlayer::move(f32 dtime, Environment *env, f32 pos_max_d,
-               std::list<CollisionInfo> *collision_info)
+               std::vector<CollisionInfo> *collision_info)
 {
        Map *map = &env->getMap();
        INodeDefManager *nodemgr = m_gamedef->ndef();
 
        v3f position = getPosition();
 
-       v3f old_speed = m_speed;
-
        // Copy parent position if local player is attached
        if(isAttached)
        {
@@ -100,7 +98,7 @@ void LocalPlayer::move(f32 dtime, Environment *env, f32 pos_max_d,
        /*
                Collision detection
        */
-       
+
        bool is_valid_position;
        MapNode node;
        v3s16 pp;
@@ -174,7 +172,7 @@ void LocalPlayer::move(f32 dtime, Environment *env, f32 pos_max_d,
        f32 d = 0.15*BS;
 
        // This should always apply, otherwise there are glitches
-       assert(d > pos_max_d);
+       sanity_check(d > pos_max_d);
 
        // Maximum distance over border for sneaking
        f32 sneak_max = BS*0.4;
@@ -191,7 +189,7 @@ void LocalPlayer::move(f32 dtime, Environment *env, f32 pos_max_d,
                v3f lwn_f = intToFloat(m_sneak_node, BS);
                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);
-               
+
                if(!is_climbing)
                {
                        f32 min_y = lwn_f.Y + 0.5*BS;
@@ -211,7 +209,7 @@ void LocalPlayer::move(f32 dtime, Environment *env, f32 pos_max_d,
 #ifdef __ANDROID__
        player_stepheight += (0.5 * BS);
 #endif
-       
+
        v3f accel_f = v3f(0,0,0);
 
        collisionMoveResult result = collisionMoveSimple(env, m_gamedef,
@@ -226,7 +224,7 @@ void LocalPlayer::move(f32 dtime, Environment *env, f32 pos_max_d,
        */
        bool touching_ground_was = touching_ground;
        touching_ground = result.touching_ground;
-    
+
     //bool standing_on_unloaded = result.standing_on_unloaded;
 
        /*
@@ -277,7 +275,7 @@ void LocalPlayer::move(f32 dtime, Environment *env, f32 pos_max_d,
                        f32 max_axis_distance_f = MYMAX(
                                        fabs(player_p2df.X-node_p2df.X),
                                        fabs(player_p2df.Y-node_p2df.Y));
-                                       
+
                        if(distance_f > min_distance_f ||
                                        max_axis_distance_f > 0.5*BS + sneak_max + 0.1*BS)
                                continue;
@@ -301,7 +299,7 @@ void LocalPlayer::move(f32 dtime, Environment *env, f32 pos_max_d,
                        min_distance_f = distance_f;
                        new_sneak_node = p;
                }
-               
+
                bool sneak_node_found = (min_distance_f < 100000.0*BS*0.9);
 
                m_sneak_node = new_sneak_node;
@@ -314,20 +312,19 @@ void LocalPlayer::move(f32 dtime, Environment *env, f32 pos_max_d,
                if(sneak_node_found && control.sneak)
                        touching_ground = true;
        }
-       
+
        /*
                Set new position
        */
        setPosition(position);
-       
+
        /*
                Report collisions
        */
        bool bouncy_jump = false;
        // Dont report if flying
-       if(collision_info && !(g_settings->getBool("free_move") && fly_allowed))
-       {
-               for(size_t i=0; i<result.collisions.size(); i++){
+       if(collision_info && !(g_settings->getBool("free_move") && fly_allowed)) {
+               for(size_t i=0; i<result.collisions.size(); i++) {
                        const CollisionInfo &info = result.collisions[i];
                        collision_info->push_back(info);
                        if(info.new_speed.Y - info.old_speed.Y > 0.1*BS &&
@@ -367,7 +364,7 @@ void LocalPlayer::move(f32 dtime, Environment *env, f32 pos_max_d,
        */
        m_old_node_below = floatToInt(position - v3f(0,BS/2,0), BS);
        m_old_node_below_type = nodemgr->get(map->getNodeNoEx(m_old_node_below)).name;
-       
+
        /*
                Check properties of the node on which the player is standing
        */
@@ -400,10 +397,10 @@ void LocalPlayer::applyControl(float dtime)
 
        v3f move_direction = v3f(0,0,1);
        move_direction.rotateXZBy(getYaw());
-       
+
        v3f speedH = v3f(0,0,0); // Horizontal (X, Z)
        v3f speedV = v3f(0,0,0); // Vertical (Y)
-       
+
        bool fly_allowed = m_gamedef->checkLocalPrivilege("fly");
        bool fast_allowed = m_gamedef->checkLocalPrivilege("fast");
 
@@ -415,7 +412,7 @@ void LocalPlayer::applyControl(float dtime)
 
        // Whether superspeed mode is used or not
        bool superspeed = false;
-       
+
        if(g_settings->getBool("always_fly_fast") && free_move && fast_move)
                superspeed = true;
 
@@ -425,7 +422,7 @@ void LocalPlayer::applyControl(float dtime)
                // If free movement and fast movement, always move fast
                if(free_move && fast_move)
                        superspeed = true;
-               
+
                // Auxiliary button 1 (E)
                if(control.aux1)
                {
@@ -548,7 +545,7 @@ void LocalPlayer::applyControl(float dtime)
                        {
                                speedJ.Y = movement_speed_jump * physics_override_jump;
                                setSpeed(speedJ);
-                               
+
                                MtEvent *e = new SimpleTriggerEvent("PlayerJump");
                                m_gamedef->event()->put(e);
                        }