public async Task Configure() { InitializeDatabase(); CachedData.Initialize(); await ScriptProvider.Initialize(); await LootProvider.Initialize(); }
public GameContext([NotNull] LevelData level, [NotNull] GameService gameService, [NotNull] CombatManager combatManager, [NotNull] LootProvider lootProvider, [NotNull] IRandomization randomizer) { GameService = gameService ?? throw new ArgumentNullException(nameof(gameService)); CombatManager = combatManager ?? throw new ArgumentNullException(nameof(combatManager)); LootProvider = lootProvider ?? throw new ArgumentNullException(nameof(lootProvider)); Randomizer = randomizer ?? throw new ArgumentNullException(nameof(randomizer)); _messages = new List <GameMessage>(); AI = new ArtificialIntelligenceService(this); SetLevel(level); }