Mini projet LOO
Dependencies: mbed APDS_9960 mbed-rtos
Home du projet
Diff: src/cJeu.cpp
- Revision:
- 19:9e3551d418d5
- Parent:
- 18:45dbd9948c97
- Child:
- 20:921ffec1acb4
--- a/src/cJeu.cpp Tue Apr 12 15:47:36 2016 +0000 +++ b/src/cJeu.cpp Tue Apr 12 18:48:18 2016 +0000 @@ -32,7 +32,7 @@ { _spi.initSPI(100000, 8, 3); _mat->clear(); - _spi.envoyerMatrice(*_mat); + _spi.envoyerMatrice(*_mat); } // Description: @@ -72,7 +72,7 @@ } default: {} - } + } //puis on affiche la nouvelle pièce _mat->afficherForme(_ptrForme, couleur); _spi.envoyerMatrice(*_mat); @@ -88,11 +88,11 @@ //cJeu::nouvelleLigne(); //tant que l'on peut descendre //while(frfd) - - + + //puis on teste si une ligne est complete cJeu::ligneComplete(); - + } unsigned char cJeu::ligneComplete() { @@ -111,12 +111,11 @@ if(total == 8) { numLigne = i; break; - } - else{ + } else { return 0; // PAS DE LIGNE COMPLETE } } - } + } pc.printf("numLigne: %d\n", numLigne); ////////////////////////////////////////////// //On descend toutes les LEDs allumées au dessus de numLigne d'un cran @@ -133,88 +132,49 @@ return 1; } -int cJeu::partieEnCours(){ - +int cJeu::partieEnCours() +{ + Serial pc(USBTX, USBRX); // tx, rx _mat->setValTab(7, 0, LED_VERT); _mat->setValTab(7, 7, LED_VERT); _mat->setValTab(7, 6, LED_VERT); _mat->setValTab(0, 7, LED_VERT); cCollision col; - + //////////////////////////////////////// // DEMANDE UTILISATEUR - - + + //////////////////////////////////////// // CONTROLE COLLISION - + - //////////////////////////////////////// - // MOUVEMENT + //////////////////////////////////////// + // MOUVEMENT + while(1) { + _ptrForme = new cCarre(3,0); + _mat->afficherForme(_ptrForme, LED_ROUGE); + _spi.envoyerMatrice(*_mat); + do{ - while(col.pieceBas(*_ptrForme, *_mat) == false) - { _ptrForme->deplacementBas(); _mat->updateMatrice(); _spi.envoyerMatrice(*_mat); wait(0.2); - } + + - while(col.pieceGauche(*_ptrForme, *_mat) == false) - { - _ptrForme->deplacementGauche(); - _mat->updateMatrice(); - _spi.envoyerMatrice(*_mat); - wait(0.2); - } - - while(col.pieceDroite(*_ptrForme, *_mat) == false) - { - _ptrForme->deplacementDroite(); - _mat->updateMatrice(); - _spi.envoyerMatrice(*_mat); - wait(0.2); - } + }while(col.pieceBas(*_ptrForme, *_mat) == false && col.bordBas(*_ptrForme, *_mat) == false); pc.printf(" Collision !!!!\n"); - //////////////////////////////////////// - // CONTROLE LIGNE COMPLETE - //fin(); - - nouvellePiece(); - - while(col.pieceBas(*_ptrForme, *_mat) == false) - { - _ptrForme->deplacementBas(); - _mat->updateMatrice(); - _spi.envoyerMatrice(*_mat); - wait(0.2); - } - - while(col.pieceGauche(*_ptrForme, *_mat) == false) - { - _ptrForme->deplacementGauche(); - _mat->updateMatrice(); - _spi.envoyerMatrice(*_mat); - wait(0.2); - } - - while(col.pieceDroite(*_ptrForme, *_mat) == false) - { - _ptrForme->deplacementDroite(); - _mat->updateMatrice(); - _spi.envoyerMatrice(*_mat); - wait(0.2); - } - pc.printf(" Collision !!!!\n"); - - fin(); - + pc.printf("prochaine manche\n"); + fin(); + } return 0; } void cJeu::fin() { delete _ptrForme; - delete _mat; + //delete _mat; } \ No newline at end of file