Dance Dance Revolution program for main mbed

Dependencies:   4DGL-uLCD-SE SDFileSystem mbed-rtos mbed wave_player

Committer:
wliu88
Date:
Fri Apr 29 02:04:07 2016 +0000
Revision:
0:8a02ac09eae0
new

Who changed what in which revision?

UserRevisionLine numberNew contents of line
wliu88 0:8a02ac09eae0 1 #ifndef RELEASER_H
wliu88 0:8a02ac09eae0 2 #define RELEASER_H
wliu88 0:8a02ac09eae0 3
wliu88 0:8a02ac09eae0 4
wliu88 0:8a02ac09eae0 5 #include "mbed.h"
wliu88 0:8a02ac09eae0 6 #include "arrows.h"
wliu88 0:8a02ac09eae0 7
wliu88 0:8a02ac09eae0 8 //releaser.h: responsible for keeping track of arrows that are active on the screen
wliu88 0:8a02ac09eae0 9
wliu88 0:8a02ac09eae0 10 class ArrowReleaser {
wliu88 0:8a02ac09eae0 11 private:
wliu88 0:8a02ac09eae0 12 int terminate;
wliu88 0:8a02ac09eae0 13 public:
wliu88 0:8a02ac09eae0 14 Arrow ActiveArrows [10];
wliu88 0:8a02ac09eae0 15 ArrowReleaser(){
wliu88 0:8a02ac09eae0 16 for(int i=0; i< 10; i++){
wliu88 0:8a02ac09eae0 17 ActiveArrows[i] = Arrow(-1);
wliu88 0:8a02ac09eae0 18 }
wliu88 0:8a02ac09eae0 19 terminate = 0;
wliu88 0:8a02ac09eae0 20 }
wliu88 0:8a02ac09eae0 21 int ReleaseArrow(Arrow songArrows[], int indexSongArray, int screens){
wliu88 0:8a02ac09eae0 22 for(int i=0; i< 10; i++){
wliu88 0:8a02ac09eae0 23 if(!ActiveArrows[i].getActive()){
wliu88 0:8a02ac09eae0 24 //Empty space
wliu88 0:8a02ac09eae0 25 ActiveArrows[i] = songArrows[indexSongArray];
wliu88 0:8a02ac09eae0 26 if(ActiveArrows[i].getType() == -1){
wliu88 0:8a02ac09eae0 27 ActiveArrows[i].setActive(0);
wliu88 0:8a02ac09eae0 28 }
wliu88 0:8a02ac09eae0 29 else {
wliu88 0:8a02ac09eae0 30 ActiveArrows[i].setActive(1);
wliu88 0:8a02ac09eae0 31 }
wliu88 0:8a02ac09eae0 32 ActiveArrows[i].init(screens);
wliu88 0:8a02ac09eae0 33 return 1;
wliu88 0:8a02ac09eae0 34 }
wliu88 0:8a02ac09eae0 35 }
wliu88 0:8a02ac09eae0 36 return 0;
wliu88 0:8a02ac09eae0 37 }
wliu88 0:8a02ac09eae0 38 int ReleaseArrow2(Arrow songArrows[], int indexSongArray){
wliu88 0:8a02ac09eae0 39 for(int i=0; i< 7; i++){
wliu88 0:8a02ac09eae0 40 if(!ActiveArrows[i].getActive()){
wliu88 0:8a02ac09eae0 41 //Empty space
wliu88 0:8a02ac09eae0 42 ActiveArrows[i] = songArrows[indexSongArray];
wliu88 0:8a02ac09eae0 43 if(ActiveArrows[i].getType() == -1){
wliu88 0:8a02ac09eae0 44 ActiveArrows[i].setActive(0);
wliu88 0:8a02ac09eae0 45 }
wliu88 0:8a02ac09eae0 46 else {
wliu88 0:8a02ac09eae0 47 ActiveArrows[i].setActive(1);
wliu88 0:8a02ac09eae0 48 }
wliu88 0:8a02ac09eae0 49 ActiveArrows[i].init2();
wliu88 0:8a02ac09eae0 50 return 1;
wliu88 0:8a02ac09eae0 51 }
wliu88 0:8a02ac09eae0 52 }
wliu88 0:8a02ac09eae0 53 return 0;
wliu88 0:8a02ac09eae0 54 }
wliu88 0:8a02ac09eae0 55 int getTermStatus(){
wliu88 0:8a02ac09eae0 56 return terminate;
wliu88 0:8a02ac09eae0 57 }
wliu88 0:8a02ac09eae0 58 void setTermStatus(int status){
wliu88 0:8a02ac09eae0 59 terminate = status;
wliu88 0:8a02ac09eae0 60 }
wliu88 0:8a02ac09eae0 61
wliu88 0:8a02ac09eae0 62 };
wliu88 0:8a02ac09eae0 63
wliu88 0:8a02ac09eae0 64 #endif