void InitFollowingTetrominos() { var numFollowingTetrominos = Mathf.Max(1, levelManager.FollowingTetrominoCount); if (followingTetrominos.Count > 0) { for (var i = 0; i < followingTetrominos.Count; i++) { var t = followingTetrominos[i]; t.RemoveAllBlocks(); } followingTetrominos.Clear(); } for (var i = 0; i < numFollowingTetrominos; i++) { TetrominoData data = GetNextTetrominoData(); var t = new Tetromino(blockInstanceManager, data); t.SetLiarTetrisMode(stateManager != null && stateManager.CurrentState.Value == GameState.LiarTetrisMode); followingTetrominos.Add(t); } UpdateFollowingTetrominosPositions(); }
void SetLiarTetrisMode(bool enabled) { if (currentTetromino != null) { currentTetromino.SetLiarTetrisMode(enabled); } if (heldTetromino != null) { heldTetromino.SetLiarTetrisMode(enabled); } }
public Tetromino Spawn() { var data = GetNextTetrominoData(); var t = new Tetromino(blockInstanceManager, data); followingTetrominos.Add(t); t.SetLiarTetrisMode(stateManager.CurrentState.Value == GameState.LiarTetrisMode); var tetromino = followingTetrominos[0]; followingTetrominos.RemoveAt(0); UpdateFollowingTetrominosPositions(); return(tetromino); }