Handling death
Every game has to end badly, with either the player running out of time (which we have already handled), or getting squished by a branch.
Detecting the player getting squished is really simple. All we want to know is whether the last branch in the branchPositions
array equals playerSide
. If it does, the player is dead.
Add the highlighted code that detects this and then we will talk about everything we do when the player is squished:
// Handle a flying log if (logActive) { spriteLog.setPosition( spriteLog.getPosition().x + (logSpeedX * dt.asSeconds()), spriteLog.getPosition().y + (logSpeedY * dt.asSeconds())); // Has the log reached the right hand edge? if (spriteLog.getPosition().x < -100 || spriteLog.getPosition().x > 2000) { // Set it up ready to be a whole new cloud next frame logActive = false; spriteLog.setPosition...