From acdfbeb9caadb29de68445219fa2282e61734346 Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Sat, 27 Aug 2022 11:10:38 +0800 Subject: [PATCH] 1 --- server/gameserver/roomobstacle.cc | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/server/gameserver/roomobstacle.cc b/server/gameserver/roomobstacle.cc index f179010d..660fab09 100644 --- a/server/gameserver/roomobstacle.cc +++ b/server/gameserver/roomobstacle.cc @@ -1,5 +1,7 @@ #include "precompile.h" +#include + #include "metamgr.h" #include "room.h" #include "collider.h" @@ -12,6 +14,8 @@ #include "roomobstacle.h" #include "explosion.h" #include "entityfactory.h" +#include "player.h" +#include "incubator.h" RoomObstacle::RoomObstacle():Obstacle() { @@ -907,4 +911,24 @@ void RoomObstacle::ActivePortal() if (room->IsGameOver()) { return; } + bool ready = true; + room->TraversePlayerList + ( + a8::XParams(), + [this, &ready] (Player* hum, a8::XParams& param) + { + if (!a8::IntersectCircleCircle + ( + hum->GetPos(), + hum->GetRadius(), + GetPos(), + meta->i->height() + )) { + ready = false; + } + } + ); + if (ready) { + room->GetIncubator()->NextWave(); + } }