This commit is contained in:
aozhiwei 2024-05-15 15:56:24 +08:00
parent ee70076369
commit 08243f9f9b
4 changed files with 25 additions and 1 deletions

View File

@ -374,6 +374,8 @@ enum EventAddBuff_e
kEventBuffLimitTimeKillTarget = 17,
kEventBuffRevive = 18,
kEventBuffDmgOut = 19,
kEventEnterBattleMode = 20,
kEventLeaveBattleMode = 21,
kEventBuffEnd
};

View File

@ -1176,6 +1176,7 @@ void Creature::Initialize()
},
&xtimer_attacher);
}
GetTrigger()->LeaveBattleMode();
} else if (kRemoveNatureRecoverTimerEvent == event) {
room->xtimer.ModifyTime
(nature_recover_hp_idle_timer,
@ -1183,6 +1184,7 @@ void Creature::Initialize()
if (!nature_recover_hp_timer.expired()) {
room->xtimer.Delete(nature_recover_hp_timer);
}
GetTrigger()->EnterBattleMode();
}
},
&xtimer_attacher);

View File

@ -670,3 +670,21 @@ void Trigger::ClearDelayDelHandlers()
e->holder = nullptr;
}
}
void Trigger::EnterBattleMode()
{
TraverseCondBuffs
(kEventEnterBattleMode,
[this] (Buff* buff, bool& stop)
{
});
}
void Trigger::LeaveBattleMode()
{
TraverseCondBuffs
(kEventLeaveBattleMode,
[this] (Buff* buff, bool& stop)
{
});
}

View File

@ -36,7 +36,7 @@ enum EventId_e
kDownedEvent,
kUpdateEnergyShieldEvent,
kDestoryEnergyShieldEvent,
kCrazeModeEvent
kCrazeModeEvent,
};
class Weapon;
@ -87,6 +87,8 @@ public:
void UpdateEnergyShield(int value, int new_time);
void DestoryEnergyShield();
void EnterCrazeMode();
void EnterBattleMode();
void LeaveBattleMode();
std::weak_ptr<EventHandler> AddListener(int event_id, a8::CommonCbProc cb);
void RemoveEventHandler(std::weak_ptr<EventHandler> handler_ptr);