Skip to main content
Version: Next

Room Functions

Create Room

Create a room in initial state

var room = await ServiceHub.Services.MultiPlayer.RoomService.CreateRoom(new CreateRoomParams
{
Name = "room name",
IsPrivate = false,
IsPermanent = false,
MinPlayer = 0,
MaxPlayer = 0,
MinXp = 0,
MaxXp = 1000,
Status = RoomStatus.Initial,
IsTurnBasedGame = false,
GameOrderType = GameOrderType.RoundRobin,
Metadata = "any data",
Players = null
});

Create Room and Open it

Create a room in initial state

var room = await ServiceHub.Services.MultiPlayer.RoomService.CreateAndOpenRoom(new CreateRoomParams
{
Name = "room name",
IsPrivate = false,
IsPermanent = false,
MinPlayer = 0,
MaxPlayer = 0,
MinXp = 0,
MaxXp = 1000,
Status = RoomStatus.Initial,
IsTurnBasedGame = false,
GameOrderType = GameOrderType.RoundRobin,
Metadata = "any data",
Players = null
});

Join by AutoMatch

Looking for a suitable room to join or create one

var room = await ServiceHub.Services.MultiPlayer.RoomService.AutoMatch();

Get all existing rooms

The function will return all available rooms to join

var rooms = await ServiceHub.Services.MultiPlayer.RoomService.GetAllRooms(new GetAllRoomsParams
{
Skip = 0,
Take = 0
});

Get all existing rooms Match user's XP

The function will return all available rooms to join according to the user's xp

var rooms = await ServiceHub.Services.MultiPlayer.RoomService.GetAllMatchedRooms(new GetAllRoomsParams
{
Skip = 0,
Take = 0
});

Get Room By ID

The function will return room's details by room's ID

var room = await ServiceHub.Services.MultiPlayer.RoomService.GetRoomById(roomID);

Get Room By Name

The function will return room's details by room's name

var room = await ServiceHub.Services.MultiPlayer.RoomService.GetRoomByName(roomName);

Join

Joining to a room by room's ID

var room = await ServiceHub.Services.MultiPlayer.RoomService.Join(roomID);

Leave

Leaving a room by room's ID

await ServiceHub.Services.MultiPlayer.RoomService.Leave(roomID);

Delete Room

Delete a room by it's ID

await ServiceHub.Services.MultiPlayer.RoomService.DeleteRoom(roomID);