diff --git a/server/gameserver/skill.cc b/server/gameserver/skill.cc index 4a59ad8..36a5f2e 100644 --- a/server/gameserver/skill.cc +++ b/server/gameserver/skill.cc @@ -7,6 +7,7 @@ void Skill::Initialzie() { + curr_times_ = GetMaxTimes(); switch (meta->i->skill_type()) { case kActiveSkill: { @@ -135,8 +136,11 @@ void Skill::NotifySkillState() void Skill::ResetSkillCd() { - curr_times_ = 0; - if (inc_times_timer_) { - owner->room->xtimer.ModifyTimer(inc_times_timer_, GetCd() / FRAME_RATE_MS); + if (meta->i->skill_id() != TURN_OVER_SKILL_ID) { + curr_times_ = 0; + if (inc_times_timer_) { + owner->room->xtimer.ModifyTimer(inc_times_timer_, GetCd() / FRAME_RATE_MS); + NotifySkillState(); + } } }