Пример #1
0
        public async Task <List <string> > Tick(int playerId)
        {
            var gameState = await _gameStateDataService.GetGameState(playerId);

            if (gameState.Player.DigState == null)
            {
                _diggingService.PauseDigging(gameState);
                return(new List <string>());
            }
            var messageLists = new List <List <string> >()
            {
                HandleBuffs(gameState)
                , HandlePlayerDeath(gameState)
                , HandleMonsterDeaths(gameState)
                , ActivateItems(gameState)
                , HandlePlayerDeath(gameState)
                , HandleMonsterDeaths(gameState)
                , MonsterAttacks(gameState)
                , HandlePlayerDeath(gameState)
                , ProgressDigging(gameState)
                , FindItems(gameState)
                , MonsterApproach(gameState)
            };
            await _gameStateDataService.SaveGameState(gameState);

            return(messageLists.SelectMany(m => m).Where(m => !string.IsNullOrEmpty(m)).ToList());
        }
Пример #2
0
        public async Task GameUpdateData(int playerId, List <string> messages)
        {
            var gameState = await _gameStateDataService.GetGameState(playerId);

            await GameUpdateData(gameState, messages);
        }