1
This commit is contained in:
parent
1a51c6df3f
commit
7a0a2db3cc
@ -11,25 +11,12 @@ void Skill::Initialzie()
|
||||
switch (meta->i->skill_type()) {
|
||||
case kActiveSkill:
|
||||
{
|
||||
inc_times_timer_ = owner->room->xtimer.AddRepeatTimerAndAttach
|
||||
(
|
||||
GetCd() / FRAME_RATE_MS,
|
||||
a8::XParams()
|
||||
.SetSender(this),
|
||||
[] (const a8::XParams& param)
|
||||
{
|
||||
Skill* skill = (Skill*)param.sender.GetUserData();
|
||||
if (skill->GetCurrTimes() < skill->GetMaxTimes()) {
|
||||
skill->curr_times_++;
|
||||
skill->NotifySkillState();
|
||||
}
|
||||
},
|
||||
&xtimer_attacher.timer_list_);
|
||||
InitActiveSkill();
|
||||
}
|
||||
break;
|
||||
case kPassiveSkill:
|
||||
{
|
||||
|
||||
InitPassiveSkill();
|
||||
}
|
||||
break;
|
||||
default:
|
||||
@ -249,3 +236,131 @@ void Skill::DoMinorMode()
|
||||
owner->need_sync_active_player = true;
|
||||
}
|
||||
}
|
||||
|
||||
void Skill::InitActiveSkill()
|
||||
{
|
||||
inc_times_timer_ = owner->room->xtimer.AddRepeatTimerAndAttach
|
||||
(
|
||||
GetCd() / FRAME_RATE_MS,
|
||||
a8::XParams()
|
||||
.SetSender(this),
|
||||
[] (const a8::XParams& param)
|
||||
{
|
||||
Skill* skill = (Skill*)param.sender.GetUserData();
|
||||
if (skill->GetCurrTimes() < skill->GetMaxTimes()) {
|
||||
skill->curr_times_++;
|
||||
skill->NotifySkillState();
|
||||
}
|
||||
},
|
||||
&xtimer_attacher.timer_list_);
|
||||
}
|
||||
|
||||
void Skill::InitPassiveSkill()
|
||||
{
|
||||
switch (meta->GetMagicId()) {
|
||||
case MAGIC_SJXY:
|
||||
{
|
||||
ProcSJXY();
|
||||
}
|
||||
break;
|
||||
case MAGIC_SSJS:
|
||||
{
|
||||
ProcSSJS();
|
||||
}
|
||||
break;
|
||||
case MAGIC_JSHX:
|
||||
{
|
||||
ProcJSHX();
|
||||
}
|
||||
break;
|
||||
case MAGIC_SWZB:
|
||||
{
|
||||
ProcSWZB();
|
||||
}
|
||||
break;
|
||||
case MAGIC_CMXD:
|
||||
{
|
||||
ProcCMXD();
|
||||
}
|
||||
break;
|
||||
case MAGIC_MYXY:
|
||||
{
|
||||
ProcMYXY();
|
||||
}
|
||||
break;
|
||||
case MAGIC_GZJS:
|
||||
{
|
||||
ProcGZJS();
|
||||
}
|
||||
break;
|
||||
case MAGIC_JYFH:
|
||||
{
|
||||
ProcJYFH();
|
||||
}
|
||||
break;
|
||||
case MAGIC_FH:
|
||||
{
|
||||
ProcFH();
|
||||
}
|
||||
break;
|
||||
case MAGIC_YSHF:
|
||||
{
|
||||
ProcYSHF();
|
||||
}
|
||||
break;
|
||||
default:
|
||||
{
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void Skill::ProcSJXY()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void Skill::ProcSSJS()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void Skill::ProcJSHX()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void Skill::ProcSWZB()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void Skill::ProcCMXD()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void Skill::ProcMYXY()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void Skill::ProcGZJS()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void Skill::ProcJYFH()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void Skill::ProcFH()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void Skill::ProcYSHF()
|
||||
{
|
||||
|
||||
}
|
||||
|
@ -53,7 +53,22 @@ class Skill
|
||||
void AddPassiveSkillBuff();
|
||||
|
||||
private:
|
||||
void InitActiveSkill();
|
||||
void InitPassiveSkill();
|
||||
|
||||
void NotifySkillState();
|
||||
|
||||
void ProcSJXY();
|
||||
void ProcSSJS();
|
||||
void ProcJSHX();
|
||||
void ProcSWZB();
|
||||
void ProcCMXD();
|
||||
void ProcMYXY();
|
||||
void ProcGZJS();
|
||||
void ProcJYFH();
|
||||
void ProcFH();
|
||||
void ProcYSHF();
|
||||
|
||||
private:
|
||||
int curr_times_ = 0;
|
||||
xtimer_list* inc_times_timer_ = nullptr;
|
||||
|
Loading…
x
Reference in New Issue
Block a user