예제 #1
0
        private void Start()
        {
            if (UnityEngine.Object.op_Equality((UnityEngine.Object) this.mConditionObjectTemplate, (UnityEngine.Object)null))
            {
                return;
            }
            this.mConditionObjectTemplate.SetActive(false);
            UnitData unitDataByUniqueId = MonoSingleton <GameManager> .Instance.Player.FindUnitDataByUniqueID((long)GlobalVars.SelectedUnitUniqueID);

            TobiraParam.Category unitTobiraCategory = (TobiraParam.Category)GlobalVars.PreBattleUnitTobiraCategory;
            if (unitDataByUniqueId == null || unitTobiraCategory <= TobiraParam.Category.START || unitTobiraCategory >= TobiraParam.Category.MAX)
            {
                return;
            }
            this.mLayoutObjects    = new GameObject[6];
            this.mLayoutObjects[1] = this.mLayout_UnitLevel;
            this.mLayoutObjects[2] = this.mLayout_UnitAwake;
            this.mLayoutObjects[3] = this.mLayout_JobLevel;
            this.mLayoutObjects[4] = this.mLayout_TobiraLevel;
            this.mLayoutObjects[5] = this.mLayout_TobiraOpen;
            this.mLayoutObjects[0] = this.mLayout_None;
            TobiraConditionParam[] conditionsForUnit = MonoSingleton <GameManager> .Instance.MasterParam.GetTobiraConditionsForUnit(unitDataByUniqueId.UnitID, unitTobiraCategory);

            List <ConditionsResult> conditionsResultList = TobiraUtility.TobiraConditionsCheck(unitDataByUniqueId, conditionsForUnit);

            for (int index = 0; index < conditionsResultList.Count; ++index)
            {
                this.CreateLayout(conditionsResultList[index]);
            }
        }
예제 #2
0
        private void CreateConditionsItems(UnitData unitData, TobiraConditionParam[] condition_params)
        {
            List <ConditionsResult> conditionsResultList = TobiraUtility.TobiraConditionsCheck(unitData, condition_params);
            int num = Mathf.Max(this.mTobiraConditions.Count, conditionsResultList.Count);

            for (int index = 0; index < num; ++index)
            {
                if (this.mTobiraConditions.Count <= index)
                {
                    UnitTobiraConditionsItem component = (UnitTobiraConditionsItem)((GameObject)UnityEngine.Object.Instantiate <GameObject>((M0)((Component)this.mTobiraConditionsTemplate).get_gameObject())).GetComponent <UnitTobiraConditionsItem>();
                    ((Component)component).get_transform().SetParent(((Component)this.mTobiraConditionsContent).get_transform(), false);
                    this.mTobiraConditions.Add(component);
                }
                UnitTobiraConditionsItem mTobiraCondition = this.mTobiraConditions[index];
                if (conditionsResultList.Count <= index)
                {
                    ((Component)mTobiraCondition).get_gameObject().SetActive(false);
                }
                else
                {
                    mTobiraCondition.Setup(conditionsResultList[index]);
                    ((Component)mTobiraCondition).get_gameObject().SetActive(true);
                }
            }
        }
예제 #3
0
        public static bool IsClearAllToboraConditions(UnitData unit_data, TobiraParam.Category tobira_category)
        {
            TobiraConditionParam[] conditionsForUnit = MonoSingleton <GameManager> .Instance.MasterParam.GetTobiraConditionsForUnit(unit_data.UnitID, tobira_category);

            if (conditionsForUnit == null)
            {
                return(true);
            }
            bool flag = true;
            List <ConditionsResult> conditionsResultList = TobiraUtility.TobiraConditionsCheck(unit_data, conditionsForUnit);

            for (int index = 0; index < conditionsResultList.Count; ++index)
            {
                if (!conditionsResultList[index].isClear)
                {
                    flag = false;
                    break;
                }
            }
            return(flag);
        }