|
| HiveHostGame (GameCreateOptions gameCreateOptions) |
|
override bool | BeforeRemoveFromCache () |
| Called by the RoomCacheBase if the room is about to be removed from the cache. More...
|
|
bool | ExecuteCacheOperation (CacheOp operation, out string errorMsg) |
| this methods allows to execute any cache operation. it can not be used to send user events to send user events use BroadcastEvent More...
|
|
Dictionary< byte, byte[]> | GetGameStateAsByteArray () |
|
void | HttpQueueRequestsIncrement () |
|
void | HttpQueueResponsesIncrement () |
|
void | HttpQueueSuccessIncrement () |
|
void | HttpQueueTimeoutIncrement () |
|
void | HttpQueueErrorsIncrement () |
|
void | HttpQueueOfflineResponsesIncrement () |
|
void | HttpQueueConcurrentRequestsIncrement () |
|
void | HttpQueueConcurrentRequestsDecrement () |
|
void | HttpQueueQueuedRequestsIncrement () |
|
void | HttpQueueQueuedRequestsDecrement () |
|
void | HttpRequestExecuteTimeIncrement (long ticks) |
|
void | HttpQueueOnlineQueueCounterIncrement () |
|
void | HttpQueueOnlineQueueCounterDecrement () |
|
void | HttpQueueBackedoffRequestsIncrement () |
|
void | HttpQueueBackedoffRequestsDecrement () |
|
void | HttpRequestIncrement () |
|
void | HttpSuccessIncrement () |
|
void | HttpTimeoutIncrement () |
|
void | HttpErrorsIncrement () |
|
void | HttpResponseIncrement () |
|
bool | OnUnknownType (Type type, ref object obj) |
|
override void | RemoveInactiveActor (Actor actor) |
|
SerializableGameState | GetSerializableGameState () |
| The serializable game state can be used to recreate the room after it gets removed from memory. Also SetGameState. More...
|
|
Dictionary< string, object > | GetGameState () |
|
bool | SetGameState (Dictionary< string, object > state) |
|
| HiveGame (string gameName, RoomCacheBase roomCache, IGameStateFactory gameStateFactory=null, int maxEmptyRoomTTL=0, ExtendedPoolFiber executionFiber=null) |
| Initializes a new instance of the HiveGame class. More...
|
|
override string | ToString () |
|
void | OnActorRemoved (Actor actor) |
|
void | OnActorDeactivated (Actor actor) |
|
| Room (string name, RoomCacheBase roomCache=null, IGameStateFactory gameStateFactory=null, int maxEmptyRoomTTL=0, ExtendedPoolFiber executionFiber=null) |
| Initializes a new instance of the Room class without a room name. More...
|
|
override string | ToString () |
|
void | EnqueueMessage (IMessage message) |
| Enqueues an IMessage to the end of the execution queue. More...
|
|
void | EnqueueOperation (HivePeer peer, Operation operationRequest, SendParameters sendParameters) |
| Enqueues an OperationRequest to the end of the execution queue. More...
|
|
IDisposable | ScheduleMessage (IMessage message, int timeMs) |
| Schedules a message to be processed after a specified time. More...
|
|
void | Dispose () |
| Releases resources used by this instance. More...
|
|
void | Release () |
|
void | BroadcastEvent (IList< int > recieverActors, int senderActor, byte evCode, Dictionary< byte, object > data, byte cacheOp, SendParameters sendParameters=new SendParameters()) |
| Send event to a specific list of actors inside the room or update events cache. More...
|
|
void | BroadcastEvent (byte target, int senderActor, byte targetGroup, byte evCode, Dictionary< byte, object > data, byte cacheOp, SendParameters sendParameters=new SendParameters()) |
| Send event to a predefined target group of actors inside the room or update events cache. More...
|
|
void | BroadcastErrorInfoEvent (string message, SendParameters sendParameters=new SendParameters()) |
| Used to inform clients of errors. If a callInfo is available in the context of the error then the overload with info should be used. More...
|
|
void | BroadcastErrorInfoEvent (string message, ICallInfo info, SendParameters sendParameters=new SendParameters()) |
| Used to inform clients of errors. More...
|
|
|
override void | Dispose (bool dispose) |
| Releases unmanaged and - optionally - managed resources More...
|
|
virtual void | ResumeGame (Action resumeAction) |
|
virtual void | SuspendGame (int timeout, Action timeoutAction) |
|
virtual void | OnActorBanned (Actor actor) |
|
virtual void | OnActorGlobalBanned (Actor actor) |
|
override void | HandleCreateGameOperation (HivePeer peer, SendParameters sendParameters, JoinGameRequest createGameRequest) |
|
override void | HandleJoinGameOperation (HivePeer peer, SendParameters sendParameters, JoinGameRequest joinGameRequest) |
| Handles the JoinGameRequest: Joins a peer to a room and calls PublishJoinEvent. Before a JoinOperation reaches this point (inside a room), the HivePeer made sure that it is removed from the previous Room (if there was any). More...
|
|
void | InitPlugin (string pluginName) |
|
override void | HandleLeaveOperation (HivePeer peer, SendParameters sendParameters, LeaveRequest leaveOperation) |
| Handles the LeaveRequest and calls HiveGame.RemovePeerFromGame. More...
|
|
override void | HandleRaiseEventOperation (HivePeer peer, RaiseEventRequest raiseEventRequest, SendParameters sendParameters) |
| Handles the RaiseEventRequest: Sends a CustomEvent to actors in the room. More...
|
|
override void | HandleRemovePeerMessage (HivePeer peer, int reason, string details) |
|
override void | HandleSetPropertiesOperation (HivePeer peer, SetPropertiesRequest request, SendParameters sendParameters) |
| Handles the SetPropertiesRequest and sends event PropertiesChangedEvent to all Actors in the room. More...
|
|
virtual bool | ProcessBeforeJoinGame (JoinGameRequest joinRequest, SendParameters sendParameters, HivePeer peer) |
|
virtual bool | ProcessBeforeSetProperties (HivePeer peer, SetPropertiesRequest request, SendParameters sendParameters) |
|
virtual bool | ProcessSetProperties (HivePeer peer, bool result, string errorMsg, SetPropertiesRequest request, SendParameters sendParameters) |
|
virtual bool | ProcessBeforeCloseGame (CloseRequest request) |
|
override void | JoinFailureHandler (byte leaveReason, HivePeer peer, JoinGameRequest request) |
|
virtual bool | ProcessCloseGame (object state) |
|
virtual bool | ProcessCreateGame (HivePeer peer, JoinGameRequest joinRequest, SendParameters sendParameters) |
|
virtual bool | ProcessJoin (Actor actor, JoinGameRequest joinRequest, SendParameters sendParameters, ProcessJoinParams prms, HivePeer peer) |
|
virtual bool | ProcessLeaveGame (int actorNr, LeaveRequest request, SendParameters sendParameters, HivePeer peer) |
|
virtual bool | ProcessRaiseEvent (HivePeer peer, RaiseEventRequest raiseEventRequest, SendParameters sendParameters, Actor actor) |
|
override OperationResponse | GetUserJoinResponse (JoinGameRequest joinRequest, Actor actor, ProcessJoinParams prms) |
|
override void | OnClose () |
|
virtual void | CleanupActor (Actor actor) |
|
virtual void | DeactivateActor (Actor actor) |
|
bool | CreateGame (HivePeer peer, JoinGameRequest request, SendParameters sendParameters) |
|
override void | ExecuteOperation (HivePeer peer, Operation operation, SendParameters sendParameters) |
| Called for each operation in the execution queue. Every Room has a queue of incoming operations to execute. Per game ExecuteOperation is never executed multi-threaded, thus all code executed here has thread safe access to all instance members. More...
|
|
Actor | GetActorByPeer (HivePeer peer) |
| Gets the actor for a HivePeer. More...
|
|
Hashtable | GetLobbyGameProperties (Hashtable source) |
|
virtual void | HandleChangeGroupsOperation (HivePeer peer, ChangeGroups changeGroupsRequest, SendParameters sendParameters) |
|
virtual void | HandleDebugGameOperation (HivePeer peer, DebugGameRequest request, SendParameters sendParameters) |
|
virtual void | HandleGetPropertiesOperation (HivePeer peer, GetPropertiesRequest getPropertiesRequest, SendParameters sendParameters) |
| Handles the GetPropertiesRequest operation: Sends the properties with the OperationResponse. More...
|
|
bool | JoinApplyGameStateChanges (HivePeer peer, JoinGameRequest joinRequest, SendParameters sendParameters, out Actor actor) |
|
virtual void | SendErrorResponse (HivePeer peer, byte opCode, ErrorCode errorCode, string msg, SendParameters sendParameters, Dictionary< byte, object > errorData=null) |
| this method not only allows us to send error response but also we overwrite it to send old error codes to old clients More...
|
|
void | SendErrorResponseAndDisconnect (HivePeer peer, byte opCode, ErrorCode errorCode, string msg, SendParameters sendParameters, Dictionary< byte, object > errorData=null) |
|
virtual bool | AddExpectedUsers (JoinGameRequest joinRequest) |
|
bool | JoinSendResponseAndEvents (HivePeer peer, JoinGameRequest joinRequest, SendParameters sendParameters, Actor actor, ProcessJoinParams prms) |
|
void | LeaveOperationHandler (HivePeer peer, SendParameters sendParameters, LeaveRequest request) |
|
void | LogOperation (HivePeer peer, OperationRequest operationRequest) |
|
override void | ProcessMessage (IMessage message) |
| Processes a game message. Messages are used for internal communication. Per default only message RemovePeerFromGame is handled, a message that is sent when a player leaves a game due to disconnect or due to a subsequent join to a different game. More...
|
|
bool | RaiseEventOperationHandler (HivePeer peer, RaiseEventRequest raiseEventRequest, SendParameters sendParameters, Actor actor) |
|
virtual int | RemovePeerFromGame (HivePeer peer, bool isComingBack) |
| Removes a peer from the game. This method is called if a client sends a LeaveRequest or disconnects. More...
|
|
bool | SetProperties (int actorNr, Hashtable properties, Hashtable expected, bool broadcast) |
|
bool | ValidateAndFillSetPropertiesRequest (HivePeer peer, SetPropertiesRequest request, out string errorMsg) |
|
virtual void | OnGamePropertiesChanged (SetPropertiesRequest request) |
|
void | PublishResultsAndSetGameProperties (bool propertiesUpdateResult, string errorMessage, SetPropertiesRequest request, HivePeer peer, SendParameters sendParameters) |
|
virtual bool | SetNewPropertyValues (SetPropertiesRequest request, out string errorMessage) |
|
void | CheckTotalPropertiesSize (SetPropertiesRequest setPropertiesRequest) |
|
virtual bool | TryAddPeerToGame (HivePeer peer, int actorNr, out Actor actor, out bool isNewActor, out ErrorCode errorcode, out string reason, JoinGameRequest joinRequest) |
| Tries to add a HivePeer to this game instance. More...
|
|
bool | UpdateEventCache (int actorNr, byte eventCode, object data, byte cacheOp, out string msg) |
|
bool | UpdateCacheSlice (CacheOperation op, int actorNr, int? sliceIndex, out string message) |
|
virtual void | OnGameFull (HivePeer peer, JoinGameRequest joinGameRequest, SendParameters sendParameters) |
|
| Room (string name, ExtendedPoolFiber executionFiber, RoomCacheBase roomCache, IGameStateFactory gameStateFactory=null, int maxEmptyRoomTTL=0) |
| Initializes a new instance of the Room class. More...
|
|
void | PublishEvent (HiveEventBase e, Actor actor, SendParameters sendParameters) |
| Publishes an event to a single actor on a specified channel. More...
|
|
void | PublishEvent (HiveEventBase e, IEnumerable< Actor > actorList, SendParameters sendParameters) |
| Publishes an event to a list of actors on a specified channel. More...
|
|
void | PublishEvent (EventData e, IEnumerable< Actor > actorList, SendParameters sendParameters) |
| Publishes an event to a list of actors on a specified channel. More...
|
|
void | PublishErrorInfoEvent (string errorMsg, IEnumerable< Actor > actorList, SendParameters sendParameters) |
|
void | ScheduleRoomRemoval (int roomLiveTime) |
| Schedules the removal of the room instance from the cache. The room will be removed after the specified time if there are no room references left. More...
|
|
void | TryRemoveRoomFromCache () |
| Removes the room instance from the cache if there are no references to the instance left. More...
|
|
|
Dictionary< string, object > | Environment [get, set] |
|
int | HttpForwardedOperationsLimit [get, protected set] |
|
bool | FailedOnCreate [get] |
|
object | this[object key] [get, set] |
|
IHiveGameAppCounters | GameAppCounters [get, set] |
|
int | MasterClientId [get] |
|
bool | IsOpen [get, set] |
|
bool | IsVisible [get, set] |
|
bool | IsFinished [get, set] |
| whether finished. it is not same as IsOpen == false. More...
|
|
string | LobbyId [get, set] |
|
bool | DeleteCacheOnLeave [get, set] |
| Gets or sets a value indicating whether cached events are automatically deleted for actors which are leaving a room. More...
|
|
HashSet< object > | LobbyProperties [get, set] |
| Contains the keys of the game properties hashtable which should be listed in the lobby. More...
|
|
AppLobbyType | LobbyType [get, set] |
|
byte | MaxPlayers [get, set] |
|
int | PlayerTTL [get, set] |
| Player live time More...
|
|
bool | SuppressRoomEvents [get, set] |
| Gets or sets a value indicating if common room events (Join, Leave) will suppressed. More...
|
|
bool | SuppressPlayerInfo [get, set] |
|
bool | CheckUserOnJoin [get, set] |
|
int | LimitMaxPropertiesSizePerGame = 0 [get, set] |
|
RemoveState | RemoveRoomPath [get, set] |
|
ExtendedPoolFiber | ExecutionFiber [get] |
| Gets a PoolFiber instance used to synchronize access to this instance. More...
|
|
bool | IsDisposed [get] |
| Gets a value indicating whether IsDisposed. More...
|
|
string | Name [get] |
| Gets the name (id) of the room. More...
|
|
int | EmptyRoomLiveTime [get, protected set] |
| Gets or sets a value indicating how long the room instance will be keeped alive in the room cache after all peers have left the room. More...
|
|
int | MaxEmptyRoomTTL [get] |
|
DateTime | UtcCreated [get] |
|
long | RoomCreationTS [get] |
|
IDisposable | RemoveTimer [get, set] |
| Timer for removing room More...
|
|
PropertyBag< object > | Properties [get] |
| Gets a PropertyBag instance used to store custom room properties. More...
|
|
Dictionary< string, object > | Environment [get] |
| Should contain game and application global properties (AppId, AppVersion, Cloud, Region, etc.) More...
|
|
IList< IActor > | GameActors [get] |
| List of all actors in game - including active and inactive. With each actor having a flag IsInactive IActor. More...
|
|
IList< IActor > | GameActorsActive [get] |
| List of active actors in game. More...
|
|
IList< IActor > | GameActorsInactive [get] |
| List of inactive active actors in game. More...
|
|
string | GameId [get] |
| Unique game identifier. Called Roomname in most client sdk's. More...
|
|
Hashtable | GameProperties [get] |
| Game properties as set through the client per RoomOptions.CustomRoomProperties. More...
|
|
Dictionary< string, object > | CustomGameProperties [get] |
| The game properties that are published to the lobby - as defined by clients per RoomOptions.CustomRoomPropertiesForLobby. More...
|
|
int | MasterClientId [get] |
| The actor number of the client defined as master. If the client disconnects a new master client will be selected by photon. Changes in the master client id are notified per PluginBase.OnChangeMasterClientId. More...
|
|
bool | IsSuspended [get] |
|
bool | IsSyspended [get] |
|
IExtendedFiber | ExecutionFiber [get] |
|
ILogger | Log [get] |
|
HttpRequestQueue | HttpRequestQueue [get] |
|
int | HttpQueueRequestTimeout [get] |
|