diff --git a/server/gameserver/buff.cc b/server/gameserver/buff.cc index 2ffbe7e0..4ae3ac6f 100644 --- a/server/gameserver/buff.cc +++ b/server/gameserver/buff.cc @@ -93,7 +93,11 @@ void Buff::InternalTimerAddBuff() auto caster_state = std::make_shared(); caster_.Get()->FillSkillCasterState(caster_state.get()); + #if 1 + const mt::Skill* skill = skill_meta; + #else const mt::Skill* skill = caster_.Get()->CurrentSkillMeta(); + #endif auto timer_func = [this, caster_state, skill] (int event, const a8::Args* args) { diff --git a/server/gameserver/creature.cc b/server/gameserver/creature.cc index ce0014d6..5f06c0f7 100644 --- a/server/gameserver/creature.cc +++ b/server/gameserver/creature.cc @@ -141,6 +141,7 @@ int Creature::AddBuff(Creature* caster, } } #endif + int buff_id = buff_meta->buff_id(); if (buff_meta->_only_spec_race) { if (!a8::HasBitFlag(buff_meta->_only_spec_race, GetEntityType())) { return 0; diff --git a/server/gameserver/mt/SkillNumber.cc b/server/gameserver/mt/SkillNumber.cc index 4d238bc2..1b587bd3 100644 --- a/server/gameserver/mt/SkillNumber.cc +++ b/server/gameserver/mt/SkillNumber.cc @@ -152,6 +152,16 @@ namespace mt return shield_addition(); } break; + case SkillNumberLispField_e::resume: + { + return resume(); + } + break; + case SkillNumberLispField_e::resume_addition: + { + return resume_addition(); + } + break; case SkillNumberLispField_e::speed: { return _float_speed;