Photon Server API Documentation v5.0RC1

Public Member Functions | Public Attributes | Static Public Attributes | Protected Member Functions | Properties | List of all members
Photon.LoadBalancing.MasterServer.Lobby.AppLobby Class Reference

Public Member Functions

 AppLobby (GameApplication application, string lobbyName, AppLobbyType lobbyType, bool useLegacyLobbies=false, int? limitGameList=null, int? limitGameListUpdate=null, int? limitSqlFilterResults=null, string matchmakingStoredProcedure=null)
 
void EnqueueOperation (MasterClientPeer peer, OperationRequest operationRequest, SendParameters sendParameters)
 
void EnqueueTask (Action task)
 
void RemoveGame (string gameId)
 
void RemoveGameServer (GameServerContext gameServer)
 
void UpdateGameState (UpdateGameEvent operation, GameServerContext incomingGameServer)
 
void JoinLobby (MasterClientPeer peer, JoinLobbyRequest joinLobbyrequest, SendParameters sendParameters)
 
void LeaveLobby (MasterClientPeer peer)
 
void ResetGameServer (GameState gameState)
 
override string ToString ()
 
void OnBeginReplication (GameServerContext gameServerContext)
 
void OnFinishReplication (GameServerContext gameServerContext)
 
void OnStopReplication (GameServerContext gameServerContext)
 
void OnSendChangedGameList (Hashtable gameList)
 
virtual void InitUpdateLobbyLimits (GameApplication gameApplication)
 
virtual void InitUpdateMatchmakingStoredProcedure (GameApplication gameApplication)
 
void UpdateLobbyLimits (bool gameListUseLegacyLobbies, int? gameListLimit, int? gameListLimitUpdates, int? gameListLimitSqlFilterResults)
 
void UpdateMatchmakingStoredProcedure (string matchmakingStoredProcedure)
 
void NotifyWaitListOnGameCreated (GameState gameState)
 
void NotifyWaitListOnGameRemoved (GameState gameState)
 

Public Attributes

readonly GameApplication Application
 
readonly string LobbyName
 
readonly AppLobbyType LobbyType
 
readonly TimeSpan JoinTimeOut
 
readonly int MaxPlayersDefault
 

Static Public Attributes

static readonly ILogger log = LogManager.GetCurrentClassLogger()
 

Protected Member Functions

virtual void ExecuteOperation (MasterClientPeer peer, OperationRequest operationRequest, SendParameters sendParameters)
 
object GetCreateGameResponse (MasterClientPeer peer, GameState gameState)
 
object GetJoinGameResponse (MasterClientPeer peer, GameState gameState)
 
object GetJoinRandomGameResponse (MasterClientPeer peer, GameState gameState)
 
virtual DebugGameResponse GetDebugGameResponse (MasterClientPeer peer, GameState gameState)
 
virtual GetGameListResponse GetGetGameListResponse (MasterClientPeer peer, Hashtable gameList)
 
virtual OperationResponse HandleCreateGame (MasterClientPeer peer, OperationRequest operationRequest)
 
virtual OperationResponse HandleJoinGame (MasterClientPeer peer, OperationRequest operationRequest)
 
virtual void HandleJoinLobby (MasterClientPeer peer, JoinLobbyRequest operation, SendParameters sendParameters)
 
virtual void HandleLeaveLobby (MasterClientPeer peer)
 
virtual OperationResponse HandleJoinRandomGame (MasterClientPeer peer, OperationRequest operationRequest)
 
virtual OperationResponse HandleDebugGame (MasterClientPeer peer, OperationRequest operationRequest)
 
virtual OperationResponse HandleGetGameList (MasterClientPeer peer, OperationRequest operationRequest)
 
virtual void OnGameStateChanged (GameState gameState)
 
virtual void OnRemovePeer (MasterClientPeer peer)
 
virtual bool TryCreateGame (JoinGameRequest operation, NetworkProtocolType expectedProtocol, bool createIfNotExists, out bool gameCreated, out GameState gameState, out OperationResponse errorResponse, Dictionary< string, object > authCookie)
 

Properties

PoolFiber ExecutionFiber [get, set]
 
int PeerCount [get]
 Gets the number of peers in the lobby. More...
 
int PlayerCount [get]
 Gets the total number of players in all games in this lobby. More...
 
int GameCount [get]
 

Constructor & Destructor Documentation

◆ AppLobby()

Photon.LoadBalancing.MasterServer.Lobby.AppLobby.AppLobby ( GameApplication  application,
string  lobbyName,
AppLobbyType  lobbyType,
bool  useLegacyLobbies = false,
int?  limitGameList = null,
int?  limitGameListUpdate = null,
int?  limitSqlFilterResults = null,
string  matchmakingStoredProcedure = null 
)
inline

