public Task Initialize(MatchConfig config) { Assert.IsTrue(config.IsValid); PlayerSimulations = new PlayerSimulation[config.PlayerCount]; var tasks = new List <Task>(); for (int i = 0; i < PlayerSimulations.Length; i++) { PlayerSimulations[i] = new PlayerSimulation(); tasks.Add(PlayerSimulations[i].Initialize(config.PlayerConfigs[i])); } context = Mediator.Global.CreateContext(); context.Subscribe <PlayerResetEvent>(ResetPlayer); return(Task.WhenAll(tasks)); }
public Task Initialize(MatchConfig config) { Events = Mediator.Global.CreateContext(); Events.Subscribe <PlayerDiedEvent>(OnPlayerDied); return(Task.CompletedTask); }