Zeyu Feng 201377605

Dependencies:   mbed

On Minerva

Committer:
el19zf
Date:
Mon May 11 09:09:31 2020 +0000
Revision:
11:494cc44777fe
Parent:
8:8287d2ef965d
Child:
13:eb60628db8bf
add Interface class and build the interaction with gamer

Who changed what in which revision?

UserRevisionLine numberNew contents of line
el19zf 6:dce38fe4e092 1 #ifndef COLLISION_H
el19zf 6:dce38fe4e092 2 #define COLLISION_H
el19zf 6:dce38fe4e092 3
el19zf 6:dce38fe4e092 4 #include "mbed.h"
el19zf 6:dce38fe4e092 5 #include "Gamepad.h"
el19zf 6:dce38fe4e092 6 #include "N5110.h"
el19zf 6:dce38fe4e092 7 #include "PeopleEngine.h"
el19zf 6:dce38fe4e092 8 #include "shot.h"
el19zf 6:dce38fe4e092 9
el19zf 6:dce38fe4e092 10 /** Collision class
el19zf 6:dce38fe4e092 11 @check whether people is shotted
el19zf 6:dce38fe4e092 12 @author Zeyu Feng
el19zf 6:dce38fe4e092 13 @28 April 2020
el19zf 6:dce38fe4e092 14 */
el19zf 6:dce38fe4e092 15
el19zf 6:dce38fe4e092 16 class Collision{
el19zf 6:dce38fe4e092 17
el19zf 6:dce38fe4e092 18 public:
el19zf 6:dce38fe4e092 19 Collision();//constructor
el19zf 6:dce38fe4e092 20 ~Collision();//destructor
el19zf 6:dce38fe4e092 21
el19zf 8:8287d2ef965d 22 //init
el19zf 6:dce38fe4e092 23 void init();
el19zf 8:8287d2ef965d 24 //check whether there is a collision
el19zf 8:8287d2ef965d 25 bool check(N5110 &lcd);
el19zf 11:494cc44777fe 26 //check whether people reach destination
el19zf 11:494cc44777fe 27 bool check_des(N5110 &lcd);
el19zf 8:8287d2ef965d 28
el19zf 8:8287d2ef965d 29 void draw(N5110 &lcd);
el19zf 8:8287d2ef965d 30 //get health of people
el19zf 8:8287d2ef965d 31 int get_health();
el19zf 11:494cc44777fe 32
el19zf 11:494cc44777fe 33 int get_des();
el19zf 8:8287d2ef965d 34 //accessors
el19zf 8:8287d2ef965d 35 void set_pos(Vector2D pos);
el19zf 8:8287d2ef965d 36
el19zf 6:dce38fe4e092 37 private:
el19zf 6:dce38fe4e092 38
el19zf 8:8287d2ef965d 39 int _health;
el19zf 8:8287d2ef965d 40 int _check_index;
el19zf 11:494cc44777fe 41 int _check_des_index;
el19zf 8:8287d2ef965d 42
el19zf 8:8287d2ef965d 43 Vector2D _people_pos;//starting coordinate
el19zf 6:dce38fe4e092 44
el19zf 6:dce38fe4e092 45 };
el19zf 6:dce38fe4e092 46 #endif
el19zf 6:dce38fe4e092 47
el19zf 6:dce38fe4e092 48
el19zf 6:dce38fe4e092 49
el19zf 6:dce38fe4e092 50
el19zf 6:dce38fe4e092 51