1
This commit is contained in:
parent
c214855db9
commit
744994c579
@ -132,16 +132,21 @@ void CallFuncBuff::ProcAddMinorMode()
|
||||
float dur_time = meta->GetBuffParam3(this);
|
||||
Skill* skill = owner->GetSkill(skill_meta->skill_id());
|
||||
if (skill) {
|
||||
auto owner_ptr = owner->GetWeakPtrRef();
|
||||
auto meta_ptr = meta;
|
||||
auto skill_meta_ptr = skill_meta;
|
||||
skill->AddMinorMode
|
||||
(
|
||||
meta->_int_buff_param2,
|
||||
dur_time * 1000,
|
||||
[this] (int action)
|
||||
[owner_ptr, meta_ptr, skill_meta_ptr] (int action) mutable
|
||||
{
|
||||
if (action == 0) {
|
||||
owner->TryAddBuff(owner, meta->_int_buff_param4, skill_meta);
|
||||
} else if (action) {
|
||||
owner->TryAddBuff(owner, meta->_int_buff_param5, skill_meta);
|
||||
if (owner_ptr.Get()) {
|
||||
if (action == 1) {
|
||||
owner_ptr.Get()->TryAddBuff(owner_ptr.Get(), meta_ptr->_int_buff_param4, skill_meta_ptr);
|
||||
} else if (action) {
|
||||
owner_ptr.Get()->TryAddBuff(owner_ptr.Get(), meta_ptr->_int_buff_param5, skill_meta_ptr);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
@ -828,8 +828,7 @@ bool Creature::CanUseSkill(int skill_id)
|
||||
if (HasBuffEffect(kBET_Vertigo) ||
|
||||
HasBuffEffect(kBET_Jump) ||
|
||||
HasBuffEffect(kBET_Fly) ||
|
||||
HasBuffEffect(kBET_MachineGun) ||
|
||||
HasBuffEffect(kBET_Sprint)) {
|
||||
HasBuffEffect(kBET_MachineGun)) {
|
||||
return false;
|
||||
}
|
||||
if (skill->force_use_times > 0) {
|
||||
|
@ -186,7 +186,9 @@ void Skill::AddMinorMode(
|
||||
minor_type_ = SMT_NONE;
|
||||
minor_cd_time_ = 0;
|
||||
minor_frameno_ = 0;
|
||||
minor_cb_(0);
|
||||
if (minor_cb_) {
|
||||
minor_cb_(0);
|
||||
}
|
||||
minor_cb_ = nullptr;
|
||||
}
|
||||
},
|
||||
|
Loading…
x
Reference in New Issue
Block a user