From 16662eaed7765e8b780c1fa55383849a4ef56e5e Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Sat, 1 Apr 2023 18:34:03 +0800 Subject: [PATCH] 1 --- server/gameserver/incubator.cc | 41 ++++++++++++++++++---------------- 1 file changed, 22 insertions(+), 19 deletions(-) diff --git a/server/gameserver/incubator.cc b/server/gameserver/incubator.cc index 631493fb..193cdf75 100644 --- a/server/gameserver/incubator.cc +++ b/server/gameserver/incubator.cc @@ -83,34 +83,37 @@ void Incubator::AllocAndroid(Human* target, int num) 10 * room->GetMapMeta()->scale(), point )) { + room->map_instance->UnScale(point); Global::Instance()->verify_set_pos = 1; hum->GetMutablePos().FromGlmVec3(point); Global::Instance()->verify_set_pos = 0; - room->EnableHuman(hum); + if (!CanSee(hum, target)) { + room->EnableHuman(hum); #ifdef DEBUG #if 0 - if (!target->InNewObjects(hum)) { - A8_ABORT(); - } + if (!target->InNewObjects(hum)) { + A8_ABORT(); + } #endif - if (hum->dead) { - A8_ABORT(); - } + if (hum->dead) { + A8_ABORT(); + } #endif - hum->MustBeAddBuff(hum, kTraceBuffId); - hold_humans_.erase(hold_humans_.begin()); - --num; + hum->MustBeAddBuff(hum, kTraceBuffId); + hold_humans_.erase(hold_humans_.begin()); + --num; #ifdef DEBUG - room->BroadcastDebugMsg(a8::Format("投放机器人 %d:%s pos:%d,%d pos1:%d,%d %d num:%d", - {hum->GetUniId(), - hum->name, - hum->GetPos().GetX(), - hum->GetPos().GetY(), - target->GetPos().GetX(), - target->GetPos().GetY(), - hum->GetPos().Distance2D2(target->GetPos()), - hold_humans_.size()})); + room->BroadcastDebugMsg(a8::Format("投放机器人 %d:%s pos:%d,%d pos1:%d,%d %d num:%d", + {hum->GetUniId(), + hum->name, + hum->GetPos().GetX(), + hum->GetPos().GetY(), + target->GetPos().GetX(), + target->GetPos().GetY(), + hum->GetPos().Distance2D2(target->GetPos()), + hold_humans_.size()})); #endif + } } ++try_count; }