private bool AtLeastOneBetterShield(float remainingSpace)
{
if (_shipDesign.Shield != null && _shipDesign.Shield.Technology == _availableShieldTechs[_availableShieldTechs.Count - 1])
{
//Already the best shield
return false;
}
int index = (_shipDesign.Shield == null ? -1 : _availableShieldTechs.IndexOf(_shipDesign.Shield.Technology)) + 1; //Just one level higher will suffice
return index < _availableShieldTechs.Count && GetSpaceUsed(_availableShieldTechs[index], false) <= remainingSpace;
}