private void AssessFleetIcon() { IIcon fleetIcon; GameColor color = GameColor.White; // TODO evaluate Composition switch (View.PlayerIntel.Scope) { case IntelScope.None: fleetIcon = _iconFactory.MakeInstance<FleetIcon>(IconSection.Base, IconSelectionCriteria.None); //color = GameColor.Clear; // None should be a completely transparent icon break; case IntelScope.Aware: fleetIcon = _iconFactory.MakeInstance<FleetIcon>(IconSection.Base, IconSelectionCriteria.IntelLevelUnknown); // color = GameColor.White; // may be clear from prior setting break; case IntelScope.Minimal: case IntelScope.Moderate: fleetIcon = _iconFactory.MakeInstance<FleetIcon>(IconSection.Base, IconSelectionCriteria.Level5); color = Item.Data.Owner.Color; break; case IntelScope.Comprehensive: var selectionCriteria = new IconSelectionCriteria[] { IconSelectionCriteria.Level5, IconSelectionCriteria.Science, IconSelectionCriteria.Colony, IconSelectionCriteria.Troop }; fleetIcon = _iconFactory.MakeInstance<FleetIcon>(IconSection.Base, selectionCriteria); color = Item.Data.Owner.Color; break; default: throw new NotImplementedException(ErrorMessages.UnanticipatedSwitchValue.Inject(View.PlayerIntel.Scope)); } D.Log("IntelScope is {2}, changing {0} to {1}.", typeof(FleetIcon).Name, fleetIcon.Filename, View.PlayerIntel.Scope.GetName()); View.ChangeFleetIcon(fleetIcon, color); }
private void AssessFleetIcon() { //TODO evaluate Composition switch (PlayerIntelLevel) { case IntelLevel.Nil: _fleetIcon = _iconFactory.MakeInstance<FleetIcon>(IconSection.Base, IconSelectionCriteria.None); _fleetIconSprite.color = GameColor.Clear.ToUnityColor(); //TODO None should be a completely transparent icon break; case IntelLevel.Unknown: _fleetIcon = _iconFactory.MakeInstance<FleetIcon>(IconSection.Base, IconSelectionCriteria.Unknown); _fleetIconSprite.color = GameColor.White.ToUnityColor(); // may be clear from prior setting break; case IntelLevel.OutOfDate: _fleetIcon = _iconFactory.MakeInstance<FleetIcon>(IconSection.Base, IconSelectionCriteria.Unknown); _fleetIconSprite.color = Data.Owner.Color.ToUnityColor(); break; case IntelLevel.LongRangeSensors: _fleetIcon = _iconFactory.MakeInstance<FleetIcon>(IconSection.Base, IconSelectionCriteria.Level5); _fleetIconSprite.color = Data.Owner.Color.ToUnityColor(); break; case IntelLevel.ShortRangeSensors: case IntelLevel.Complete: var selectionCriteria = new IconSelectionCriteria[] { IconSelectionCriteria.Level5, IconSelectionCriteria.Science, IconSelectionCriteria.Colony, IconSelectionCriteria.Troop }; _fleetIcon = _iconFactory.MakeInstance<FleetIcon>(IconSection.Base, selectionCriteria); _fleetIconSprite.color = Data.Owner.Color.ToUnityColor(); break; case IntelLevel.None: default: throw new NotImplementedException(ErrorMessages.UnanticipatedSwitchValue.Inject(PlayerIntelLevel)); } _fleetIconSprite.spriteName = _fleetIcon.Filename; D.Log("IntelLevel is {2}, changing {0} to {1}.", typeof(FleetIconIdentity).Name, _fleetIcon.Filename, PlayerIntelLevel.GetValueName()); }