public static bool RemoveUserFromRoom(Session Session, bool SendKick = true) { uint CurrentRoomId = Session.AbsoluteRoomId; bool Ok = false; if (CurrentRoomId > 0) { if (Session.RoomJoined) { RoomInstance Instance = RoomManager.GetInstanceByRoomId(CurrentRoomId); if (Instance != null) { Instance.RemoveCharacterFromRoom(Session.CharacterId); } } Session.AbsoluteRoomId = 0; Session.RoomAuthed = false; Session.RoomJoined = false; MessengerHandler.MarkUpdateNeeded(Session, 0, false); Ok = true; } if (SendKick) { Session.SendData(RoomKickedComposer.Compose()); } return(Ok); }