Break-up is the second project for code-club (a small activity I do with my children to teach them coding).
This project is designed to build on the foundations established in lift-off by adding basic collision detection, user input and sounds.
It was inspired by the canvas-workshop tutorial from enclave
I typically write the exercises here to organize myself, then do paired programming with my children.
I am also learning Javascript (and teaching!) alongside my children. My plan is to use tags on the branch to coincide with specific lessons.
##lessons
I am creating tags for each lesson. checking out the code using the below tags will put you at the final stage of that lesson.
- lesson 1 (tag: 1-blank-canvas) :: Setting up the base project, initial canvas state, stylesheet, and script.
- lesson 2 (tag: 2-game-board) :: Creating objects, passing objects, drawing initial game board on the canvas.
- lesson 3 (tag: 3-game-paddle) :: Create the paddle, user input, methods, hinting at closures, segue to animation frame.
- lesson 4 (tag: 4-game-object) :: Create the game object, clear game board, encapsulate the drawing of the game scene, further hinting at animation loop.
- lesson 5 (tag: 5-paddle-controller) :: Create a paddle controller, lightly discuss single responsibility, and 'this'. Good times ahead.
- lesson 6 (tag: 6-animation-loop) :: Finally add the game animation loop.
- lesson 7 (tag: 7-game-ball) :: Create the game ball, more about passing objects.
- lesson 8 (tag: 8-ball-controller) :: Adding automated controller for ball.
- lesson 9 (tag: 9-board-collision) :: Discuss environment (ball and board) collision.
- lesson 10 (tag: 10-paddle-collision) :: Discuss object (ball and paddle) collision.
- lesson 11 (tag: 11-create-player) :: Create player, more object discussion.
- lesson 12 (tag: 12-game-state) :: Discuss application state, ball state, player lives.