public WorldState(IRepository <Map> mapRepo, IWorldEntityFactory worldEntityFactory, AiEntityManagerFactory aiEntityManagerFactory, BattleManagerFactory battleManagerFactory) { _mapRepo = mapRepo; _worldEntityFactory = worldEntityFactory; _aiEntityManagerFactory = aiEntityManagerFactory; _battleManagerFactory = battleManagerFactory; var maps = mapRepo.GetDataAsync().Result; var temp = new Dictionary <int, MapManager>(); var mapBattleManagers = new Dictionary <int, IMapBattleManager>(); var entityManagers = new Dictionary <int, MapEntityManager>(); foreach (var map in maps) { var mapManager = new MapManager(map); temp.Add(map.Id, mapManager); var mapBattleManager = new MapBattleManager(_battleManagerFactory); entityManagers.Add(map.Id, new MapEntityManager(mapManager, mapBattleManager, _worldEntityFactory, _aiEntityManagerFactory)); mapBattleManagers.Add(map.Id, mapBattleManager); } MapManagers = temp; MapBattleManagers = mapBattleManagers; MapEntityManagers = entityManagers; }
public MapBattleManager(BattleManagerFactory battleManagerFactory) { _battleManagerFactory = battleManagerFactory; _battleManagers = new Dictionary <string, IBattleManager>(); _aiBattleManagers = new Dictionary <int, IBattleManager>(); _uniqueBattleManagers = new List <IBattleManager>(); }