From f09848d049028a11d05ecc435cd717299bd80b5e Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Wed, 15 Feb 2023 19:42:27 +0800 Subject: [PATCH] 1 --- server/gameserver/skill.cc | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/server/gameserver/skill.cc b/server/gameserver/skill.cc index c3d66001..15d9268f 100644 --- a/server/gameserver/skill.cc +++ b/server/gameserver/skill.cc @@ -630,8 +630,6 @@ void Skill::Proc30601DJS() { a8::XTimerWp passive_skill_timer; { - const mt::Skill* active_skill_meta = nullptr; - std::set in_range_humans; auto on_enter = [this] (Human* num, const mt::Skill* active_skill_meta) { @@ -699,8 +697,17 @@ void Skill::Proc30601DJS() on_stay(hit_humans[i], active_skill_meta); } } + } else { + if (!in_range_humans.empty()) { + for (Human* hum : in_range_humans) { + on_leave(hum, active_skill_meta); + } + in_range_humans.clear(); + } } }; + const mt::Skill* active_skill_meta = nullptr; + std::set in_range_humans; passive_skill_timer = owner->room->xtimer.SetIntervalWpEx ( SERVER_FRAME_RATE,