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
Bug/BugTest.h@24:6e6bcdd22159, 2020-05-29 (annotated)
- Committer:
- el18rg
- Date:
- Fri May 29 21:49:53 2020 +0000
- Revision:
- 24:6e6bcdd22159
- Parent:
- 22:0b207694a5f7
Final Submission. I have read and agreed with Statement of Academic Integrity
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
el18rg | 19:bdfab290446a | 1 | #ifndef BUGTEST_H |
el18rg | 19:bdfab290446a | 2 | #define BUGTEST_H |
el18rg | 19:bdfab290446a | 3 | |
el18rg | 21:8afaec5e280f | 4 | bool bugtest() //run bug test |
el18rg | 22:0b207694a5f7 | 5 | { |
el18rg | 21:8afaec5e280f | 6 | Bug bug; //set bug |
el18rg | 22:0b207694a5f7 | 7 | int initalx = 4; //set x |
el18rg | 22:0b207694a5f7 | 8 | int initaly = 4 //set y |
el18rg | 22:0b207694a5f7 | 9 | Vector2D initial_pos = {initalx, initaly}; //set the initial vector position |
el18rg | 21:8afaec5e280f | 10 | bug.set_pos(initial_pos); //set the position in the bug file |
el18rg | 21:8afaec5e280f | 11 | Vector2D read_pos = bug.get_pos(); //recieve the position |
el18rg | 21:8afaec5e280f | 12 | bug.update; //update bug file to pass the values through |
el18rg | 19:bdfab290446a | 13 | |
el18rg | 21:8afaec5e280f | 14 | bool testpassed = true; //bool to check tests |
el18rg | 20:51e644c5f3a1 | 15 | |
el18rg | 22:0b207694a5f7 | 16 | if (read_pos.x != initalx || read_pos.y != initaly) { //if the values aren't what we set them as |
el18rg | 21:8afaec5e280f | 17 | testpassed = false; //test is failed |
el18rg | 21:8afaec5e280f | 18 | } |
el18rg | 21:8afaec5e280f | 19 | return testpassed; //return true or false |
el18rg | 19:bdfab290446a | 20 | } |
el18rg | 19:bdfab290446a | 21 | #endif |