ELEC2645 (2018/19) / Mbed 2 deprecated EL17MCD

Dependencies:   mbed

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?

UserRevisionLine numberNew 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