Пример #1
0
        private CW_MissionSection CreateMissionSection(IMissionSection mission)
        {
            if (MissionSectionPrefab == null || MissionSectionTransform == null)
            {
                return(null);
            }

            GameObject obj = Instantiate(MissionSectionPrefab);

            if (obj == null)
            {
                return(null);
            }

            obj.transform.SetParent(MissionSectionTransform, false);

            CW_MissionSection missionObject = obj.GetComponent <CW_MissionSection>();

            if (missionObject == null)
            {
                return(null);
            }

            missionObject.setMission(mission);

            return(missionObject);
        }
Пример #2
0
        public void setContract(IContractSection contract, CW_MissionSection mission)
        {
            if (contract == null)
            {
                return;
            }

            if (mission == null)
            {
                return;
            }

            if (ContractTitle == null || ContractRewardText == null || ContractPenaltyText == null || ParamToggle == null)
            {
                return;
            }

            parent = mission;

            contractInterface = contract;

            ContractTitle.OnTextUpdate.Invoke(contract.ContractTitle);

            if (CW_Window.Window != null && CW_Window.Window.Scroll != null && Highlighter != null)
            {
                Highlighter.setScroller(CW_Window.Window.Scroll);
            }

            handleColors(stateColor(contract.ContractState));

            ContractRewardText.OnTextUpdate.Invoke(contract.RewardText);

            ContractPenaltyText.OnTextUpdate.Invoke(contract.PenaltyText);

            ParamToggle.isOn = contract.ShowParams;

            prepareHeader();

            CreateParameterSections(contract.GetParameters);

            if (!contract.ShowParams && ParameterSectionTransform != null)
            {
                ParameterSectionTransform.gameObject.SetActive(false);
            }

            loaded = true;
        }
Пример #3
0
        public void SelectMission(IMissionSection mission)
        {
            if (currentMission != null)
            {
                if (currentMission.MissionTitle != mission.MissionTitle)
                {
                    DestroyImmediate(currentMission.gameObject);
                }
                else
                {
                    return;
                }
            }

            currentMission = CreateMissionSection(mission);

            if (currentMission == null)
            {
                return;
            }

            loaded = false;

            prepareTopBar();

            if (MissionTitle != null)
            {
                MissionTitle.OnTextUpdate.Invoke(currentMission.MissionTitle + ":");
            }

            if (MissionEdit != null)
            {
                if (currentMission.MasterMission)
                {
                    MissionEdit.gameObject.SetActive(false);
                }
                else
                {
                    MissionEdit.gameObject.SetActive(true);
                }
            }

            ProcessTooltips();
        }