diff --git a/server/gameserver/creature.cc b/server/gameserver/creature.cc index 1b8fc381..365be045 100644 --- a/server/gameserver/creature.cc +++ b/server/gameserver/creature.cc @@ -1602,6 +1602,11 @@ void Creature::Shot(glm::vec3& target_dir, bool& shot_ok, float fly_distance, in void Creature::AutoLoadingBullet(bool manual) { + if (HasBuffEffect(kBET_Jump) || + HasBuffEffect(kBET_Fly) || + HasBuffEffect(kBET_Floating)) { + return; + } Weapon* p_weapon = GetCurrWeapon(); if (second_weapon.meta) { p_weapon = &second_weapon; diff --git a/server/gameserver/player.cc b/server/gameserver/player.cc index 2f946d44..6ffc9bc7 100644 --- a/server/gameserver/player.cc +++ b/server/gameserver/player.cc @@ -486,6 +486,9 @@ void Player::UpdateUseItemIdx() if (room->HasRoomSwitch(kRoomSwitchDisableUseItem)) { return; } + if (HasBuffEffect(kBET_Vertigo)) { + return; + } #if 0 if (use_item_idx == 24) { use_item_idx = IS_SHEN_BAO;