]> git.lizzy.rs Git - dragonfireclient.git/commitdiff
Send HUD flags only if changed
authorLars Müller <34514239+appgurueu@users.noreply.github.com>
Tue, 8 Feb 2022 18:28:32 +0000 (19:28 +0100)
committerGitHub <noreply@github.com>
Tue, 8 Feb 2022 18:28:32 +0000 (19:28 +0100)
src/server.cpp

index df7083b6839a1e775e7d5dc683f7448a08e77998..76345686ad6f530e41efb01808691ce0b505eb48 100644 (file)
@@ -3271,9 +3271,12 @@ bool Server::hudSetFlags(RemotePlayer *player, u32 flags, u32 mask)
        if (!player)
                return false;
 
+       u32 new_hud_flags = (player->hud_flags & ~mask) | flags;
+       if (new_hud_flags == player->hud_flags) // no change
+               return true;
+       
        SendHUDSetFlags(player->getPeerId(), flags, mask);
-       player->hud_flags &= ~mask;
-       player->hud_flags |= flags;
+       player->hud_flags = new_hud_flags;
 
        PlayerSAO* playersao = player->getPlayerSAO();