This commit is contained in:
aozhiwei 2023-10-23 14:36:13 +08:00
parent df2251c4cd
commit 96232241dd
4 changed files with 25 additions and 0 deletions

View File

@ -937,6 +937,11 @@ void Creature::DoSkill(int skill_id,
a8::XPrintf("DoSkill minor_type:%d\n", {skill->GetMinorType()});
#endif
RemoveBuffByEffectId(kBET_Hide);
if (!nature_recover_hp_idle_timer.expired()) {
room->xtimer.ModifyTime
(nature_recover_hp_idle_timer,
SERVER_FRAME_RATE * mt::Param::s().nature_recover_hp_idletime);
}
if (skill->GetMinorType()) {
SetAttackDir(skill_dir);
skill->DoMinorMode();

View File

@ -2304,6 +2304,11 @@ void Human::OnBulletHit(IBullet* bullet)
RemoveBuffByEffectId(kBET_PeaceMode);
RemoveBuffByEffectId(kBET_Hide);
if (!nature_recover_hp_idle_timer.expired()) {
room->xtimer.ModifyTime
(nature_recover_hp_idle_timer,
SERVER_FRAME_RATE * mt::Param::s().nature_recover_hp_idletime);
}
GetTrigger()->Attacked(bullet->GetSender().Get());
if (!dead && (bullet->IsBomb() || bullet->GetSender().Get()->team_id != team_id)) {
float finaly_dmg = 0;
@ -2452,6 +2457,11 @@ void Human::OnExplosionHit(Explosion* e)
RemoveBuffByEffectId(kBET_PeaceMode);
RemoveBuffByEffectId(kBET_Hide);
if (!nature_recover_hp_idle_timer.expired()) {
room->xtimer.ModifyTime
(nature_recover_hp_idle_timer,
SERVER_FRAME_RATE * mt::Param::s().nature_recover_hp_idletime);
}
float finaly_dmg = GetBattleContext()->CalcDmg(e);
#if 1
{

View File

@ -1709,6 +1709,11 @@ void Player::UpdateThrowBomb()
if (HasBuffEffect(kBET_Hide)) {
RemoveBuffByEffectId(kBET_Hide);
}
if (!nature_recover_hp_idle_timer.expired()) {
room->xtimer.ModifyTime
(nature_recover_hp_idle_timer,
SERVER_FRAME_RATE * mt::Param::s().nature_recover_hp_idletime);
}
--weapon.ammo;
room->frame_event.AddPropChgEx
(

View File

@ -586,6 +586,11 @@ void InternalShot(Creature* c,
if (trace_target_uniid) {
c->LockAttackDir(1000);
}
if (!c->nature_recover_hp_idle_timer.expired()) {
c->room->xtimer.ModifyTime
(c->nature_recover_hp_idle_timer,
SERVER_FRAME_RATE * mt::Param::s().nature_recover_hp_idletime);
}
if (c->aiming) {
c->aiming = false;
c->aiming_frameno = 0;