Member Function Documentation

◆ EnqueueOperation()

void Photon.LoadBalancing.MasterServer.Lobby.AppLobby.EnqueueOperation ( MasterClientPeer  peer,
OperationRequest  operationRequest,
SendParameters  sendParameters 
)
inline

◆ EnqueueTask()

void Photon.LoadBalancing.MasterServer.Lobby.AppLobby.EnqueueTask ( Action  task)
inline

◆ ExecuteOperation()

virtual void Photon.LoadBalancing.MasterServer.Lobby.AppLobby.ExecuteOperation ( MasterClientPeer  peer,
OperationRequest  operationRequest,
SendParameters  sendParameters 
)
inlineprotectedvirtual

◆ GetCreateGameResponse()

object Photon.LoadBalancing.MasterServer.Lobby.AppLobby.GetCreateGameResponse ( MasterClientPeer  peer,
GameState  gameState 
)
inlineprotected

◆ GetDebugGameResponse()

virtual DebugGameResponse Photon.LoadBalancing.MasterServer.Lobby.AppLobby.GetDebugGameResponse ( MasterClientPeer  peer,
GameState  gameState 
)
inlineprotectedvirtual

◆ GetGetGameListResponse()

virtual GetGameListResponse Photon.LoadBalancing.MasterServer.Lobby.AppLobby.GetGetGameListResponse ( MasterClientPeer  peer,
Hashtable  gameList 
)
inlineprotectedvirtual

◆ GetJoinGameResponse()

object Photon.LoadBalancing.MasterServer.Lobby.AppLobby.GetJoinGameResponse ( MasterClientPeer  peer,
GameState  gameState 
)
inlineprotected

◆ GetJoinRandomGameResponse()

object Photon.LoadBalancing.MasterServer.Lobby.AppLobby.GetJoinRandomGameResponse ( MasterClientPeer  peer,
GameState  gameState 
)
inlineprotected

◆ HandleCreateGame()

virtual OperationResponse Photon.LoadBalancing.MasterServer.Lobby.AppLobby.HandleCreateGame ( MasterClientPeer  peer,
OperationRequest  operationRequest 
)
inlineprotectedvirtual

◆ HandleDebugGame()

virtual OperationResponse Photon.LoadBalancing.MasterServer.Lobby.AppLobby.HandleDebugGame ( MasterClientPeer  peer,
OperationRequest  operationRequest 
)
inlineprotectedvirtual

◆ HandleGetGameList()

virtual OperationResponse Photon.LoadBalancing.MasterServer.Lobby.AppLobby.HandleGetGameList ( MasterClientPeer  peer,
OperationRequest  operationRequest 
)
inlineprotectedvirtual

◆ HandleJoinGame()

virtual OperationResponse Photon.LoadBalancing.MasterServer.Lobby.AppLobby.HandleJoinGame ( MasterClientPeer  peer,
OperationRequest  operationRequest 
)
inlineprotectedvirtual

◆ HandleJoinLobby()

virtual void Photon.LoadBalancing.MasterServer.Lobby.AppLobby.HandleJoinLobby ( MasterClientPeer  peer,
JoinLobbyRequest  operation,
SendParameters  sendParameters 
)
inlineprotectedvirtual

◆ HandleJoinRandomGame()

virtual OperationResponse Photon.LoadBalancing.MasterServer.Lobby.AppLobby.HandleJoinRandomGame ( MasterClientPeer  peer,
OperationRequest  operationRequest 
)
inlineprotectedvirtual

◆ HandleLeaveLobby()

virtual void Photon.LoadBalancing.MasterServer.Lobby.AppLobby.HandleLeaveLobby ( MasterClientPeer  peer)
inlineprotectedvirtual

◆ InitUpdateLobbyLimits()

virtual void Photon.LoadBalancing.MasterServer.Lobby.AppLobby.InitUpdateLobbyLimits ( GameApplication  gameApplication)
inlinevirtual

◆ InitUpdateMatchmakingStoredProcedure()

virtual void Photon.LoadBalancing.MasterServer.Lobby.AppLobby.InitUpdateMatchmakingStoredProcedure ( GameApplication  gameApplication)
inlinevirtual

◆ JoinLobby()

void Photon.LoadBalancing.MasterServer.Lobby.AppLobby.JoinLobby ( MasterClientPeer  peer,
JoinLobbyRequest  joinLobbyrequest,
SendParameters  sendParameters 
)
inline

◆ LeaveLobby()

void Photon.LoadBalancing.MasterServer.Lobby.AppLobby.LeaveLobby ( MasterClientPeer  peer)
inline

◆ NotifyWaitListOnGameCreated()

