private void UpdateUnitInfoWindow() { if (_unitInfoWindows == null) { return; } if (_selectedUnitInfo != null) { string info = ""; info = _selectedUnitInfo.ToLongString();// +"\n" //+ "Distance to target: " + _selectedUnitInfo.Position.MostRecentDistanceToTargetM + "\n"; info += _selectedUnitInfo.UnitSubType.ToString() + "\n"; info += "Mission: " + _selectedUnitInfo.MissionType + " " + _selectedUnitInfo.MissionTargetType + "\n"; if (_selectedUnitInfo.HasFormationOrder) { info += "Has formation order\n"; } if (_selectedUnitInfo.SupportsOrderType.Contains(GameConstants.OrderType.SpecialOrders)) { info += "Special orders:\n"; foreach (var specOrder in _selectedUnitInfo.SupportsSpecialOrders) { info += specOrder + "\n"; } } foreach (var order in _selectedUnitInfo.OrderQueue) { info += order + "\n"; } if (_selectedUnitInfo.IsUsingActiveRadar) { info += "Active Radar\n"; } if (_selectedUnitInfo.IsUsingActiveSonar) { info += "Active Sonar\n"; } foreach (var sens in _selectedUnitInfo.Sensors) { info += string.Format("\n* {0} Operational: {1}", sens.ToString(), sens.IsOperational); } foreach (var wpn in _selectedUnitInfo.Weapons) { info += string.Format("\n* {0} Ammo: {1} of {2}", wpn.ToString(), wpn.AmmunitionRemaining, wpn.MaxAmmunition); } _unitInfoWindows.ShowInfo(info); } if (_selectedDetectedUnitInfo != null) { string info = _selectedDetectedUnitInfo.ToLongString(); _unitInfoWindows.ShowDetectedUnitInfo(info); } }
private void btnInfo_Click(object sender, RoutedEventArgs e) { BaseUnitInfo unit = lstUnits.SelectedItem as BaseUnitInfo; if (unit != null) { string info = ""; info = unit.ToLongString(); // +"\n" + "Distance to target: " + unit.Position.MostRecentDistanceToTargetM + "\n"; foreach (var sens in unit.Sensors) { info += string.Format("\n* {0} Operational: {1}", sens.ToString(), sens.IsOperational); } foreach (var wpn in unit.Weapons) { info += string.Format("\n* {0} Ammo: {1} of {2}", wpn.ToString(), wpn.AmmunitionRemaining, wpn.MaxAmmunition); } _unitInfoWindows.ShowInfo(info); } }