Update MainActivity.kt

This commit is contained in:
cmclark00 2025-03-31 08:30:59 -04:00
parent 08c9f8a1ce
commit dbaebb8b60

View file

@ -325,11 +325,13 @@ class MainActivity : AppCompatActivity(),
} }
} }
// Track pieces placed using callback
gameView.onPieceLock = { gameView.onPieceLock = {
if (isSoundEnabled) { // Increment pieces placed counter
gameHaptics.vibrateForPieceLock()
}
piecesPlaced++ piecesPlaced++
// Provide haptic feedback
gameHaptics.vibrateForPieceLock()
} }
// Set up button click listeners with haptic feedback // Set up button click listeners with haptic feedback
@ -668,6 +670,7 @@ class MainActivity : AppCompatActivity(),
binding.scoreText.text = "$currentScore" binding.scoreText.text = "$currentScore"
binding.currentLevelText.text = "$currentLevel" binding.currentLevelText.text = "$currentLevel"
binding.linesText.text = "0" binding.linesText.text = "0"
binding.comboText.text = "0"
// Reset game view and game board // Reset game view and game board
gameView.reset() gameView.reset()
@ -680,6 +683,7 @@ class MainActivity : AppCompatActivity(),
binding.scoreText.text = "$score" binding.scoreText.text = "$score"
binding.currentLevelText.text = "$level" binding.currentLevelText.text = "$level"
binding.linesText.text = "$lines" binding.linesText.text = "$lines"
binding.comboText.text = gameBoard.getCombo().toString()
} }
gameView.onGameOver = { finalScore -> gameView.onGameOver = { finalScore ->
@ -720,6 +724,9 @@ class MainActivity : AppCompatActivity(),
// Vibrate gamepad if connected // Vibrate gamepad if connected
gamepadController.vibrateForLineClear(lineCount) gamepadController.vibrateForLineClear(lineCount)
// Record line clear in stats
statsManager.recordLineClear(lineCount)
} }
// Start the game // Start the game
@ -731,8 +738,7 @@ class MainActivity : AppCompatActivity(),
gameMusic.start() gameMusic.start()
} }
gameStartTime = System.currentTimeMillis() // Reset session stats
piecesPlaced = 0
statsManager.startNewSession() statsManager.startNewSession()
progressionManager.startNewSession() progressionManager.startNewSession()
gameBoard.updateLevel(selectedLevel) gameBoard.updateLevel(selectedLevel)