diff --git a/EXILED/Exiled.API/Features/Room.cs b/EXILED/Exiled.API/Features/Room.cs index dc880fe69c..9fde18957c 100644 --- a/EXILED/Exiled.API/Features/Room.cs +++ b/EXILED/Exiled.API/Features/Room.cs @@ -132,7 +132,16 @@ public class Room : MonoBehaviour, IWorldSpace /// /// Gets a of around the . /// - public IReadOnlyList NearestRooms { get; private set; } + public IReadOnlyList NearestRooms + { + get + { + if (NearestRoomsValue.Count == 0 && Identifier.ConnectedRooms.Count > 0) + NearestRoomsValue.AddRange(Identifier.ConnectedRooms.Select(Get)); + + return NearestRoomsValue; + } + } /// /// Gets a of in the . @@ -438,7 +447,6 @@ internal void InternalCreate() Windows = WindowsValue.AsReadOnly(); Doors = DoorsValue.AsReadOnly(); - NearestRooms = NearestRoomsValue.AsReadOnly(); Speakers = SpeakersValue.AsReadOnly(); Cameras = CamerasValue.AsReadOnly(); } diff --git a/EXILED/Exiled.Events/Patches/Generic/DoorList.cs b/EXILED/Exiled.Events/Patches/Generic/DoorList.cs index 8ae6a40910..2057bbd0f5 100644 --- a/EXILED/Exiled.Events/Patches/Generic/DoorList.cs +++ b/EXILED/Exiled.Events/Patches/Generic/DoorList.cs @@ -76,7 +76,6 @@ private static void InitDoor(DoorVariant doorVariant) foreach (Room room in rooms) { room.DoorsValue.Add(door); - room.NearestRoomsValue.AddRange(rooms.Except(new List() { room })); } if (door.Is(out CheckpointDoor checkpoint))