diff --git a/server/gameserver/player.cc b/server/gameserver/player.cc index 4f82b81..03f9cc1 100644 --- a/server/gameserver/player.cc +++ b/server/gameserver/player.cc @@ -175,13 +175,16 @@ void Player::UpdateSelectWeapon() return; } if (selected_weapon_idx >= 0 && selected_weapon_idx < weapons.size()) { + Weapon* old_weapon = curr_weapon; Weapon* weapon = &weapons[selected_weapon_idx]; if (weapon->weapon_id != 0) { curr_weapon = weapon; ResetAction(); need_sync_active_player = true; SyncAroundPlayers(); - AutoLoadingBullet(); + if (old_weapon != weapon) { + AutoLoadingBullet(); + } } } select_weapon = false;