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) { // ...
Get Beginning C++ Game Programming now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.