1
This commit is contained in:
parent
bc9aab25c6
commit
d8447a90c5
@ -1169,10 +1169,11 @@ void Creature::Initialize()
|
||||
}
|
||||
if (IsHuman()) {
|
||||
a8::XTimerWp nature_recover_hp_timer;
|
||||
auto battling_state = std::make_shared<bool>(true);
|
||||
nature_recover_hp_idle_timer = room->xtimer.SetIntervalWpEx
|
||||
(
|
||||
SERVER_FRAME_RATE * mt::Param::s().nature_recover_hp_idletime,
|
||||
[this, nature_recover_hp_timer] (int event, const a8::Args* args) mutable
|
||||
[this, nature_recover_hp_timer, battling_state] (int event, const a8::Args* args) mutable
|
||||
{
|
||||
if (a8::TIMER_EXEC_EVENT == event) {
|
||||
if (nature_recover_hp_timer.expired() && !HasBuffEffect(kBET_Dive)) {
|
||||
@ -1193,7 +1194,10 @@ void Creature::Initialize()
|
||||
},
|
||||
&xtimer_attacher);
|
||||
}
|
||||
if (*battling_state) {
|
||||
*battling_state = false;
|
||||
GetTrigger()->LeaveBattleMode();
|
||||
}
|
||||
} else if (kRemoveNatureRecoverTimerEvent == event) {
|
||||
room->xtimer.ModifyTime
|
||||
(nature_recover_hp_idle_timer,
|
||||
@ -1201,6 +1205,7 @@ void Creature::Initialize()
|
||||
if (!nature_recover_hp_timer.expired()) {
|
||||
room->xtimer.Delete(nature_recover_hp_timer);
|
||||
}
|
||||
*battling_state = true;
|
||||
GetTrigger()->EnterBattleMode();
|
||||
}
|
||||
},
|
||||
|
Loading…
x
Reference in New Issue
Block a user