This commit is contained in:
aozhiwei 2023-12-05 18:01:37 +08:00
parent c5f00c2ae2
commit 358c150f66
2 changed files with 12 additions and 3 deletions

View File

@ -3830,6 +3830,9 @@ void Creature::AddSkillHoldState(int skill_id)
TryAddBuff(this, TryAddBuff(this,
skill->meta->skill_hold_buff()); skill->meta->skill_hold_buff());
} }
#ifdef MYDEBUG1
a8::XPrintf("AddSkillHoldState %d\n", {skill_id});
#endif
} }
void Creature::ClearSkillHoldState() void Creature::ClearSkillHoldState()
@ -3842,4 +3845,7 @@ void Creature::ClearSkillHoldState()
skill_hold_skill_id = 0; skill_hold_skill_id = 0;
skill_hold_start_frameno = 0; skill_hold_start_frameno = 0;
} }
if (IsPlayer()) {
AsPlayer()->skill_hold = 0;
}
} }

View File

@ -265,8 +265,10 @@ void Player::InternalUpdate(int delta_time)
} }
if (skill_hold) { if (skill_hold) {
if (skill_hold_skill_id != skill_hold) { if (skill_hold_skill_id != skill_hold) {
int old_skill_hold = skill_hold;
ClearSkillHoldState(); ClearSkillHoldState();
AddSkillHoldState(skill_hold); AddSkillHoldState(old_skill_hold);
skill_hold = old_skill_hold;
} }
} else { } else {
ClearSkillHoldState(); ClearSkillHoldState();
@ -931,10 +933,11 @@ void Player::_CMMove(f8::MsgHdr* hdr, const cs::CMMove& msg)
} }
#endif #endif
#ifdef MYDEBUG1 #ifdef MYDEBUG1
a8::XPrintf("CMMove.Shot shot_sart%d shot_hold:%d\n", a8::XPrintf("CMMove.Shot shot_sart:%d shot_hold:%d skill_hold:%d\n",
{ {
msg.shot_start(), msg.shot_start(),
msg.shot_hold() msg.shot_hold(),
msg.skill_hold()
}); });
#endif #endif
long long pre_frameno = last_cmmove_frameno_; long long pre_frameno = last_cmmove_frameno_;