diff --git a/server/gameserver/creature.cc b/server/gameserver/creature.cc index b6e9f98..de522bc 100644 --- a/server/gameserver/creature.cc +++ b/server/gameserver/creature.cc @@ -772,7 +772,8 @@ void Creature::DoSkill(int skill_id, const a8::Vec2& target_pos) { if (HasBuffEffect(kBET_Jump) || - HasBuffEffect(kBET_Fly)) { + HasBuffEffect(kBET_Fly) || + HasBuffEffect(kBET_Sprint)) { return; } DoSkillPreProc(skill_id, target_id, target_pos); @@ -1536,6 +1537,12 @@ void Creature::Shot(a8::Vec2& target_dir, bool& shot_ok, float fly_distance) return; } + if (HasBuffEffect(kBET_Jump) || + HasBuffEffect(kBET_Fly) || + HasBuffEffect(kBET_Sprint)) { + return; + } + if (GetCurrWeapon()->weapon_idx != 0 && GetCurrWeapon()->ammo <= 0) { AutoLoadingBullet();