UniqueId: Unique id of the room.
Password: password of the room.
UsersCount: range of users which can join the room.
Level: level of room, room can have level for simple match making, type is a range.
AccessMode: default value of access mode is
AccessMode.Publicwhich means any users can join it,
AccessMode.Privateis for no public Rooms and just with his
UniqueIdand users in it are available.
GameStarted: is the game already started or not.
Users: list of users who joined the room.
RoundsCount: returns number of game's rounds.
AllUsersJoined: returns true if all of users are joined the room.
CurrentRound: returns current playing round.
GameComplete: returns true if the game has been completed.
IsPlaying: returns true if any round is active and playing.
AddUserAsync(User user): adds the user to the room.
StartRoundAsync(): starts the first playable round, if not available
GameCompletedAsync()task will be run.
ForceGameToEndAsync(): will end the game immediately.
RemoveUserAsync(User user): removes an user from the room.
KickUserAsync(User user): kick an user from the room.
GameCompletedAsync(): run when game is completed.
NewUserJoinedAsync(User user): run when a new user joins.
RoomReadyForStartAsync(User users): run when room is ready to start.
RoundStartedAsync(ushort roundId): run when new round starts.
UserExitedAsync(User user): run when an user exits from the room.
UserKickedAsync(User user): run when an user gets kicked from the room.
CleanUsers(): remove users which not in room anymore.
Destroy(): remove all user from room.