Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "FastLED.h"
- CRGB leds[144];
- void setup() {
- FastLED.addLeds<WS2811, 5, GRB>(leds, 144);
- FastLED.setBrightness( 50 );
- randomSeed(analogRead(0));
- }
- int i = 0;
- int j = 0;
- int limiteJ1 = 14;
- int limiteJ2 = 129;
- int randNum = 0;
- int J1r = 0;
- int J1g = 0;
- int J1b = 0;
- int J2r = 0;
- int J2g = 0;
- int J2b = 0;
- int projectiles[100][2];
- void loop() {
- limiteJ1 = 14;
- limiteJ2 = 129;
- for (i=0; i<100; i++){
- projectiles[i][0] = 0;
- projectiles[i][1] = 0;
- projectiles[i][2] = 0;
- }
- int joueur1 = 0;
- int joueur2 = 0;
- while(joueur1 == joueur2){
- joueur1 = random(3) + 1;
- joueur2 = random(3) + 1;
- }
- if (joueur1 == 1){
- J1r = 255;
- J1g = 0;
- J1b = 0;
- }
- else if (joueur1 == 2){
- J1r = 0;
- J1g = 255;
- J1b = 0;
- }
- else if (joueur1 == 3){
- J1r = 0;
- J1g = 0;
- J1b = 255;
- }
- if (joueur2 == 1){
- J2r = 255;
- J2g = 0;
- J2b = 0;
- }
- else if (joueur2 == 2){
- J2r = 0;
- J2g = 255;
- J2b = 0;
- }
- else if (joueur2 == 3){
- J2r = 0;
- J2g = 0;
- J2b = 255;
- }
- while ((limiteJ1 >= 0) && (limiteJ2 <= 143)){ // Deplacement des projectiles
- for (i=0; i<100; i++){
- if(projectiles[i][0]!=0){
- if (projectiles[i][0]==1){ // Si le projectile viens du joueur 1
- if (projectiles[i][1] < limiteJ2 - 1){ // Si on deplace le projectile vers la droite
- projectiles[i][1] = projectiles[i][1] + 1;
- }
- else { // Si on touche l'adversaire
- limiteJ2++;
- projectiles[i][0]=0;
- projectiles[i][1]=0;
- }
- }
- else { // Si le projectile viens du joueur 2
- if (projectiles[i][1] > limiteJ1 + 1){ // Si on deplace le projectile vers la gauche
- projectiles[i][1] = projectiles[i][1] - 1;
- }
- else { // Si on touche l'adversaire
- limiteJ1--;
- projectiles[i][0]=0;
- projectiles[i][1]=0;
- }
- }
- }
- }
- randNum = random(50) + 1;
- i=0;
- if(randNum == 1){ // joueur 1 tire
- while(projectiles[i][0]!=0){
- i++;
- }
- projectiles[i][0] = 1;
- projectiles[i][1] = limiteJ1 + 1;
- }
- else if(randNum == 2){ // joueur 2 tire
- while(projectiles[i][0]!=0){
- i++;
- }
- projectiles[i][0] = 2;
- projectiles[i][1] = limiteJ2 - 1;
- }
- else if(randNum == 3){ // joueurs 1 et 2 tirent
- while(projectiles[i][0]!=0){
- i++;
- }
- projectiles[i][0] = 1;
- projectiles[i][1] = limiteJ1 + 1;
- while(projectiles[i][0]!=0){
- i++;
- }
- projectiles[i][0] = 2;
- projectiles[i][1] = limiteJ2 - 1;
- }
- for (i=0; i<144; i++){ // remise a zéro de la guirlande
- leds[i].r = 0;
- leds[i].g = 0;
- leds[i].b = 0;
- }
- i=0;
- for (i=0; i<=limiteJ1; i++){ // affichage de la vie du joueur 1
- leds[i].r = J1r;
- leds[i].g = J1g;
- leds[i].b = J1b;
- }
- for (i=143; i>=limiteJ2; i--){ // affichage de la vie du joueur 2
- leds[i].r = J2r;
- leds[i].g = J2g;
- leds[i].b = J2b;
- }
- for (j=0; j<100; j++){ // affichage des projectiles
- if (projectiles[j][0]!=0){ // si le projectile existe
- if (projectiles[j][0]==1){ // pour joueur 1
- leds[projectiles[j][1]].r = J1r;
- leds[projectiles[j][1]].g = J1g;
- leds[projectiles[j][1]].b = J1b;
- }
- else if (projectiles[j][0]==2){ // pour joueur 2
- leds[projectiles[j][1]].r = J2r;
- leds[projectiles[j][1]].g = J2g;
- leds[projectiles[j][1]].b = J2b;
- }
- }
- }
- FastLED.show();
- delay(10);
- }
- delay(1000);
- if (limiteJ2 > 143){ // Si joueur 1 gagne
- for (i=0; i<10; i++){
- leds[i].r = J1r;
- leds[i].g = J1g;
- leds[i].b = J1b;
- }
- }
- else if (limiteJ1 < 0){ // Si joueur 2 gagne
- for (i=133; i<143; i++){
- leds[i].r = J2r;
- leds[i].g = J2g;
- leds[i].b = J2b;
- }
- }
- FastLED.show();
- delay(200);
- for (i=0; i<144; i++){ // remise a zéro de la guirlande
- leds[i].r = 0;
- leds[i].g = 0;
- leds[i].b = 0;
- }
- FastLED.show();
- delay(200);
- if (limiteJ2 > 143){ // Si joueur 1 gagne
- for (i=0; i<10; i++){
- leds[i].r = J1r;
- leds[i].g = J1g;
- leds[i].b = J1b;
- }
- }
- else if (limiteJ1 < 0){ // Si joueur 2 gagne
- for (i=133; i<143; i++){
- leds[i].r = J2r;
- leds[i].g = J2g;
- leds[i].b = J2b;
- }
- }
- FastLED.show();
- delay(200);
- for (i=0; i<144; i++){ // remise a zéro de la guirlande
- leds[i].r = 0;
- leds[i].g = 0;
- leds[i].b = 0;
- }
- FastLED.show();
- delay(200);
- if (limiteJ2 > 143){ // Si joueur 1 gagne
- for (i=0; i<10; i++){
- leds[i].r = J1r;
- leds[i].g = J1g;
- leds[i].b = J1b;
- }
- }
- else if (limiteJ1 < 0){ // Si joueur 2 gagne
- for (i=133; i<143; i++){
- leds[i].r = J2r;
- leds[i].g = J2g;
- leds[i].b = J2b;
- }
- }
- FastLED.show();
- delay(200);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement