From a529321b18e51cff48d0ca82103e076aec6fc1b2 Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Thu, 28 Mar 2024 15:35:57 +0800 Subject: [PATCH] 1 --- server/gameserver/room.cc | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/server/gameserver/room.cc b/server/gameserver/room.cc index a8f97956..bbefa9d5 100644 --- a/server/gameserver/room.cc +++ b/server/gameserver/room.cc @@ -159,7 +159,7 @@ void Room::Init() }, &xtimer_attacher_); xtimer.SetIntervalWpEx - (SERVER_FRAME_RATE * 3, + (SERVER_FRAME_RATE * 1, [this] (int event, const a8::Args* args) { if (a8::TIMER_EXEC_EVENT == event) { @@ -3739,12 +3739,12 @@ void Room::MobaBatterysUpdate() } return true; }); - if (!target.Get()) { + if (!target.Get() || last_distance <= 0.000001f) { break; } - glm::vec3 bullet_dir = GlmHelper::UP; - GlmHelper::RotateY(bullet_dir, glm::radians(1.0f + (float)(rand() % 360))); + glm::vec3 bullet_dir = target.Get()->GetPos().ToGlmVec3() - center; + GlmHelper::Normalize(bullet_dir); const mt::Equip* weapon_meta = mt::Equip::GetById(std::get<2>(tuple)); if (!weapon_meta) { @@ -3761,7 +3761,7 @@ void Room::MobaBatterysUpdate() 1, bullet_born_pos, bullet_dir, - 0, + 0, //last_distance, 0, 0, nullptr,