Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed
TanksEngine/TanksEngine.h@11:4e2eb64031a0, 2019-04-13 (annotated)
- Committer:
- el17mcd
- Date:
- Sat Apr 13 16:31:43 2019 +0000
- Revision:
- 11:4e2eb64031a0
- Parent:
- 7:a3ccabdebe2e
- Child:
- 12:9e6d5d0a0c82
!Can take left tank's turn including movement and firing turret. This transitions into "projectile phase" which ends when the projectile goes out of bounds (off screen). Objects instantiated inside game engine to tidy main.cpp.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
el17mcd | 7:a3ccabdebe2e | 1 | //#ifndef TANKENGINE_H |
el17mcd | 7:a3ccabdebe2e | 2 | //#define TANKENGINE_H |
el17mcd | 7:a3ccabdebe2e | 3 | |
el17mcd | 7:a3ccabdebe2e | 4 | #include "mbed.h" |
el17mcd | 7:a3ccabdebe2e | 5 | #include "N5110.h" |
el17mcd | 7:a3ccabdebe2e | 6 | #include "Gamepad.h" |
el17mcd | 7:a3ccabdebe2e | 7 | #include "Projectile.h" |
el17mcd | 7:a3ccabdebe2e | 8 | #include "TankL.h" |
el17mcd | 7:a3ccabdebe2e | 9 | |
el17mcd | 7:a3ccabdebe2e | 10 | class TanksEngine |
el17mcd | 7:a3ccabdebe2e | 11 | { |
el17mcd | 7:a3ccabdebe2e | 12 | public: |
el17mcd | 11:4e2eb64031a0 | 13 | |
el17mcd | 11:4e2eb64031a0 | 14 | TanksEngine(); |
el17mcd | 11:4e2eb64031a0 | 15 | ~TanksEngine(); |
el17mcd | 7:a3ccabdebe2e | 16 | |
el17mcd | 11:4e2eb64031a0 | 17 | void initgame(); |
el17mcd | 11:4e2eb64031a0 | 18 | void left_tank_turn(Gamepad &pad, N5110 &lcd); |
el17mcd | 11:4e2eb64031a0 | 19 | void projectile_phase(N5110 &lcd); |
el17mcd | 11:4e2eb64031a0 | 20 | void right_tank_turn(Gamepad &pad, N5110 &lcd); |
el17mcd | 11:4e2eb64031a0 | 21 | int get_turn(); |
el17mcd | 7:a3ccabdebe2e | 22 | |
el17mcd | 7:a3ccabdebe2e | 23 | private: |
el17mcd | 11:4e2eb64031a0 | 24 | |
el17mcd | 11:4e2eb64031a0 | 25 | void _read_input(Gamepad &pad); |
el17mcd | 11:4e2eb64031a0 | 26 | void _left_tank_shoots(); |
el17mcd | 11:4e2eb64031a0 | 27 | bool _collision_pl(TankL _tankl, Projectile _proj); |
el17mcd | 11:4e2eb64031a0 | 28 | void _change_turn(); |
el17mcd | 7:a3ccabdebe2e | 29 | |
el17mcd | 11:4e2eb64031a0 | 30 | int _turn; |
el17mcd | 11:4e2eb64031a0 | 31 | int _turn_timer; |
el17mcd | 11:4e2eb64031a0 | 32 | int _turn_alternater; |
el17mcd | 11:4e2eb64031a0 | 33 | int _move; |
el17mcd | 11:4e2eb64031a0 | 34 | bool _fire; |
el17mcd | 11:4e2eb64031a0 | 35 | float _power; |
el17mcd | 11:4e2eb64031a0 | 36 | float _angle; |
el17mcd | 11:4e2eb64031a0 | 37 | float _mag; |
el17mcd | 11:4e2eb64031a0 | 38 | |
el17mcd | 11:4e2eb64031a0 | 39 | TankL _tankl; |
el17mcd | 11:4e2eb64031a0 | 40 | |
el17mcd | 11:4e2eb64031a0 | 41 | Projectile _proj; |
el17mcd | 7:a3ccabdebe2e | 42 | }; |
el17mcd | 7:a3ccabdebe2e | 43 |