Stick_Runner
Dependencies: FXOS8700CQ Gamepad N5110 SDFileSystem mbed
Gems/Gems.cpp@0:12cfe63faa6a, 2017-04-28 (annotated)
- Committer:
- el15ss
- Date:
- Fri Apr 28 09:00:21 2017 +0000
- Revision:
- 0:12cfe63faa6a
- Child:
- 1:db9ff66f67c8
Version1
Who changed what in which revision?
User | Revision | Line number | New 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 |