diff --git a/server/gameserver/bullet.cc b/server/gameserver/bullet.cc index 9cb47d6..5024017 100644 --- a/server/gameserver/bullet.cc +++ b/server/gameserver/bullet.cc @@ -451,6 +451,11 @@ void Bullet::AddGunBuff() std::shared_ptr old_context_ability = sender.Get()->context_ability; a8::Vec2 old_context_pos = sender.Get()->context_pos; sender.Get()->context_pos = GetPos(); + if (IsCurrWeapon()) { + sender.Get()->context_ability = ability_; + } else { + sender.Get()->context_ability = nullptr; + } MetaData::Buff * buff_meta = MetaMgr::Instance()->GetBuff(gun_meta->i->buffid()); if (buff_meta) { sender.Get()->AddBuff(sender.Get(),