Exemple #1
0
 public static void Reset()
 {
     targetVesselSelector    = null;
     missionProfileSelector  = null;
     payloadResourceSelector = null;
     scrollPos = Vector2.zero;
 }
Exemple #2
0
        private static bool DisplayInner()
        {
            // Target selection:
            if (targetVesselSelector == null)
            {
                targetVesselSelector = new GUITargetVesselSelector();
            }
            if (targetVesselSelector.targetVessel == null)
            {
                targetVesselSelector.DisplayList();
                return(false);
            }
            if (targetVesselSelector.DisplaySelected())
            {
                missionProfileSelector  = null;
                payloadResourceSelector = null;
                return(false);
            }

            // Mission-Profile selection:
            if (missionProfileSelector == null)
            {
                missionProfileSelector = new GUIMissionProfileSelector();
                missionProfileSelector.filterAltitude         = targetVesselSelector.targetVessel.orbit.ApA;
                missionProfileSelector.filterBody             = targetVesselSelector.targetVessel.orbit.referenceBody;
                missionProfileSelector.filterDockingPortTypes = TargetVessel.GetVesselDockingPortTypes(targetVesselSelector.targetVessel);
                missionProfileSelector.filterMissionType      = MissionProfileType.TRANSPORT;
            }
            if (missionProfileSelector.selectedProfile == null)
            {
                missionProfileSelector.DisplayList();
                return(false);
            }
            if (missionProfileSelector.DisplaySelected(GUIMissionProfileSelector.SELECTED_DETAILS_PAYLOAD))
            {
                payloadResourceSelector = null;
                return(false);
            }
            currentCost += missionProfileSelector.selectedProfile.launchCost;

            // Payload-Resource selection:
            if (payloadResourceSelector == null)
            {
                payloadResourceSelector = new GUITransportSelector(targetVesselSelector.targetVessel, missionProfileSelector.selectedProfile);
            }
            payloadResourceSelector.DisplayList(); // Always display this selector (it has to be the last), but return when nothing is selected.

            if (payloadResourceSelector.selectedResources != null)
            {
                // Determine the cost of the selected resources:
                foreach (var payloadResource in payloadResourceSelector.selectedResources)
                {
                    currentCost += KSTS.resourceDictionary[payloadResource.name].unitCost * payloadResource.amount;
                }
                return(true);
            }
            else if (payloadResourceSelector.selectedCrewTransfers != null)
            {
                return(true);
            }
            return(false);
        }