Rosie Gillman
Dependencies: mbed Gamepad2 ELEC2645_Project_el18rg
Dependents: ELEC2645_Project_el18rg
Rosemary Gillman 201265952
Objective
The goal of the game is to splat the bug as fast as you can using the swatter.
Controls
1 - Joystick - left/right to control the swatter 2 - Start button - starts the game 3 - Reset - resets the game 4 - Volume pot - adjusts the volume
Instructions
- Turn the gamepad on
- Wait for start screen and press start
- Move the joystick to control the swatter
- Splat the bug as fast as you can
- Press reset to play again
Gameplay
Start Screen 1
- Low pad tone plays for 0.5s
- Pad lights flash (200ms on/200ms off)
- Text saying "Bug Splat Leeds Edition" is displayed
- After 5 flashes the screen changes to Start Screen 2
Start Screen 2
- Pad lights stay on constantly
- Text reads "Splat the bug as fast as you can! Press start"
- When start is pressed the screen changes to Gamplay Screen
Gameplay Screen
- The timer begins
- Bug appears in the top right corner
- Swatter appears in the bottom left corner
- The bug bounces (with random velocity/direction) off the sides
- When the bug bounces off the wall a low pad tone is played each time for 0.1 seconds
- Swatter is controlled left to right with the joystick
- When the bug and swatter overlap the screen changes to the Ending Screen
Ending Screen
- Low pad tone plays for 0.5s
- The timer ends and its value is displayed
- Text reads "SPLAT (time) secs"
- Splats are drawn on the screen
tests.h@19:bdfab290446a, 2020-05-29 (annotated)
- Committer:
- el18rg
- Date:
- Fri May 29 20:58:32 2020 +0000
- Revision:
- 19:bdfab290446a
- Child:
- 22:0b207694a5f7
All comments finished/checked
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
el18rg | 19:bdfab290446a | 1 | #ifndef TESTS_H |
el18rg | 19:bdfab290446a | 2 | #define TESTS_H |
el18rg | 19:bdfab290446a | 3 | |
el18rg | 19:bdfab290446a | 4 | /** |
el18rg | 19:bdfab290446a | 5 | * @brief Run all the tests for this program |
el18rg | 19:bdfab290446a | 6 | * |
el18rg | 19:bdfab290446a | 7 | * @returns The number of tests that failed |
el18rg | 19:bdfab290446a | 8 | */ |
el18rg | 19:bdfab290446a | 9 | int run_all_tests() |
el18rg | 19:bdfab290446a | 10 | { |
el18rg | 19:bdfab290446a | 11 | int n_tests_failed = 0; //logs the number of tests that have failed |
el18rg | 19:bdfab290446a | 12 | |
el18rg | 19:bdfab290446a | 13 | printf("Testing bug...\n"); //running the bug tests |
el18rg | 19:bdfab290446a | 14 | bool test1_passed = bugtest(); //bug test bool |
el18rg | 19:bdfab290446a | 15 | |
el18rg | 19:bdfab290446a | 16 | if (test1_passed) { |
el18rg | 19:bdfab290446a | 17 | printf("...Passed!\n"); |
el18rg | 19:bdfab290446a | 18 | } |
el18rg | 19:bdfab290446a | 19 | else { |
el18rg | 19:bdfab290446a | 20 | printf("...FAILED!\n"); |
el18rg | 19:bdfab290446a | 21 | ++n_tests_failed; |
el18rg | 19:bdfab290446a | 22 | } |
el18rg | 19:bdfab290446a | 23 | |
el18rg | 19:bdfab290446a | 24 | printf("Testing swatter...\n"); //running the splatter tests |
el18rg | 19:bdfab290446a | 25 | bool test2_passed = swattertest(); //swatter test bool |
el18rg | 19:bdfab290446a | 26 | |
el18rg | 19:bdfab290446a | 27 | if (test2_passed) { |
el18rg | 19:bdfab290446a | 28 | printf("...Passed!\n"); |
el18rg | 19:bdfab290446a | 29 | } |
el18rg | 19:bdfab290446a | 30 | else { |
el18rg | 19:bdfab290446a | 31 | printf("...FAILED!\n"); |
el18rg | 19:bdfab290446a | 32 | ++n_tests_failed; |
el18rg | 19:bdfab290446a | 33 | } |
el18rg | 19:bdfab290446a | 34 | |
el18rg | 19:bdfab290446a | 35 | if (n_tests_failed > 0) { |
el18rg | 19:bdfab290446a | 36 | printf("%d tests FAILED!\n", n_tests_failed); |
el18rg | 19:bdfab290446a | 37 | } |
el18rg | 19:bdfab290446a | 38 | else { |
el18rg | 19:bdfab290446a | 39 | printf("All tests passed!\n"); |
el18rg | 19:bdfab290446a | 40 | } |
el18rg | 19:bdfab290446a | 41 | |
el18rg | 19:bdfab290446a | 42 | return n_tests_failed; |
el18rg | 19:bdfab290446a | 43 | } |
el18rg | 19:bdfab290446a | 44 | |
el18rg | 19:bdfab290446a | 45 | #endif |