Stick_Runner

Dependencies:   FXOS8700CQ Gamepad N5110 SDFileSystem mbed

Fork of Stick_Runner by Samrudh Sharma

Committer:
el15ss
Date:
Fri Apr 28 09:00:21 2017 +0000
Revision:
0:12cfe63faa6a
Child:
1:db9ff66f67c8
Version1

Who changed what in which revision?

UserRevisionLine numberNew contents of line
el15ss 0:12cfe63faa6a 1 #include "Gems.h"
el15ss 0:12cfe63faa6a 2
el15ss 0:12cfe63faa6a 3 Gems::Gems()
el15ss 0:12cfe63faa6a 4 {
el15ss 0:12cfe63faa6a 5
el15ss 0:12cfe63faa6a 6 }
el15ss 0:12cfe63faa6a 7
el15ss 0:12cfe63faa6a 8 Gems::~Gems()
el15ss 0:12cfe63faa6a 9 {
el15ss 0:12cfe63faa6a 10
el15ss 0:12cfe63faa6a 11 }
el15ss 0:12cfe63faa6a 12
el15ss 0:12cfe63faa6a 13 void Gems::init()
el15ss 0:12cfe63faa6a 14 {
el15ss 0:12cfe63faa6a 15 _x = rand() % 84;
el15ss 0:12cfe63faa6a 16 _y = 0;
el15ss 0:12cfe63faa6a 17 _status = true;
el15ss 0:12cfe63faa6a 18 counter;
el15ss 0:12cfe63faa6a 19 }
el15ss 0:12cfe63faa6a 20
el15ss 0:12cfe63faa6a 21 void Gems::draw(N5110 &lcd)
el15ss 0:12cfe63faa6a 22 {
el15ss 0:12cfe63faa6a 23 // draw Gemss in screen buffer.
el15ss 0:12cfe63faa6a 24 //lcd.drawRect(_x-4,_y-3,3,3,FILL_BLACK);
el15ss 0:12cfe63faa6a 25 //lcd.drawLine(_x-3, _y-3,_x-3,_y+1,1);
el15ss 0:12cfe63faa6a 26
el15ss 0:12cfe63faa6a 27 //lcd.drawCircle(_x,_y,2,FILL_BLACK);
el15ss 0:12cfe63faa6a 28 lcd.setPixel(_x,_y);
el15ss 0:12cfe63faa6a 29 lcd.setPixel(_x+1,_y);
el15ss 0:12cfe63faa6a 30 lcd.setPixel(_x-1,_y);
el15ss 0:12cfe63faa6a 31 lcd.setPixel(_x,_y+1);
el15ss 0:12cfe63faa6a 32 lcd.setPixel(_x,_y-1);
el15ss 0:12cfe63faa6a 33
el15ss 0:12cfe63faa6a 34
el15ss 0:12cfe63faa6a 35
el15ss 0:12cfe63faa6a 36
el15ss 0:12cfe63faa6a 37 }
el15ss 0:12cfe63faa6a 38
el15ss 0:12cfe63faa6a 39 void Gems::Gems_Status(Vector2D p)
el15ss 0:12cfe63faa6a 40 {
el15ss 0:12cfe63faa6a 41 /* if(((p.x<_x+3)&&(p.x>_x-3))&&((p.y<_y+3)&&(p.y>_y-3))){
el15ss 0:12cfe63faa6a 42
el15ss 0:12cfe63faa6a 43 _status = false;
el15ss 0:12cfe63faa6a 44 }
el15ss 0:12cfe63faa6a 45 */
el15ss 0:12cfe63faa6a 46 if(_y > HEIGHT)
el15ss 0:12cfe63faa6a 47 {
el15ss 0:12cfe63faa6a 48 _status = false;
el15ss 0:12cfe63faa6a 49 }
el15ss 0:12cfe63faa6a 50 }
el15ss 0:12cfe63faa6a 51
el15ss 0:12cfe63faa6a 52 void Gems::Gems_Score(Vector2D p)
el15ss 0:12cfe63faa6a 53 {
el15ss 0:12cfe63faa6a 54 if(((_x-1<p.x)&&(_x+1>p.x))&&((_y-1<p.y)&&(_y+1>p.y))){
el15ss 0:12cfe63faa6a 55
el15ss 0:12cfe63faa6a 56 counter++;
el15ss 0:12cfe63faa6a 57 }
el15ss 0:12cfe63faa6a 58 }
el15ss 0:12cfe63faa6a 59
el15ss 0:12cfe63faa6a 60 void Gems::update()
el15ss 0:12cfe63faa6a 61 {
el15ss 0:12cfe63faa6a 62 _y =_y+2;
el15ss 0:12cfe63faa6a 63 /* if(!_status)
el15ss 0:12cfe63faa6a 64 {
el15ss 0:12cfe63faa6a 65 _y = HEIGHT + 3;
el15ss 0:12cfe63faa6a 66 }*/
el15ss 0:12cfe63faa6a 67 }
el15ss 0:12cfe63faa6a 68
el15ss 0:12cfe63faa6a 69
el15ss 0:12cfe63faa6a 70
el15ss 0:12cfe63faa6a 71 Vector2D Gems::get_pos() {
el15ss 0:12cfe63faa6a 72 Vector2D p = {_x,_y};
el15ss 0:12cfe63faa6a 73 return p;
el15ss 0:12cfe63faa6a 74 }
el15ss 0:12cfe63faa6a 75 bool Gems::get_status(){
el15ss 0:12cfe63faa6a 76 return _status;
el15ss 0:12cfe63faa6a 77
el15ss 0:12cfe63faa6a 78 }
el15ss 0:12cfe63faa6a 79
el15ss 0:12cfe63faa6a 80