void CreatePlayerFromLane(Lane givenLane) { foreach (IPlayerProvider provider in playerProviderLoader.GetPlayerProvider()) { if (provider.IsValidPlayertype(givenLane.playerType)) { IPlayer player = provider.GetPlayer(givenLane.playerConfig); player.ParentId = givenLane.parentId; players[givenLane.ergId] = player; laneList.UpdatePlayer(player); } } }
private void button_Ok_Click(object sender, RoutedEventArgs e) { Lane laneCfg = new Lane(); laneCfg.laneIndex = laneIndex; laneCfg.isMainPlayer = (bool)mainPlayerCheckBox.IsChecked; laneCfg.ergId = nameTextBox.Text; laneCfg.playerType = typeComboBox.Text; List <IPlayerProvider> possiblePlayers = playerLoader.GetPlayerProvider(); foreach (IPlayerProvider provider in possiblePlayers) { if (provider.IsValidPlayertype(laneCfg.playerType)) { laneCfg.playerConfig = provider.GetDefaultPlayerConfig(); } } OnOk(laneIndex, laneCfg); this.Close(); }