void Photon.LoadBalancing.MasterServer.Lobby.AppLobby.NotifyWaitListOnGameCreated ( GameState  gameState)
inline

◆ NotifyWaitListOnGameRemoved()

void Photon.LoadBalancing.MasterServer.Lobby.AppLobby.NotifyWaitListOnGameRemoved ( GameState  gameState)
inline

◆ OnBeginReplication()

void Photon.LoadBalancing.MasterServer.Lobby.AppLobby.OnBeginReplication ( GameServerContext  gameServerContext)
inline

◆ OnFinishReplication()

void Photon.LoadBalancing.MasterServer.Lobby.AppLobby.OnFinishReplication ( GameServerContext  gameServerContext)
inline

◆ OnGameStateChanged()

virtual void Photon.LoadBalancing.MasterServer.Lobby.AppLobby.OnGameStateChanged ( GameState  gameState)
inlineprotectedvirtual

◆ OnRemovePeer()

virtual void Photon.LoadBalancing.MasterServer.Lobby.AppLobby.OnRemovePeer ( MasterClientPeer  peer)
inlineprotectedvirtual

◆ OnSendChangedGameList()

void Photon.LoadBalancing.MasterServer.Lobby.AppLobby.OnSendChangedGameList ( Hashtable  gameList)
inline

◆ OnStopReplication()

void Photon.LoadBalancing.MasterServer.Lobby.AppLobby.OnStopReplication ( GameServerContext  gameServerContext)
inline

◆ RemoveGame()

void Photon.LoadBalancing.MasterServer.Lobby.AppLobby.RemoveGame ( string  gameId)
inline

◆ RemoveGameServer()

void Photon.LoadBalancing.MasterServer.Lobby.AppLobby.RemoveGameServer ( GameServerContext  gameServer)
inline

◆ ResetGameServer()

void Photon.LoadBalancing.MasterServer.Lobby.AppLobby.ResetGameServer ( GameState  gameState)
inline

◆ ToString()

override string Photon.LoadBalancing.MasterServer.Lobby.AppLobby.ToString ( )
inline

◆ TryCreateGame()

virtual bool Photon.LoadBalancing.MasterServer.Lobby.AppLobby.TryCreateGame ( JoinGameRequest  operation,
NetworkProtocolType  expectedProtocol,
bool  createIfNotExists,
out bool  gameCreated,
out GameState  gameState,
out OperationResponse  errorResponse,
Dictionary< string, object >  authCookie 
)
inlineprotectedvirtual

◆ UpdateGameState()

void Photon.LoadBalancing.MasterServer.Lobby.AppLobby.UpdateGameState ( UpdateGameEvent  operation,
GameServerContext  incomingGameServer 
)
inline

◆ UpdateLobbyLimits()

void Photon.LoadBalancing.MasterServer.Lobby.AppLobby.UpdateLobbyLimits ( bool  gameListUseLegacyLobbies,
int?  gameListLimit,
int?  gameListLimitUpdates,
int?  gameListLimitSqlFilterResults 
)
inline

◆ UpdateMatchmakingStoredProcedure()

void Photon.LoadBalancing.MasterServer.Lobby.AppLobby.UpdateMatchmakingStoredProcedure ( string  matchmakingStoredProcedure)
inline

Member Data Documentation

◆ Application

readonly GameApplication Photon.LoadBalancing.MasterServer.Lobby.AppLobby.Application

◆ JoinTimeOut

readonly TimeSpan Photon.LoadBalancing.MasterServer.Lobby.AppLobby.JoinTimeOut

◆ LobbyName

readonly string Photon.LoadBalancing.MasterServer.Lobby.AppLobby.LobbyName

◆ LobbyType

readonly AppLobbyType Photon.LoadBalancing.MasterServer.Lobby.AppLobby.LobbyType

◆ log

readonly ILogger Photon.LoadBalancing.MasterServer.Lobby.AppLobby.log = LogManager.GetCurrentClassLogger()
static

◆ MaxPlayersDefault

readonly int Photon.LoadBalancing.MasterServer.Lobby.AppLobby.MaxPlayersDefault

Property Documentation

◆ ExecutionFiber

PoolFiber Photon.LoadBalancing.MasterServer.Lobby.AppLobby.ExecutionFiber
getsetprotected

◆ GameCount

int Photon.LoadBalancing.MasterServer.Lobby.AppLobby.GameCount
get

◆ PeerCount

int Photon.LoadBalancing.MasterServer.Lobby.AppLobby.PeerCount
get

Gets the number of peers in the lobby.

◆ PlayerCount

int Photon.LoadBalancing.MasterServer.Lobby.AppLobby.PlayerCount
get

Gets the total number of players in all games in this lobby.