diff --git a/server/gameserver/roomobstacle.cc b/server/gameserver/roomobstacle.cc index b1d5bd84..301b5c17 100644 --- a/server/gameserver/roomobstacle.cc +++ b/server/gameserver/roomobstacle.cc @@ -846,6 +846,19 @@ void RoomObstacle::ActiveMedicalStation() { RoomObstacle* obstacle = (RoomObstacle*)param.sender.GetUserData(); Room* room = obstacle->room; + std::set target_list; + room->grid_service->TraverseCreatures + (room->GetRoomIdx(), + *obstacle->grid_list_, + [obstacle, &target_list, room] (Creature* hum, bool& stop) + { + if (obstacle->master.Get()->team_id == hum->team_id && + obstacle->TestCollision(room, hum)) { + target_list.insert(hum); + } + } + ); + }, &xtimer_attacher.timer_list_ );