Ejemplo n.º 1
0
        private async Task <ServiceProvider> ConfigureServicesAsync(Database database)
        {
            DiscordSocketClient client = new DiscordSocketClient();

            Container playersRepositoryContainer = await PlayersRepository.CreateContainer(database);

            PlayersRepository playersRepository = new PlayersRepository(playersRepositoryContainer);

            Container adventuresRepositoryContainer = await AdventuresRepository.CreateContainer(database);

            AdventuresRepository adventuresRepository = new AdventuresRepository(adventuresRepositoryContainer);

            TickService tickService = new TickService(playersRepository, adventuresRepository);
            UIService   uiService   = new UIService(client, playersRepository, adventuresRepository);

            return(new ServiceCollection()
                   .AddSingleton(client)
                   .AddSingleton <CommandService>()
                   .AddSingleton <CommandHandlingService>()
                   .AddSingleton <HttpClient>()
                   .AddSingleton(tickService)
                   .AddSingleton(uiService)
                   .AddSingleton(playersRepository)
                   .AddSingleton(adventuresRepository)
                   .BuildServiceProvider());
        }
Ejemplo n.º 2
0
        public TickService
        (
            PlayersRepository playersRepository,
            AdventuresRepository adventuresRepository
        )
        {
            PlayersRepository    = playersRepository;
            AdventuresRepository = adventuresRepository;

            Timer =
                new Timer
                (
                    async _ =>
            {
                await Tick();
            },
                    null,
                    TimeSpan.FromSeconds(0),
                    TimeSpan.FromSeconds(1)
                );
        }
Ejemplo n.º 3
0
        public UIService
        (
            DiscordSocketClient discordSocketClient,
            PlayersRepository playersRepository,
            AdventuresRepository adventuresRepository
        )
        {
            DiscordSocketClient  = discordSocketClient;
            PlayersRepository    = playersRepository;
            AdventuresRepository = adventuresRepository;

            Timer =
                new Timer
                (
                    async _ =>
            {
                await UIUpdate();
            },
                    null,
                    TimeSpan.FromSeconds(0),
                    TimeSpan.FromSeconds(2)
                );
        }
 public StatisticsModule(PlayersRepository playersRepository, AdventuresRepository adventuresRepository)
 {
     PlayersRepository    = playersRepository;
     AdventuresRepository = adventuresRepository;
 }
 public AdventureModule(PlayersRepository playersRepository, AdventuresRepository adventuresRepository)
 {
     PlayersRepository    = playersRepository;
     AdventuresRepository = adventuresRepository;
 }