1
This commit is contained in:
parent
c1bac01e29
commit
fcb992a54e
@ -79,7 +79,10 @@ void CallFuncBuff::Deactivate()
|
|||||||
switch ((BuffCallFunc_e)meta->_int_buff_param1) {
|
switch ((BuffCallFunc_e)meta->_int_buff_param1) {
|
||||||
case BuffCallFunc_e::kAddMinorMode:
|
case BuffCallFunc_e::kAddMinorMode:
|
||||||
{
|
{
|
||||||
|
if (skill_meta) {
|
||||||
|
Skill* skill = owner->GetSkill(skill_meta->skill_id());
|
||||||
|
skill->CancelMinorMode();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case BuffCallFunc_e::kSpeedReduce:
|
case BuffCallFunc_e::kSpeedReduce:
|
||||||
@ -150,7 +153,7 @@ void CallFuncBuff::ProcAddMinorMode()
|
|||||||
if (owner_ptr.Get()) {
|
if (owner_ptr.Get()) {
|
||||||
if (action == 1) {
|
if (action == 1) {
|
||||||
owner_ptr.Get()->TryAddBuff(owner_ptr.Get(), meta_ptr->_int_buff_param4, skill_meta_ptr);
|
owner_ptr.Get()->TryAddBuff(owner_ptr.Get(), meta_ptr->_int_buff_param4, skill_meta_ptr);
|
||||||
} else if (action) {
|
} else if (action == 0) {
|
||||||
owner_ptr.Get()->TryAddBuff(owner_ptr.Get(), meta_ptr->_int_buff_param5, skill_meta_ptr);
|
owner_ptr.Get()->TryAddBuff(owner_ptr.Get(), meta_ptr->_int_buff_param5, skill_meta_ptr);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1261,3 +1261,14 @@ void Skill::ProcJumpToPhase(const mt::SkillPhase* phase)
|
|||||||
Global::Instance()->verify_set_pos = 0;
|
Global::Instance()->verify_set_pos = 0;
|
||||||
owner->room->grid_service->MoveCreature(owner);
|
owner->room->grid_service->MoveCreature(owner);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void Skill::CancelMinorMode()
|
||||||
|
{
|
||||||
|
if (GetMinorType() != SMT_NONE) {
|
||||||
|
minor_cb_(2);
|
||||||
|
minor_cb_ = nullptr;
|
||||||
|
if (!minor_mode_timer_.expired()) {
|
||||||
|
owner->room->xtimer.Delete(minor_mode_timer_);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@ -42,6 +42,7 @@ class Skill
|
|||||||
std::function<void(int)> cb
|
std::function<void(int)> cb
|
||||||
);
|
);
|
||||||
void DoMinorMode();
|
void DoMinorMode();
|
||||||
|
void CancelMinorMode();
|
||||||
void ProcSkillPhase(const mt::SkillPhase* phase);
|
void ProcSkillPhase(const mt::SkillPhase* phase);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user