public void UpdateStartingLocationTexts() { foreach (PlayerLocationIndicator indicator in startingLocationIndicators) { indicator.Players.Clear(); } foreach (PlayerInfo pInfo in players) { if (pInfo.StartingLocation > 0) { startingLocationIndicators[pInfo.StartingLocation - 1].Players.Add(pInfo); } } foreach (PlayerInfo aiInfo in aiPlayers) { if (aiInfo.StartingLocation > 0) { startingLocationIndicators[aiInfo.StartingLocation - 1].Players.Add(aiInfo); } } foreach (PlayerLocationIndicator indicator in startingLocationIndicators) { indicator.Refresh(); } contextMenu.ClearItems(); int id = 1; var playerList = players.Concat(aiPlayers).ToList(); for (int i = 0; i < playerList.Count; i++) { PlayerInfo pInfo = playerList[i]; string text = pInfo.Name; if (pInfo.TeamId > 0) { text = teamIds[pInfo.TeamId] + text; } int index = i; XNAContextMenuItem item = new XNAContextMenuItem() { Text = id + ". " + text, TextColor = pInfo.ColorId > 0 ? mpColors[pInfo.ColorId - 1].XnaColor : Color.White, SelectAction = () => ContextMenu_OptionSelected(index), }; contextMenu.AddItem(item); id++; } }
public void UpdateStartingLocationTexts() { foreach (PlayerLocationIndicator indicator in startingLocationIndicators) { indicator.Players.Clear(); } foreach (PlayerInfo pInfo in players) { if (pInfo.StartingLocation > 0) { startingLocationIndicators[pInfo.StartingLocation - 1].Players.Add(pInfo); } } foreach (PlayerInfo aiInfo in aiPlayers) { if (aiInfo.StartingLocation > 0) { startingLocationIndicators[aiInfo.StartingLocation - 1].Players.Add(aiInfo); } } foreach (PlayerLocationIndicator indicator in startingLocationIndicators) { indicator.Refresh(); } contextMenu.ClearItems(); int id = 1; foreach (PlayerInfo pInfo in players.Concat(aiPlayers)) { string text = pInfo.Name; if (pInfo.TeamId > 0) { text = teamIds[pInfo.TeamId] + text; } contextMenu.AddItem(id + ". " + text, pInfo.ColorId > 0 ? mpColors[pInfo.ColorId - 1].XnaColor : Color.White); id++; } }