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.
main.cpp
00001 #include "MicroBit.h" 00002 #include "Screen.h" 00003 #include "Bullet.h" 00004 #include "Spacecraft.h" 00005 #include "Asteroid.h" 00006 00007 MicroBit ubit; 00008 MicroBitSerial serial(USBTX, USBRX); 00009 00010 int main(){ 00011 ubit.init(); 00012 Screen screen(&ubit); 00013 00014 Spacecraft spacecraft; 00015 Bullet bullet; 00016 Asteroid asteroid; 00017 00018 bullet.setX(spacecraft.getX()); 00019 bullet.setY(spacecraft.getY()); 00020 00021 int rnd = 6; 00022 rnd = ubit.random(5); 00023 00024 asteroid.setX(rnd); 00025 asteroid.setY(0); 00026 00027 int dist; 00028 while(true){ 00029 00030 // move spacecraft 00031 rnd = ubit.random(9); 00032 if(rnd > 5) 00033 spacecraft.moveRight(); 00034 else if(rnd < 3) 00035 spacecraft.moveLeft(); 00036 00037 00038 // move bullet 00039 for(int i = 0; i < 2; i++){ 00040 if(bullet.getY() == 0) 00041 bullet.setX(spacecraft.getX()); 00042 bullet.move(); 00043 00044 if(asteroid.hitBy(bullet)){ 00045 screen.draw(bullet); 00046 screen.draw(spacecraft); 00047 screen.draw(asteroid); 00048 screen.refresh(); 00049 release_fiber(); 00050 } 00051 00052 if(asteroid.getY() == 4){ 00053 rnd = ubit.random(5); 00054 asteroid.setX(rnd); 00055 serial.send(asteroid.getX()); 00056 serial.send(','); 00057 serial.send(rnd); 00058 serial.send("\n\r"); 00059 } 00060 asteroid.move(); 00061 00062 if(asteroid.hitBy(bullet)){ 00063 screen.draw(bullet); 00064 screen.draw(spacecraft); 00065 screen.draw(asteroid); 00066 screen.refresh(); 00067 release_fiber(); 00068 } 00069 00070 ubit.sleep(200); 00071 00072 screen.draw(bullet); 00073 screen.draw(spacecraft); 00074 screen.draw(asteroid); 00075 screen.refresh(); 00076 } 00077 00078 } 00079 00080 release_fiber(); 00081 }
Generated on Sun Aug 7 2022 05:10:42 by
1.7.2