From 395d8d2246c63a28005c5687f883475e8104b1ad Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Wed, 5 Apr 2023 16:28:07 +0800 Subject: [PATCH] 1 --- server/gameserver/buff/cond_add.cc | 9 +++++---- server/gameserver/room.cc | 2 ++ 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/server/gameserver/buff/cond_add.cc b/server/gameserver/buff/cond_add.cc index ee11a63b..82d4ad41 100644 --- a/server/gameserver/buff/cond_add.cc +++ b/server/gameserver/buff/cond_add.cc @@ -154,9 +154,10 @@ void CondAddBuff::ProcDisengageBattle() std::vector> hold_buff_list; long long last_check_frameno = 0; bool handled = false; + a8::XTimerWp timer; ); - a8::XTimerWp timer = owner->room->xtimer.SetIntervalWpEx + context->timer = owner->room->xtimer.SetIntervalWpEx ( disengate_time * SERVER_FRAME_RATE, [this, context] (int event, const a8::Args* args) @@ -193,9 +194,9 @@ void CondAddBuff::ProcDisengageBattle() &xtimer_attacher); auto cb = - [this, timer, context] (const a8::Args& args) mutable + [this, context] (const a8::Args& args) mutable { - if (timer.expired()) { + if (context->timer.expired()) { return; } if (!meta->_buff_param5_int_set.empty() && @@ -209,7 +210,7 @@ void CondAddBuff::ProcDisengageBattle() context->hold_buff_list.clear(); } context->handled = false; - owner->room->xtimer.ResetTimer(timer); + owner->room->xtimer.ResetTimer(context->timer); }; event_handlers_.push_back diff --git a/server/gameserver/room.cc b/server/gameserver/room.cc index e12d6a45..b86f0dce 100644 --- a/server/gameserver/room.cc +++ b/server/gameserver/room.cc @@ -2968,9 +2968,11 @@ void Room::SyncFrameData() pair.second->SendUpdateMsg(); #ifdef DEBUG end_tick = a8::XGetTickCount(); + #if 0 if (a8::XGetTickCount() - begin_tick > 100) { A8_ABORT(); } + #endif begin_tick = a8::XGetTickCount(); #endif }