From 9a765b7edaea47fa947f7637042a474969110de8 Mon Sep 17 00:00:00 2001 From: Shadowfacts Date: Wed, 16 Oct 2019 17:49:16 -0400 Subject: [PATCH] Add basic score calculation --- Tetris/ContentView.swift | 2 ++ TetrisKit/GameController.swift | 18 +++++++++++++++++- 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/Tetris/ContentView.swift b/Tetris/ContentView.swift index 8fb1882..10bce5e 100644 --- a/Tetris/ContentView.swift +++ b/Tetris/ContentView.swift @@ -34,6 +34,8 @@ struct ContentView: View { } else { Rectangle().foregroundColor(.clear).frame(width: 50, height: 50) } + Text("Score") + Text(verbatim: self.controller.score.description) } .padding(.leading, 8) BoardView(board: self.$controller.board, currentPiece: self.$controller.currentPiece, droppedPiece: self.$controller.currentPieceAtDropPoint) diff --git a/TetrisKit/GameController.swift b/TetrisKit/GameController.swift index d8d8bc8..83a37d0 100644 --- a/TetrisKit/GameController.swift +++ b/TetrisKit/GameController.swift @@ -26,6 +26,9 @@ public class GameController: ObservableObject { @Published public var currentPieceAtDropPoint: GamePiece? @Published public var nextTetrominoes: [Tetromino] = [.random(), .random(), .random()] @Published public var heldTetromino: Tetromino? + + @Published public var score = 0 + var previousPieceWasTetris = false public var ended: Bool { return (0..= 0 { if board.rowFull(row) { board.tiles.remove(at: row) + cleared += 1 } row -= 1 } - for _ in 0..