示例#1
0
    public void Initialize(CsvLevelData _data)
    {
        const int iNum = 9;

        Initialize(iNum,
                   new int [iNum] {
            _data.number1,
            _data.number2,
            _data.number3,
            _data.number4,
            _data.number5,
            _data.number6,
            _data.number7,
            _data.number8,
            _data.number9
        }
                   );
    }
示例#2
0
    void Update()
    {
        bool bInit = false;

        if (m_eStepPre != m_eStep)
        {
            m_eStepPre = m_eStep;
            bInit      = true;
        }

        switch (m_eStep)
        {
        case STEP.START:

            if (bInit)
            {
                m_fTimer = 0.0f;

                m_UnderNumberRed.Initialize(m_DotManager.GetNumber(DefineProject.DOT_COLOR.RED));
                m_UnderNumberBlue.Initialize(m_DotManager.GetNumber(DefineProject.DOT_COLOR.BLUE));

                if (DataManagerEqual.Instance.m_iPlayLevel == 0)
                {
                    DataManagerEqual.Instance.m_iPlayLevel = 1;
                }
                CsvLevelData level_data = DataManagerEqual.Instance.GetLevelData(DataManagerEqual.Instance.m_iPlayLevel);
                m_DotManager.Initialize(level_data);

                m_UnderNumberRed.SetNumber(m_DotManager.GetNumber(DefineProject.DOT_COLOR.RED));
                m_UnderNumberBlue.SetNumber(m_DotManager.GetNumber(DefineProject.DOT_COLOR.BLUE));

                m_lbHeaderLevel.text = string.Format("Level {0}", DataManagerEqual.Instance.m_iPlayLevel);
            }
            m_fTimer += Time.deltaTime;
            if (0.5f < m_fTimer)
            {
                m_eStep = STEP.SKIT;
            }
            break;

        case STEP.SKIT:
            if (bInit)
            {
                FadeInOut.Instance.Open(0.25f);
            }
            if (FadeInOut.Instance.IsIdle())
            {
                ShowAd(true);

                m_eStep = STEP.IDLE;
            }
            break;

        case STEP.IDLE:
            if (bInit)
            {
                m_DotManager.ButtonInit();
                m_DotManager.TriggerClearAll();

                m_btnBack.TriggerClear();
                m_btnHelp.TriggerClear();
            }
            if (m_DotManager.ButtonPushed)
            {
                m_eStep = STEP.CLICK_DOT;
            }
            else if (m_btnBack.ButtonPushed)
            {
                m_eStep = STEP.BACK_SELECT;
            }
            else if (m_btnHelp.ButtonPushed)
            {
                m_eStep = STEP.HELP;
            }
            else
            {
            }
            // 最初の方だけ出る
            if (DataManagerEqual.Instance.m_iPlayLevel < 10)
            {
                if (m_telop.IsIdle())
                {
                    int iMessageIndex = UtilRand.GetRand(TELOP_MESSAGE_ARR.Length);
                    m_telop.SetTelop(TELOP_MESSAGE_ARR [iMessageIndex]);
                }
            }
            break;

        case STEP.HELP:
            if (bInit)
            {
                                #if UNITY_ANDROID
                m_NendAdIcon.Hide();
                                #endif
                m_Page = PrefabManager.Instance.MakeScript <HelpMain> ("prefab/RootHelp", m_goDispRoot);
                m_Page.PageStart();
            }
            if (m_Page.IsEnd())
            {
                m_eStep = STEP.IDLE;
                Destroy(m_Page.gameObject);
                                #if UNITY_ANDROID
                m_NendAdIcon.Show();
                                #endif
            }
            break;

        case STEP.CLICK_DOT:
            if (bInit)
            {
                int iClickedDotIndex = m_DotManager.Index;
                m_DotManager.ChangeDotColor(iClickedDotIndex, 3, true);
                m_UnderNumberRed.SetNumber(m_DotManager.GetNumber(DefineProject.DOT_COLOR.RED));
                m_UnderNumberBlue.SetNumber(m_DotManager.GetNumber(DefineProject.DOT_COLOR.BLUE));
            }

            m_eStep = STEP.CLEAR_CHECK;
            break;

        case STEP.CLEAR_CHECK:
            if (m_DotManager.IsClear(ref m_iClearScore, new int[(int)DefineProject.DOT_COLOR.MAX] {
                0, 3, 3, 0
            }))
            {
                m_eStep = STEP.CLEAR;
            }
            else
            {
                m_eStep = STEP.IDLE;
            }
            break;

        case STEP.CLEAR:
            if (bInit)
            {
                // サーバー側で設定した回数で表示される
                NendAdInterstitial.Instance.Show(DefineProject.NEND_AD_INTER_SPOT_ID);

                DataManagerEqual.Instance.SetStageStatus(DataManagerEqual.Instance.m_iPlayLevel, DefineProject.STAGE_STATUS.CLEARED);
                if (DataManagerEqual.Instance.GetStageStatus(DataManagerEqual.Instance.m_iPlayLevel + 1) == DefineProject.STAGE_STATUS.NONE)
                {
                    DataManagerEqual.Instance.SetStageStatus(DataManagerEqual.Instance.m_iPlayLevel + 1, (DefineProject.STAGE_STATUS.NO_PLAY));
                }

                m_ClearDialog.gameObject.SetActive(true);
                TweenAlphaAll(m_ClearDialog.gameObject, 0.0f, 0.0f);
                TweenAlphaAll(m_ClearDialog.gameObject, 0.5f, 1.0f);
                m_ClearDialog.Initialize(DataManagerEqual.Instance.m_iPlayLevel, m_iClearScore);

                m_btnBack.TriggerClear();
                ShowAd(false);
            }
            if (m_ClearDialog.IsNext())
            {
                m_eStep = STEP.NEXT;
                TweenAlphaAll(m_ClearDialog.gameObject, 0.5f, 0.0f);
            }

            if (m_btnBack.ButtonPushed)
            {
                m_eStep = STEP.BACK_SELECT;
            }
            break;

        case STEP.NEXT:
            if (bInit)
            {
                DataManagerEqual.Instance.m_iPlayLevel += 1;
                m_eStep = STEP.START;
            }
            break;

        case STEP.BACK_SELECT:
            if (bInit)
            {
                ShowAd(false);
                FadeInOut.Instance.Close(0.25f);
            }
            if (FadeInOut.Instance.IsIdle())
            {
                SceneManager.LoadScene("select");
            }
            break;

        case STEP.MAX:
        default:
            break;
        }
    }