Example #1
0
        public QuestionGenerator(IRandomNumberGenerator rng, IGameSetting gameConfig)
        {
            _rng        = rng;
            _gameConfig = gameConfig;

            Reset();
        }
        /// <summary>
        /// ゲーム開始時に呼ばれる
        /// </summary>
        /// <param name="gameInfo">最新のゲーム情報</param>
        /// <param name="gameSetting">ゲーム設定</param>
#else
        /// <summary>
        /// Called when the game started.
        /// </summary>
        /// <param name="gameInfo">The current information of this game.</param>
        /// <param name="gameSetting">The setting of this game.</param>
#endif
        public void Initialize(IGameInfo gameInfo, IGameSetting gameSetting)
        {
            switch (gameInfo.Role)
            {
            case Role.VILLAGER:
                player = VillagerPlayer ?? dummyPlayer;
                break;

            case Role.SEER:
                player = SeerPlayer ?? dummyPlayer;
                break;

            case Role.MEDIUM:
                player = MediumPlayer ?? dummyPlayer;
                break;

            case Role.BODYGUARD:
                player = BodyguardPlayer ?? dummyPlayer;
                break;

            case Role.POSSESSED:
                player = PossessedPlayer ?? dummyPlayer;
                break;

            case Role.WEREWOLF:
                player = WerewolfPlayer ?? dummyPlayer;
                break;

            default:
                player = dummyPlayer;
                break;
            }

            player.Initialize(gameInfo, gameSetting);
        }
 public GameProcessSystem(IGameSetting gameSetting, ISceneSystem sceneSystem, IUISystem uiSystem)
 {
     this.gameSetting = gameSetting;
     this.sceneSystem = sceneSystem;
     this.uiSystem    = uiSystem;
     context          = new GameProcessContext();
 }
Example #4
0
 public async Task SetGameSetting(Lobby lobby, IGameSetting setting, object value)
 {
     using (var l = await lobby.Mutex.Lock())
     {
         Data.SetSetting(setting, value);
         await UpdateLobbyConnections(lobby);
     }
 }
        public TimingViewModel(IEventAggregator ea, IGameSetting gameConfig)
        {
            _gameConfig      = gameConfig;
            SecondsRemaining = (int)_gameConfig.GameDuration.TotalSeconds;

            _ea = ea;
            _ea.GetEvent <GameControlEvent>().Subscribe(HandleGameControlEvent);
        }
Example #6
0
 public static void Init() {
     if (null == playerInfo) {
         playerInfo = new PlayerInfo();
     } // end if
     if (null == gameSetting) {
         gameSetting = new GameSetting();
     } // end if
 } // end Init
Example #7
0
        public GameSettingViewModel(IGameSetting gameConfig)
        {
            _gameConfig = gameConfig;

            IncludeZero = _gameConfig.MinValueInQuestion == 0;
            Operators   = _gameConfig.Operators;
            SelectedOp  = Operators[2];
        }
 public GameProcessSystem(IGameSetting gameSetting, ISceneSystem sceneSystem, IUIController uiController, LoginAdapter loginAdapter)
 {
     this.gameSetting  = gameSetting;
     this.sceneSystem  = sceneSystem;
     this.uiController = uiController;
     this.loginAdapter = loginAdapter;
     context           = new GameProcessContext();
 }
Example #9
0
 public virtual void DeepCopyIn(
     IGameSetting item,
     IGameSettingGetter rhs,
     ErrorMaskBuilder?errorMask,
     TranslationCrystal?copyMask,
     bool deepCopy)
 {
     base.DeepCopyIn(
         (IOblivionMajorRecord)item,
         (IOblivionMajorRecordGetter)rhs,
         errorMask,
         copyMask,
         deepCopy: deepCopy);
 }
Example #10
0
 public ISettingsBuilder AddSetting(string name, IGameSetting setting)
 {
     if (_currentMode == null)
     {
         throw new InvalidOperationException("You must add a game mode first!");
     }
     if (_currentMode.Settings.ContainsKey(name))
     {
         throw new ArgumentException("Setting with this name is already specified!");
     }
     setting.Value = setting.DefaultValue;
     _currentMode.Settings.Add(name, setting);
     return(this);
 }
Example #11
0
 public void RemapLinks(IGameSetting obj, IReadOnlyDictionary <FormKey, FormKey> mapping)
 {
     base.RemapLinks(obj, mapping);
 }
Example #12
0
        /// <summary>
        ///     Create a new instance (in memory and database) of <see cref="T:Business.Contest" /> with specified param
        /// </summary>
        /// <param name="datePlanned">Date planned for contest.</param>
        /// <param name="physicalSetting">Specify type of physical setting.</param>
        /// <param name="gameSetting">Specify type of game setting.</param>
        /// <returns>Tournament's instance</returns>
        public static IContest Create(DateTime datePlanned, IPhysicalSetting physicalSetting, IGameSetting gameSetting)
        {
            var result = new Contest
            {
                DatePlanned        = datePlanned,
                PhysicalSetting    = physicalSetting,
                GameSetting        = gameSetting,
                EliminationSetting = new EliminationStepSetting(new MatchSetting(), EliminationType.QuarterFinal),
                TeamList           = new List <ITeam>(),
                PhaseList          = new List <IPhase>()
            };

            return(result);
        }
        /// <summary>
        /// ゲーム開始時に呼ばれる
        /// </summary>
        /// <param name="gameInfo">最新のゲーム情報</param>
        /// <param name="gameSetting">ゲーム設定</param>
#else
        /// <summary>
        /// Called when the game started.
        /// </summary>
        /// <param name="gameInfo">The current information of this game.</param>
        /// <param name="gameSetting">The setting of this game.</param>
#endif
        public void Initialize(IGameInfo gameInfo, IGameSetting gameSetting)
        {
        }
Example #14
0
 internal void SetSetting(IGameSetting setting, object value)
 {
     setting.Value = value;
     log.Debug("set setting (" + setting.Name + ", " + value + ")");
 }