private void HighlightSquad(ISquadClientModel squadModel, HighlightType type) { var highlightData = _highlight[type]; if (squadModel == null) { ClearMarkers(highlightData); } else if (highlightData.LastSquadModel != squadModel) { ClearMarkers(highlightData); var personModels = FindObjectsOfType <CombatPersonModel>(); foreach (var combatPerson in squadModel.Squad.Persons) { var model = personModels.Single(x => x.CombatPerson == combatPerson); var marker = Instantiate(SelectionMarkerPrefab, model.transform); highlightData.Markers.Add(marker); } highlightData.LastSquadModel = squadModel; } }
private ISquadClientModel FindSquadClientModel(CombatPersonModel combatPersonModel) { ISquadClientModel clickedSquad = null; foreach (var combatSquadModel in _squadModels) { foreach (var personModel in combatSquadModel.PersonModels) { if (personModel == combatPersonModel) { clickedSquad = combatSquadModel; break; } } if (clickedSquad != null) { break; } } return(clickedSquad); }