Uses accompanying Basket, Objects and Fruit libraries to create Fruit Basket game. If an object is caught, points are added; if an object in missed, a 'life' is lost.
Dependents: Game_Controller_Project
Diff: Catch_Model.cpp
- Revision:
- 8:db24c475f64f
- Parent:
- 7:ec6dc66ee196
- Child:
- 9:902b67101cdc
--- a/Catch_Model.cpp Wed Apr 12 14:46:51 2017 +0000 +++ b/Catch_Model.cpp Fri Apr 14 15:37:08 2017 +0000 @@ -32,7 +32,6 @@ { check_basket_catch(lcd, pad); check_basket_miss(lcd, pad); - //check_abxy(lcd, pad); basket.move(_d, _mag, pad); objects.move(); @@ -44,6 +43,7 @@ objects.draw(lcd); print_score(lcd); print_lives(lcd); + print_delay(lcd); } void Catch_Model::check_basket_catch(N5110 &lcd, Gamepad &pad) @@ -58,6 +58,7 @@ (o_x_pos > b_x_pos) && (o_x_pos <= (b_x_pos + 5)) ) { + pad.tone(1000, 0.2); objects.undraw(lcd); add_score(); objects.init(_objects_speed); @@ -79,22 +80,36 @@ if (score_var != 5) { _lives--; } - objects.init(_objects_speed); + pad.tone(100, 0.2); + objects.init(_objects_speed); } } -void Catch_Model::check_abxy(N5110 &lcd, Gamepad &pad) +void Catch_Model::check_a(N5110 &lcd, Gamepad &pad) { if ( (pad.check_event(Gamepad::A_PRESSED) == true) && (_delay == 1) ) { - //abxy.a_pressed(_objects_speed, lcd); objects.undraw(lcd); objects.init(_objects_speed); _delay = 0; - //timeout.attach(&set_delay(), 10.0); + timeout.attach(this, &Catch_Model::set_delay, 10.0); + } + +} + +void Catch_Model::check_b(N5110 &lcd, Gamepad &pad) +{ + if ( + (pad.check_event(Gamepad::B_PRESSED) == true) && + (_delay == 1) + ) { + _lives++; + + _delay = 0; + timeout.attach(this, &Catch_Model::set_delay, 10.0); } } @@ -102,9 +117,8 @@ void Catch_Model::set_delay() { _delay = 1; - //return _delay; } - + void Catch_Model::add_score() { int score_var; @@ -162,4 +176,14 @@ lcd.refresh(); } } - \ No newline at end of file + +void Catch_Model::print_delay(N5110 &lcd) +{ + if (_delay == 1) { + lcd.drawLine(46,4,50,8,1); + lcd.drawLine(50,8,54,0,1); + } else { + lcd.drawLine(46,0,54,8,1); + lcd.drawLine(46,8,54,0,1); + } +} \ No newline at end of file