SharpShooter
Dependencies: 4DGL-uLCD-SE SDFileSystem mbed-rtos mbed wave_player
Bullet.h
- Committer:
- jboettcher
- Date:
- 2016-10-31
- Revision:
- 15:e09ab0d14d4b
- Parent:
- 12:2f358065ba3f
File content as of revision 15:e09ab0d14d4b:
extern uLCD_4DGL uLCD; extern Mutex mutex; struct BulletLocation { int x, topY, bottomY; }; class Bullet { int x, topY, bottomY; int length; int speed; public: Bullet(); void drawBullet(int x, int bottomY); void eraseBullet(); void move(); BulletLocation getLocation(); }; Bullet::Bullet() { length = 3; speed = 3; x=1; topY=2; bottomY=3; } void Bullet::drawBullet(int x2, int bottomY2) { x = x2; bottomY = bottomY2; topY = bottomY + length; mutex.lock(); uLCD.line(x,topY,x,bottomY, BLACK); mutex.unlock(); } void Bullet::move() { Bullet::eraseBullet(); bottomY -= speed; Bullet::drawBullet(x, bottomY); } void Bullet::eraseBullet() { mutex.lock(); uLCD.line(x,topY,x,bottomY, BACKGROUND); mutex.unlock(); } BulletLocation Bullet::getLocation() { BulletLocation coor {x, topY, bottomY}; return coor; }