Пример #1
0
    protected override void OnOpen()
    {
        SlotInfo.ClearCurrentSlotLoaded();
        ((UserSlotData)UserData.instance).SetSlot(-1, false);
        SceneState.instance.SetGlobalValue(LevelController.timeTrialKey, 0, false);

        bool hasCleared = false;

        ModalSaveSlots modalSlots = UIModalManager.instance.ModalGetController <ModalSaveSlots>("slots");

        for (int i = 0; i < modalSlots.slots.Length; i++)
        {
            if (SlotInfo.HasClearTime(i))
            {
                hasCleared = true;
                break;
            }
        }

        if (hasCleared)
        {
            activeGOCleared.SetActive(true);
        }
        else
        {
            activeGODefault.SetActive(true);
        }
    }
Пример #2
0
    IEnumerator DoWait()
    {
        yield return(StartCoroutine(Achievement.instance.WaitServiceComplete()));

        waitGO.SetActive(false);

        UICamera.selectedObject = items[0].l.gameObject;

        for (int i = 0; i < items.Length; i++)
        {
            items[i].l.onClick = OnItemClick;

            //check locked
            bool isLocked;
            if (TimeTrial.instance.data[i].requireUnlock)
            {
                if (!Achievement.instance.AchievementIsUnlocked(TimeTrial.instance.data[i].achieveId))
                {
                    isLocked = true;

                    //go through slot data
                    ModalSaveSlots modalSlots = UIModalManager.instance.ModalGetController <ModalSaveSlots>("slots");
                    for (int s = 0; s < modalSlots.slots.Length; s++)
                    {
                        SceneState.instance.ResetGlobalValues();
                        UserSlotData.LoadSlot(s, false);
                        if (LevelController.IsLevelComplete(TimeTrial.instance.data[i].level))
                        {
                            isLocked = false;
                            break;
                        }

                        UserSlotData.LoadSlot(-1, false);
                    }
                }
                else
                {
                    isLocked = false;
                }
            }
            else
            {
                isLocked = false;
            }

            if (isLocked)
            {
                items[i].label.text  = "?????";
                items[i].label.color = Color.gray;
                items[i].time.text   = "BEST - ---:--.--";

                items[i].locked = true;
            }
            else
            {
                items[i].label.text  = TimeTrial.instance.data[i].name;
                items[i].label.color = activeColor;

                if (TimeTrial.Exists(TimeTrial.instance.data[i].level))
                {
                    items[i].time.text = "BEST - " + LevelController.LevelTimeFormat(TimeTrial.Load(TimeTrial.instance.data[i].level));
                }
                else
                {
                    items[i].time.text = "BEST - ---:--.--";
                }

                items[i].locked = false;
            }
        }

        back.onClick = OnReturn;
    }