/// <summary> /// GetSelectableEntity - return top most parent which can be selectable (in case of weapons slection return ship!) /// </summary> /// <param name="entity"></param> /// <returns></returns> public static MyEntity GetSelectableEntity(MyEntity entity) { if (entity == null) return null; if (entity.Parent == null) { if (entity.IsSelectable()) return entity; else return null; } MyEntity currEntity = entity; MyEntity topMostSelectable = (currEntity.IsSelectable()) ? currEntity : null; //store while (currEntity.Parent != null) { if (currEntity.IsSelectableAsChild() && currEntity.IsSelectable()) return currEntity; currEntity = currEntity.Parent; if (currEntity.IsSelectable()) topMostSelectable = currEntity; } return topMostSelectable; }