protected void SetState(RankUpChangeStageState state) { switch (state) { case RankUpChangeStageState.None: if (this.RankUpChangeUIStageUnitTaskSign.get_gameObject().get_activeSelf()) { this.RankUpChangeUIStageUnitTaskSign.get_gameObject().SetActive(false); } break; case RankUpChangeStageState.Done: if (!this.RankUpChangeUIStageUnitTaskSign.get_gameObject().get_activeSelf()) { this.RankUpChangeUIStageUnitTaskSign.get_gameObject().SetActive(true); } ResourceManager.SetSprite(this.RankUpChangeUIStageUnitTaskSign, ResourceManager.GetCodeSprite("zz_biaoqian_02")); break; case RankUpChangeStageState.Doing: if (!this.RankUpChangeUIStageUnitTaskSign.get_gameObject().get_activeSelf()) { this.RankUpChangeUIStageUnitTaskSign.get_gameObject().SetActive(true); } ResourceManager.SetSprite(this.RankUpChangeUIStageUnitTaskSign, ResourceManager.GetCodeSprite("zz_biaoqian_01")); break; } }
protected void InitStage(Action callback = null) { if (!DataReader <AdvancedJob> .Contains(this.CurCareer)) { return; } AdvancedJob careerData = DataReader <AdvancedJob> .Get(this.CurCareer); this.stageUnitList.Clear(); this.RankUpChangeUIStageUnitSR.OnHasBuilt = delegate { if (callback != null) { callback.Invoke(); } }; this.stageListPool.Create(careerData.stageId.get_Count(), delegate(int index) { if (index < careerData.stageId.get_Count() && index < this.stageListPool.Items.get_Count()) { RankUpChangeUIStageUnit component = this.stageListPool.Items.get_Item(index).GetComponent <RankUpChangeUIStageUnit>(); if (!DataReader <StageInfo> .Contains(careerData.stageId.get_Item(index))) { return; } StageInfo stageInfo = DataReader <StageInfo> .Get(careerData.stageId.get_Item(index)); RankUpChangeStageState stageState = this.GetStageState(careerData.stageId.get_Item(index)); XDict <int, bool> xDict = new XDict <int, bool>(); int num = (stageInfo.taskid.get_Count() >= stageInfo.description.get_Count()) ? stageInfo.description.get_Count() : stageInfo.taskid.get_Count(); for (int i = 0; i < num; i++) { if (xDict.ContainsKey(stageInfo.description.get_Item(i))) { xDict[stageInfo.description.get_Item(i)] = this.GetIsTaskFinished(stageState, stageInfo.taskid.get_Item(i)); } else { xDict.Add(stageInfo.description.get_Item(i), this.GetIsTaskFinished(stageState, stageInfo.taskid.get_Item(i))); } } component.SetData(stageInfo.title, xDict, stageState); this.stageUnitList.Add(component); } }); }
public void SetData(int title, XDict <int, bool> conditionInfo, RankUpChangeStageState state) { this.SetTitle(title); this.SetCondition(conditionInfo); this.SetState(state); }
protected bool GetIsTaskFinished(RankUpChangeStageState stageState, int taskID) { return(stageState == RankUpChangeStageState.Done || (stageState != RankUpChangeStageState.None && RankUpChangeManager.Instance.IsTaskFinished(taskID))); }