Ejemplo n.º 1
0
        public async Task <Run> ModifyRun(Guid playerId, Guid runId, ModifiedRun modifiedRun)
        {
            Player player = await GetPlayer(playerId);

            if (player.IsBanned)
            {
                throw new NoPrivilegesException($"Player {player.Name} is banned!");
            }

            foreach (var run in player.Runs)
            {
                if (run.Id == runId)
                {
                    run.TimeTaken = modifiedRun.TimeTaken;
                    FilterDefinition <Player> filter = Builders <Player> .Filter.Eq(p => p.Id, player.Id);

                    await collection.ReplaceOneAsync(filter, player);

                    return(run);
                }
            }
            throw new NotFoundException();
        }
Ejemplo n.º 2
0
 public async Task <Run> Modify(Guid playerId, Guid runId, ModifiedRun run)
 {
     return(await repository.ModifyRun(playerId, runId, run));
 }