/// <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; }