Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed
Diff: GameEngine/GameEngine.cpp
- Revision:
- 11:cb48d596aa3e
- Parent:
- 10:3af708f38a42
- Child:
- 12:4d7f1349d796
diff -r 3af708f38a42 -r cb48d596aa3e GameEngine/GameEngine.cpp
--- a/GameEngine/GameEngine.cpp Thu May 03 12:07:54 2018 +0000
+++ b/GameEngine/GameEngine.cpp Thu May 03 22:34:03 2018 +0000
@@ -16,6 +16,8 @@
_asteroid1.init(2);
_asteroid2.init(3);
_asteroid3.init(4);
+ // Sec=0;
+ gameOver=0;
}
void GameEngine::read_input(Gamepad &pad)
@@ -29,10 +31,11 @@
// draw the game elements in the LCD
_rocket.draw(lcd);
_asteroid1.draw(lcd);
- _asteroid2.draw(lcd);
+ _asteroid2.draw(lcd);
_asteroid3.draw(lcd);
//print_scores(lcd);
print_scores1(lcd);
+ // print_sec(lcd);
}
@@ -44,7 +47,7 @@
_asteroid1.update();
_asteroid2.update();
_asteroid3.update();
-
+ //sec();
}
@@ -56,8 +59,12 @@
Vector2D _rocket_pos = _rocket.get_pos();
- if (_rocket_pos.x+11 >=_asteroid1_pos.x && _rocket_pos.x+9 <_asteroid1_pos.x ) {//size //sprint width //float/////////////speed
- if( _asteroid1_pos.y >= _rocket_pos.y && _asteroid1_pos.y <= _rocket_pos.y+7 || _asteroid1_pos.y+7 >= _rocket_pos.y && _asteroid1_pos.y+7 <= _rocket_pos.y+7 ) {
+ if ((_rocket_pos.x+10 >=_asteroid1_pos.x) &&
+ ( _rocket_pos.x+8 <_asteroid1_pos.x )) {//size //sprint width //float/////////////speed
+ if( ( _asteroid1_pos.y >= _rocket_pos.y) &&
+ ( _asteroid1_pos.y <= _rocket_pos.y+7) ||
+ (_asteroid1_pos.y+6 >= _rocket_pos.y) &&
+ (_asteroid1_pos.y+6 <= _rocket_pos.y+7 )) {
_rocket.add_score();
pad.tone(1500.0,0.5);
pad.leds_on();
@@ -66,8 +73,13 @@
}
}
- if (_rocket_pos.x+11 >=_asteroid2_pos.x && _rocket_pos.x+9 <_asteroid2_pos.x ) {//size //sprint width //float/////////////speed
- if( _asteroid2_pos.y >= _rocket_pos.y && _asteroid2_pos.y <= _rocket_pos.y+7 || _asteroid2_pos.y+7 >= _rocket_pos.y && _asteroid2_pos.y+7 <= _rocket_pos.y+7 ) {
+ if ((_rocket_pos.x+10 >=_asteroid2_pos.x) &&
+ (_rocket_pos.x+8 <_asteroid2_pos.x )) {
+ //size //sprint width //float/////////////speed
+ if( (_asteroid2_pos.y >= _rocket_pos.y) &&
+ ( _asteroid2_pos.y <= _rocket_pos.y+7) ||
+ (_asteroid2_pos.y+6 >= _rocket_pos.y) &&
+ ( _asteroid2_pos.y+6 <= _rocket_pos.y+7 )) {
_rocket.add_score();
pad.tone(1500.0,0.5);
pad.leds_on();
@@ -75,14 +87,19 @@
pad.leds_off();
}
}
-
- if (_rocket_pos.x+11 >=_asteroid3_pos.x && _rocket_pos.x+7 <_asteroid3_pos.x ) {//size //sprint width //float/////////////speed
- if( _asteroid3_pos.y >= _rocket_pos.y && _asteroid3_pos.y <= _rocket_pos.y+7 || _asteroid3_pos.y+7 >= _rocket_pos.y && _asteroid3_pos.y+7 <= _rocket_pos.y+7 ) {
- _rocket.add_score();
- pad.tone(1500.0,0.5);
- pad.leds_on();
- wait(0.5);
- pad.leds_off();
+///////////////////////////////////////
+ if ((_rocket_pos.x+10 >= _asteroid3_pos.x) &&
+ ( _rocket_pos.x+6 < _asteroid3_pos.x ))
+ {//size //sprint width //float/////////////speed
+ if( (_asteroid3_pos.y >= _rocket_pos.y) &&
+ ( _asteroid3_pos.y <= _rocket_pos.y+7) ||
+ ( _asteroid3_pos.y+6 >= _rocket_pos.y) &&
+ (_asteroid3_pos.y+6 <= _rocket_pos.y+7 )) {
+ _rocket.add_score();
+ pad.tone(1500.0,0.5);
+ pad.leds_on();
+ wait(0.5);
+ pad.leds_off();
}
}
@@ -120,4 +137,39 @@
int GameEngine::get_gameOver1()
{
return gameOver;
-}
\ No newline at end of file
+}
+/*void GameEngine::sec(){
+ //Sec=timer_isr();
+
+ Sec++;
+ }
+//int GameEngine::get_time()
+//{
+ //return sec;
+ // }
+
+void GameEngine::print_sec(N5110 &lcd)
+{
+ // get scores from paddles
+ //int R1_sec = _R1.get_score();
+
+ // print to LCD i
+ char buffer1[11];
+ sprintf(buffer1,"%3d",Sec);
+ lcd.printString(buffer1, 40, 0); // font is 8 wide, so leave 4 pixel gape from middle assuming two digits
+}
+
+void GameEngine::print_sec_over(N5110 &lcd)
+{
+ // get scores from paddles
+ //int R1_sec = _R1.get_score();
+
+ // print to LCD i
+ char buffer2[11];
+ sprintf(buffer2," time: %3d s",Sec);
+ lcd.printString(buffer2, 0, 5); // font is 8 wide, so leave 4 pixel gape from middle assuming two digits
+}
+
+void timer_isr(){
+ g_timer_flag=1;
+ }*/
\ No newline at end of file