Compare commits
2 Commits
e134deb11d
...
b653ee2eee
Author | SHA1 | Date | |
---|---|---|---|
b653ee2eee | |||
eba8a2fc62 |
@@ -33,7 +33,10 @@ struct ContentView: View {
|
|||||||
var answerTime: Double
|
var answerTime: Double
|
||||||
@Binding var isGameActive: Bool
|
@Binding var isGameActive: Bool
|
||||||
|
|
||||||
|
@State private var playerHasWon = false
|
||||||
|
|
||||||
var body: some View {
|
var body: some View {
|
||||||
|
ZStack(alignment: .topTrailing) {
|
||||||
HStack(spacing: 0) {
|
HStack(spacing: 0) {
|
||||||
PlayerButton(gameState: gameState, score: player1Score, color: .blue, onSelect: selectPlayer1)
|
PlayerButton(gameState: gameState, score: player1Score, color: .blue, onSelect: selectPlayer1)
|
||||||
|
|
||||||
@@ -54,11 +57,32 @@ struct ContentView: View {
|
|||||||
PlayerButton(gameState: gameState, score: player2Score, color: .red, onSelect: selectPlayer2)
|
PlayerButton(gameState: gameState, score: player2Score, color: .red, onSelect: selectPlayer2)
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Button("End Game", systemImage: "xmark.circle") {
|
||||||
|
isGameActive = false
|
||||||
|
}
|
||||||
|
.symbolVariant(.fill)
|
||||||
|
.labelStyle(.iconOnly)
|
||||||
|
.font(.largeTitle)
|
||||||
|
.tint(.white)
|
||||||
|
.padding(40)
|
||||||
|
}
|
||||||
.ignoresSafeArea()
|
.ignoresSafeArea()
|
||||||
.frame(maxWidth: .infinity, maxHeight: .infinity)
|
.frame(maxWidth: .infinity, maxHeight: .infinity)
|
||||||
.background(Color(white: 0.9))
|
.background(Color(white: 0.9))
|
||||||
.persistentSystemOverlays(.hidden)
|
.persistentSystemOverlays(.hidden)
|
||||||
.onAppear(perform: createLevel)
|
.onAppear(perform: createLevel)
|
||||||
|
.alert("Game Over!", isPresented: $playerHasWon) {
|
||||||
|
Button("Start Again") {
|
||||||
|
isGameActive = false
|
||||||
|
}
|
||||||
|
} message: {
|
||||||
|
if player1Score > player2Score {
|
||||||
|
Text("Player 1 Won \(player1Score) - \(player2Score)")
|
||||||
|
} else {
|
||||||
|
Text("Player 2 Won \(player2Score) - \(player1Score)")
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func createLevel() {
|
func createLevel() {
|
||||||
@@ -114,7 +138,7 @@ struct ContentView: View {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if player1Score == 5 || player2Score == 5 {
|
if player1Score == 5 || player2Score == 5 {
|
||||||
//
|
playerHasWon = true
|
||||||
} else {
|
} else {
|
||||||
createLevel()
|
createLevel()
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user