예제 #1
0
        public MyUseObjective(
            MyTextsWrapperEnum name,
            MyMissionID id,
            MyTextsWrapperEnum description,
            MyTexture2D icon,
            MyMission parentMission,
            MyMissionID[] requiredMissions,
            MyMissionLocation location,
            MyTextsWrapperEnum notificationText,
            MyTextsWrapperEnum useCaption,
            MyTextsWrapperEnum useText,
            int requiredTime,
            MyUseObjectiveType objectiveType = MyUseObjectiveType.Hacking,
            MyDialogueEnum? successDialogId = null,
            MyDialogueEnum? startDialogId = null,
            float? radiusOverride = null,
            List<uint> fakeMissionIds = null,
            uint? realMissionId = null)
            : base(name, id, description, icon, parentMission, requiredMissions, location, fakeMissionIds, successDialogId, startDialogId, radiusOverride: radiusOverride)
        {
            m_notificationText = notificationText;
            m_useText = useText;
            m_useCaption = useCaption;
            m_requiredTime = requiredTime;
            m_realMissionEntityId = realMissionId;
            InitSounds(objectiveType);

            if (location != null)
            {
                if (location.LocationEntityIdentifier.LocationEntityId != null)
                {
                    RequiredEntityIDs.Add(location.LocationEntityIdentifier.LocationEntityId.Value);
                }
            }
        }
 private void InitSounds(MyUseObjectiveType objectiveType)
 {
     switch (objectiveType)
     {
         case MyUseObjectiveType.Activating:
             m_progressCue = MySoundCuesEnum.SfxProgressActivation;
             m_cancelCue = MySoundCuesEnum.SfxCancelActivation;
             break;
         case MyUseObjectiveType.Building:
             m_progressCue = MySoundCuesEnum.SfxProgressBuild;
             m_cancelCue = MySoundCuesEnum.SfxCancelBuild;
             break;
         case MyUseObjectiveType.Hacking:
             m_progressCue = MySoundCuesEnum.SfxProgressHack;
             m_cancelCue = MySoundCuesEnum.SfxCancelHack;
             break;
         case MyUseObjectiveType.Repairing:
             m_progressCue = MySoundCuesEnum.SfxProgressRepair;
             m_cancelCue = MySoundCuesEnum.SfxCancelRepair;
             break;
         case MyUseObjectiveType.Taking:
             m_progressCue = MySoundCuesEnum.SfxProgressTake;
             m_cancelCue = MySoundCuesEnum.SfxCancelTake;
             break;
         case MyUseObjectiveType.Putting:
             m_progressCue = MySoundCuesEnum.SfxProgressPut;
             m_cancelCue = MySoundCuesEnum.SfxCancelPut;
             break;
     }
 }
        public MyMultipleUseObjective(
            MyTextsWrapperEnum name,
            MyMissionID id,
            MyTextsWrapperEnum description,
            MyTexture2D icon,
            MyMission parentMission,
            MyMissionID[] requiredMissions,
            MyTextsWrapperEnum notificationText,
            MyTextsWrapperEnum useCaption,
            MyTextsWrapperEnum useText,
            int requiredTime,
            List<uint> MissionEntityIDs,
            MyUseObjectiveType objectiveType = MyUseObjectiveType.Hacking,


            MyDialogueEnum? startDialogId = null)
            : base(name, id, description, icon, parentMission, requiredMissions, null, MissionEntityIDs, startDialogId: startDialogId)
        {
            m_notificationText = notificationText;
            m_useText = useText;
            m_useCaption = useCaption;
            m_requiredTime = requiredTime;

            m_objectiveType = objectiveType;
        }
        private void InitSounds(MyUseObjectiveType objectiveType)
        {
            switch (objectiveType)
            {
            case MyUseObjectiveType.Activating:
                m_progressCue = MySoundCuesEnum.SfxProgressActivation;
                m_cancelCue   = MySoundCuesEnum.SfxCancelActivation;
                break;

            case MyUseObjectiveType.Building:
                m_progressCue = MySoundCuesEnum.SfxProgressBuild;
                m_cancelCue   = MySoundCuesEnum.SfxCancelBuild;
                break;

            case MyUseObjectiveType.Hacking:
                m_progressCue = MySoundCuesEnum.SfxProgressHack;
                m_cancelCue   = MySoundCuesEnum.SfxCancelHack;
                break;

            case MyUseObjectiveType.Repairing:
                m_progressCue = MySoundCuesEnum.SfxProgressRepair;
                m_cancelCue   = MySoundCuesEnum.SfxCancelRepair;
                break;

            case MyUseObjectiveType.Taking:
                m_progressCue = MySoundCuesEnum.SfxProgressTake;
                m_cancelCue   = MySoundCuesEnum.SfxCancelTake;
                break;

            case MyUseObjectiveType.Putting:
                m_progressCue = MySoundCuesEnum.SfxProgressPut;
                m_cancelCue   = MySoundCuesEnum.SfxCancelPut;
                break;
            }
        }
        public MyMultipleUseObjective(
            MyTextsWrapperEnum name,
            MyMissionID id,
            MyTextsWrapperEnum description,
            MyTexture2D icon,
            MyMission parentMission,
            MyMissionID[] requiredMissions,
            MyTextsWrapperEnum notificationText,
            MyTextsWrapperEnum useCaption,
            MyTextsWrapperEnum useText,
            int requiredTime,
            List <uint> MissionEntityIDs,
            MyUseObjectiveType objectiveType = MyUseObjectiveType.Hacking,


            MyDialogueEnum?startDialogId = null)
            : base(name, id, description, icon, parentMission, requiredMissions, null, MissionEntityIDs, startDialogId: startDialogId)
        {
            m_notificationText = notificationText;
            m_useText          = useText;
            m_useCaption       = useCaption;
            m_requiredTime     = requiredTime;

            m_objectiveType = objectiveType;
        }
예제 #6
0
        public MyUseObjective(
            StringBuilder name,
            MyMissionID id,
            StringBuilder description,
            MyTexture2D icon,
            MyMission parentMission,
            MyMissionID[] requiredMissions,
            MyMissionLocation location,
            MyTextsWrapperEnum notificationText,
            MyTextsWrapperEnum useCaption,
            MyTextsWrapperEnum useText,
            int requiredTime,
            MyUseObjectiveType objectiveType = MyUseObjectiveType.Hacking,
            MyDialogueEnum?successDialogId   = null,
            MyDialogueEnum?startDialogId     = null,
            float?radiusOverride             = null,
            List <uint> fakeMissionIds       = null,
            uint?realMissionId = null)
            : base(name, id, description, icon, parentMission, requiredMissions, location, fakeMissionIds, successDialogId, startDialogId, radiusOverride: radiusOverride)
        {
            m_notificationText    = notificationText;
            m_useText             = useText;
            m_useCaption          = useCaption;
            m_requiredTime        = requiredTime;
            m_realMissionEntityId = realMissionId;
            InitSounds(objectiveType);

            if (location != null)
            {
                if (location.LocationEntityIdentifier.LocationEntityId != null)
                {
                    RequiredEntityIDs.Add(location.LocationEntityIdentifier.LocationEntityId.Value);
                }
            }
        }