Mini projet LOO

Dependencies:   mbed APDS_9960 mbed-rtos

Dependents:   MoveYourTetris_OK

Home du projet

Revision:
8:92d0c4961a16
Child:
9:6f3d8b714a59
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/cJeu.cpp	Wed Apr 06 15:41:24 2016 +0000
@@ -0,0 +1,60 @@
+#include "cJeu.h"
+
+cJeu::cJeu()
+{
+    //on initialise la générateur de nombres pseudo-aléatoires
+        srand(time(NULL));
+    }
+
+void cJeu::initialiser()
+{
+    _matrice.clear();
+    _matrice.envoyerMatrice();
+}
+
+void cJeu::nouvellePiece()
+{
+
+    //on génère un nombre aléatoire entre 1 et 5 pour la pièce
+    int nb = 1 + ((float)rand()/RAND_MAX) * 5;
+    //on génère un deuxième nombre pour choisir la couleur de la pièce
+    int couleur = 1 + ((float)rand()/RAND_MAX) * 8;
+    //selon le nombre généré, on va créer une nouvelle pièce
+    switch(nb) {
+            //on crée une pièce "L"
+        case 1: {
+            cEl l(3,0);
+            _matrice.ajouterForme(l, couleur);
+            break;
+        }
+        //on crée une pièce "ligne"
+        case 2: {
+            cLigne i(3,0);
+            _matrice.ajouterForme(i, couleur);
+            break;
+        }
+        //on crée une pièce "Z"
+        case 3: {
+            cZed z(3,0);
+            _matrice.ajouterForme(z, couleur);
+            break;
+        }
+        //on crée une pièce "T"
+        case 4: {
+            cTe t(3,0);
+            _matrice.ajouterForme(t, couleur);
+            break;
+        }
+        //on crée une pièce "carré"
+        case 5: {
+            cCarre c(3,0);
+            _matrice.ajouterForme(c, couleur);
+            break;
+        }
+        default:{}
+    }
+    //puis on affiche la nouvelle matrice
+    _matrice.envoyerMatrice();
+}
+
+