예제 #1
0
    /// <summary>
    /// ミノを初期の状態に戻し、ホールドさせる処理
    /// </summary>
    void Mino_Holding()
    {
        //現在扱っているミノの初期配列をコピー
        Mino_create.Mino_ArrayCopy(ref Mino.NowMino, Mino.MinoType);

        MINOs.transform.DetachChildren();
        GHOSTMINOs.transform.DetachChildren();
        MINOs.transform.position              = new Vector3(BEFOREHOLD_POS, -BEFOREHOLD_POS, 0);
        MINOs.transform.localEulerAngles      = Vector3.zero;
        GHOSTMINOs.transform.localEulerAngles = Vector3.zero;

        int CheckedMino = 0;

        for (int i = 0; i < Mino.NowMino.GetLength(0); i++)
        {
            for (int j = 0; j < Mino.NowMino.GetLength(1); j++)
            {
                if (Mino.NowMino[i, j] != ARRAY_MINO)
                {
                    continue;
                }

                Mino.UseMino[CheckedMino].transform.localEulerAngles      = Vector3.zero;
                Mino.UseMino[CheckedMino].transform.position              = new Vector3(j, -i, 0);
                Mino.UseMinoGhost[CheckedMino].transform.localEulerAngles = Vector3.zero;
                Mino.UseMinoGhost[CheckedMino].transform.position         = new Vector3(j, -i, 0);
                CheckedMino++;
            }
        }
        Mino.UseMinoParentSet(MINOs.transform);
        Mino.UseMinoGhostParentSet(GHOSTMINOs.transform);
        //ホールド処理
        Mino_hold.Mino_hold(ref Mino, MINOs, GHOSTMINOs, ref m_MinoholdOnce);
    }
    /// <summary>
    /// 画面に次に出てくるミノを表示する
    /// </summary>
    void NextMino_UIdisplay()
    {
        m_TypeNumber++;

        if (m_TypeNumber > MINO_TYPESIZE)
        {
            m_TypeNumber = 0;
        }

        int tmp_StartNumber = m_TypeNumber;

        //4つ分のミノを調べる
        for (int i = 0; i < SEARCH_SIZE; i++)
        {
            int[,] Array = new int[MINO_ARRAYSIZE, MINO_ARRAYSIZE];
            Sprite Mino_ObjColor = null;
            int    tmp_Nuber     = m_TypeNumber;
            Mino_create.NowMino_Sprite(ref Mino_ObjColor, ref m_TypeNumber);
            Mino_create.Mino_ArrayCopy(ref Array, m_TypeNumber);
            Nextmino_UI.NextMino(Array, Mino_ObjColor);
            m_TypeNumber = tmp_Nuber;
            m_TypeNumber++;

            if (m_TypeNumber > MINO_TYPESIZE)
            {
                m_TypeNumber = 0;
            }
        }
        m_TypeNumber = tmp_StartNumber;
    }