public bool TryMoveTetriminoDown() { Vector2Int futurePos = new Vector2Int(m_currentTetrimino.GetPosition().x, m_currentTetrimino.GetPosition().y - 1); if (GetStateOfThisPos(futurePos, m_currentTetrimino.GetCurrentConfiguration()) == eStateOfTetriminoPos.INSIDE_BLANK) { m_currentTetrimino.SetPosition(futurePos); UpdateGrid(); return true; } return false; }
public bool OnInstantiateTetrimino(Tetrimino _newTetrimino) { m_currentTetrimino = _newTetrimino; Vector2Int newPos = new Vector2Int(Mathf.CeilToInt(((float)m_gridSizeX) * 0.5f) - 2, // - 2 is because tetri config is adding 0-4 x m_gridSizeY - 1); if (GetStateOfThisPos(newPos, m_currentTetrimino.GetCurrentConfiguration()) == eStateOfTetriminoPos.INSIDE_BLANK) { m_currentTetrimino.SetPosition(newPos); return true; } else return false; }