Damage: Remove damage ignore timer
authorSmallJoker <mk939@ymail.com>
Sun, 13 Aug 2017 07:49:29 +0000 (09:49 +0200)
committerparamat <mat.gregory@virginmedia.com>
Sun, 10 Dec 2017 14:23:45 +0000 (14:23 +0000)
src/client.cpp
src/client.h
src/network/clientpackethandler.cpp

index 2d1572d8ee9d346b8652937e70850a4181eaf22f..c04bf055a1c609e8c3a93f4477aec80a4d700272 100644 (file)
@@ -264,14 +264,9 @@ void Client::connect(Address address, bool is_local_server)
 void Client::step(float dtime)
 {
        // Limit a bit
-       if(dtime > 2.0)
+       if (dtime > 2.0)
                dtime = 2.0;
 
-       if(m_ignore_damage_timer > dtime)
-               m_ignore_damage_timer -= dtime;
-       else
-               m_ignore_damage_timer = 0.0;
-
        m_animation_time += dtime;
        if(m_animation_time > 60.0)
                m_animation_time -= 60.0;
@@ -394,18 +389,16 @@ void Client::step(float dtime)
                ClientEnvEvent envEvent = m_env.getClientEnvEvent();
 
                if (envEvent.type == CEE_PLAYER_DAMAGE) {
-                       if (m_ignore_damage_timer <= 0) {
-                               u8 damage = envEvent.player_damage.amount;
+                       u8 damage = envEvent.player_damage.amount;
 
-                               if (envEvent.player_damage.send_to_server)
-                                       sendDamage(damage);
+                       if (envEvent.player_damage.send_to_server)
+                               sendDamage(damage);
 
-                               // Add to ClientEvent queue
-                               ClientEvent *event = new ClientEvent();
-                               event->type = CE_PLAYER_DAMAGE;
-                               event->player_damage.amount = damage;
-                               m_client_event_queue.push(event);
-                       }
+                       // Add to ClientEvent queue
+                       ClientEvent *event = new ClientEvent();
+                       event->type = CE_PLAYER_DAMAGE;
+                       event->player_damage.amount = damage;
+                       m_client_event_queue.push(event);
                }
        }
 
index d8b56b0b35a3ebab888014a7f41251fe0e064335..06c67105f72420c90d8afbfb23b4eb1fd412f732 100644 (file)
@@ -469,7 +469,6 @@ private:
        float m_connection_reinit_timer = 0.1f;
        float m_avg_rtt_timer = 0.0f;
        float m_playerpos_send_timer = 0.0f;
-       float m_ignore_damage_timer = 0.0f; // Used after server moves player
        IntervalLimiter m_map_timer_and_unload_interval;
 
        IWritableTextureSource *m_tsrc;
index b5e2203c83e5edba5a94d45eff0ab0c7d4167078..5de99418e5c183def4cfb9683de5de3df5fd7df9 100644 (file)
@@ -573,10 +573,6 @@ void Client::handleCommand_MovePlayer(NetworkPacket* pkt)
        event->player_force_move.pitch = pitch;
        event->player_force_move.yaw = yaw;
        m_client_event_queue.push(event);
-
-       // Ignore damage for a few seconds, so that the player doesn't
-       // get damage from falling on ground
-       m_ignore_damage_timer = 3.0;
 }
 
 void Client::handleCommand_DeathScreen(NetworkPacket* pkt)