public static bool TryLoadRoomInstance(uint RoomId) { lock (mRoomInstances) { RoomInstance OldInstance = GetInstanceByRoomId(RoomId); if (OldInstance != null) { return(false); // instance already exists, bail! } uint NewInstanceId = GenerateInstanceId(); RoomInstance Instance = RoomInstance.TryCreateRoomInstance(NewInstanceId, RoomId); if (Instance == null) { return(false); } lock (mRoomInstances) { mRoomInstances.Add(NewInstanceId, Instance); } Output.WriteLine("[RoomMgr] Room instance " + NewInstanceId + " has been loaded for room " + RoomId + ".", OutputLevel.DebugInformation); } return(true); }