Example #1
0
        /// <summary>
        /// Initializes a new instance of the <see cref="Game"/> class.
        /// </summary>
        /// <param name="application">The photon application instance the game belongs to.</param>
        /// <param name="gameId">The game id.</param>
        /// <param name="roomCache">The room cache the game belongs to.</param>
        /// <param name="pluginManager">plugin creator</param>
        /// <param name="pluginName">Plugin name which client expects to be loaded</param>
        /// <param name="environment">different environment parameters</param>
        /// <param name="executionFiber">Fiber which will execute all rooms actions</param>
        public Game(
            GameApplication application,
            string gameId,
            Hive.Caching.RoomCacheBase roomCache = null,
            IPluginManager pluginManager         = null,
            string pluginName = "",
            Dictionary <string, object> environment = null,
            ExtendedPoolFiber executionFiber        = null
            )
            : base(
                gameId,
                roomCache,
                null,
                GameServerSettings.Default.MaxEmptyRoomTTL,
                pluginManager,
                pluginName,
                environment,
                GameServerSettings.Default.LastTouchSecondsDisconnect * 1000,
                GameServerSettings.Default.LastTouchCheckIntervalSeconds * 1000,
                DefaultHttpRequestQueueOptions,
                executionFiber
                )
        {
            this.Application = application;

            if (this.Application.AppStatsPublisher != null)
            {
                this.Application.AppStatsPublisher.IncrementGameCount();
            }

            this.HttpForwardedOperationsLimit = GameServerSettings.Default.HttpForwardLimit;
        }
 public LBGameCreateOptions(GameApplication application,
                            string gameId,
                            Hive.Caching.RoomCacheBase roomCache         = null,
                            IPluginManager pluginManager                 = null,
                            Dictionary <string, object> environment      = null,
                            ExtendedPoolFiber executionFiber             = null,
                            IPluginLogMessagesCounter logMessagesCounter = null
                            )
     : this()
 {
     this.Application       = application;
     this.GameCreateOptions = new GameCreateOptions(gameId, roomCache, pluginManager, GameServerSettings.Default.MaxEmptyRoomTTL)
     {
         HttpRequestQueueOptions = DefaultHttpRequestQueueOptions,
         Environment             = environment,
         ExecutionFiber          = executionFiber,
         LogMessagesCounter      = logMessagesCounter
     };
 }