Auteur Sujet: Ice cold beer BARTOP  (Lu 2199 fois)

Hors ligne berunours

  • Serial Bartopeur
  • Passionné
  • *
  • Messages: 156
    • Voir le profil
Ice cold beer BARTOP
« le: Dimanche 14 Mars 2021, 18:38:29 pm »
  • Salut à tous.

    J'ai lu vite zef le topic de sushy18 sur la Ice cold beer, j'suis pas 100 % au courant du truc mais je peux peut-être aider...

    Je n'ai jamais vue la borne en vraie, je l'ai découvert y'a quelque temps avec les vidéo de John's Arcade Game Reviews sur youtube.
    Bref, je l'aime bien, j'ai même songé en faire une sur base d'émulateur à une époque... Mais bof bof par rapport à en avoir une vraie qui bouge et tout.
    Comme j'ai due me mettre à l'arduino pour mon bartop Hangon (promis il avance...), j'ai découvert l'immenbse étendu que ces petits bidules ouvrent comme perspectives.

    Du coup je vais me motiver à en concevoir un. Le construire aussi peut-être.
    Enfin bref, ce sera un petit bidule comme d'hab, environ 45 cm de large sur 60 de haut conçu façon bartop.

    Après quelques recherches, je pars sur une base d'arduino Uno + 1 nano pour l'instant, 2 stepper moteur en 12v type imprimante 3D, des led adressables type neopixel , des afficheurs 7 segments 4 chiffres et un dfplayer mini pour le son.

    En terme de répartitions:
    Le UNO:
    - 2 stepper motors
    - les switch de passage de billes
    - les leds

    Le nano:
    - le son
    - les afficheurs

    Comme à mon habitude, je fais concevoir par étape, la première sera la partie électronique. C'est le point que je maitrise le moins.
    Comme je vous l'ai dit, je débute, mais j'ai commencé par modéliser le "programme" en lui même:



    Vous avez la possibilité de la tester:
    La simu accessible à tous


    Ce qui est implanté pour le moment:

    -L'allumage de la led correspondant au trou (étape) ou l'ont doit mettre la bille
    -La détection de l'endroits par où passe la bille (bon trou, mauvais trou)
    -La boucle de gameplay, testez-la, c'est rigolo même si c'est ultra facile du coup.

    Ce qu'il reste à faire:
    -Attract mode / Insertion crédit
    -Gestion des moteurs
    -Gestion des scores
    -Gestion des sons
    -Gestion des afficheurs.

    Ensuite on passera à la partie modélisation du meuble et de sa mécanique.

    Voila...
    « Modifié: Mardi 07 Septembre 2021, 21:09:49 pm par berunours »

    Hors ligne AsPiC

    • Admin
    • Dieu de l' Arcade
    • *****
    • Messages: 8869
    • Localisation: Les Herbiers (85)
    • Present pour Koh Lanta Retrogaming Party 2069 !
      • Voir le profil
      • Mon compte Instagram !!
    Ice cold beer mini à l'étude
    « Réponse #1 le: Dimanche 14 Mars 2021, 20:52:12 pm »
  •  :-)= :-)= :-)=

    Ah mais je dit OUI !!

    Je suis même à 2 doigts de t'envoyer un chèque en blanc pour t'en acheter un exemplaire  :o

    Tu partirais sur la forme de la borne originelle débarrassée de la partie basse ou bien "juste" une version réduite ?

    Hors ligne Little_Rabbit

    • ✌(◕‿◕)✌ Donateur 2021
    • Staff
    • Dieu de l' Arcade
    • *****
    • Messages: 6052
    • Localisation: Nantes
    • The early 80's : the arcade golden age !!
      • Voir le profil
    Ice cold beer mini à l'étude
    « Réponse #2 le: Dimanche 14 Mars 2021, 21:33:38 pm »
  • Salut,

    Projet super intéressant !  ^-^

    J'ai du mal à déchiffrer le schéma à partir de la vue "breadboard", tu n'aurais pas un schéma de principe classique par hasard ? :)

    Je crois comprendre que tu as mis des résistances en série, et que pour déterminer le trou dans laquelle est tombée la bille, tu lis la valeur analogique résultant du réseau de résistance correspondant au trou ?

    En haut c'est quoi ? Un ruban de LED ? Comment ça marche, car je vois que tu le relis à une seule sortie numérique de l'Arduino ?

    Hâte d'en savoir plus !  ^-

    A+
    Recherche bornes dédiées ou PCB originaux: Miss Pacman, Dig Dug, Galaga, Mappy, Asteroids, Battlezone, Missile Command, Tempest, Star Wars, Donkey Kong (+ Jr), Mario Bros, Moon Patrol, Defender, Joust, Frogger, Gyruss, Pooyan, Space Tactics, Zaxxon, etc. Flip : Gottlieb des années 80 (Spirit, Amazon Hunt, ...), Baby Pac Man. Divers :  Ice Cold Beer
    Trois fois rien quoi ! :D

    Hors ligne berunours

    • Serial Bartopeur
    • Passionné
    • *
    • Messages: 156
      • Voir le profil
    Ice cold beer mini à l'étude
    « Réponse #3 le: Dimanche 14 Mars 2021, 22:05:48 pm »
  • :-)= :-)= :-)=

    Ah mais je dit OUI !!

    Je suis même à 2 doigts de t'envoyer un chèque en blanc pour t'en acheter un exemplaire  :o

    Tu partirais sur la forme de la borne originelle débarrassée de la partie basse ou bien "juste" une version réduite ?

    En gros c'est une version débarrassée du bas.
    Par contre, si j'y arrive, j'essaierais de vous mettre ça à dispo (plan et électronique) histoire que chacun puisse se le construire.

    J'ai du mal à déchiffrer le schéma à partir de la vue "breadboard", tu n'aurais pas un schéma de principe classique par hasard ? :)
    Nan, désolé, j'ai tout fais directement sur tinkercad, mais tu dois pouvoir le voir et même le faire marcher si tu te crée un compte gratuit.

    Je crois comprendre que tu as mis des résistances en série, et que pour déterminer le trou dans laquelle est tombée la bille, tu lis la valeur analogique résultant du réseau de résistance correspondant au trou ?
    C'est exactement ça, chaque boutton revoie un voltage différent, relié a une porte analogique ça me me permet de les différencier. C'est pour "gagner" des ports, 1 seul nécessaire contre 10 autrement.

    En haut c'est quoi ? Un ruban de LED ? Comment ça marche, car je vois que tu le relis à une seule sortie numérique de l'Arduino ?
    C'est du neopixel, avec l'arduino, j'ai juste à lui dire allume la 3ème en jaune et il le fait tout seul.
    J'devrais me motiver à vous faire une petite vidéo du truc en fonctionnement.


    Hors ligne Iro

    • Alias le Rouston Masqué
    • Staff
    • Accro
    • *****
    • Messages: 222
    • Localisation: Chilly Mazarin
    • Iro, chevalier Judaï
      • Voir le profil
    Ice cold beer mini à l'étude
    « Réponse #4 le: Lundi 15 Mars 2021, 08:59:28 am »
  • Super projet ! Ice Cold Beer en fait réver plus d'un , moi le premier !!
     ^-^
    "Jet set 2, c'est avec Robert Garcia ?" Kaneda, Lapsus de sac Vol.1
    Peter Shou Owner' Club

    WIPs : Naomi - SEGA Rally - AB Cop - Lethal Enforcers - COMPUMI - Terminator 2 - Space Invaders - Artworks pour Boitiers K7 Naomi CF - Ma collec' de panels

    LES TUTOS DE GAMO   

    Hors ligne Tonton_Hibou

    • Addict
    • *
    • Messages: 348
    • Localisation: Fontainebleau (77)
      • Voir le profil
    Ice cold beer mini à l'étude
    « Réponse #5 le: Lundi 15 Mars 2021, 09:23:59 am »
  • Super projet ! Merci pour ton partage  ^-^

    Hors ligne ɐɹqoƆ‾ɥƃᴉH

    • Webmaster
    • Dieu de l' Arcade
    • *****
    • Messages: 12232
    • Localisation: Montréal
    • Je suis juste un multi-nick d'AsPiC...
      • Voir le profil
    Ice cold beer mini à l'étude
    « Réponse #6 le: Lundi 15 Mars 2021, 09:46:19 am »
  • C'est exactement ça, chaque boutton revoie un voltage différent, relié a une porte analogique ça me me permet de les différencier. C'est pour "gagner" des ports, 1 seul nécessaire contre 10 autrement.

    J'ai trouvé cette conception bizarre et je suis allé voir dans le code pour voir comment t'avais géré ça, perso, je trouve ça pas idéal. Tu as 14 ports dispo sur ton Arduino, je trouve dommage de pas s'en servir. En plus, ça allègerai pas mal ton code et ça pourrait simplifier le dépannage. Je m'explique, si t'as une résistance qui déconne niveau précision et/ou que ton alim vacille un peu, la lecture risque de ne pas être très précise et bonjour la difficulté à dépanner...

    Au pire, tu peux faire une lecture matricielle si tu veux économiser un peu les E/S.

    Hors ligne berunours

    • Serial Bartopeur
    • Passionné
    • *
    • Messages: 156
      • Voir le profil
    Ice cold beer mini à l'étude
    « Réponse #7 le: Lundi 15 Mars 2021, 13:09:11 pm »
  • J'ai trouvé cette conception bizarre et je suis allé voir dans le code pour voir comment t'avais géré ça, perso, je trouve ça pas idéal. Tu as 14 ports dispo sur ton Arduino, je trouve dommage de pas s'en servir. En plus, ça allègerai pas mal ton code et ça pourrait simplifier le dépannage. Je m'explique, si t'as une résistance qui déconne niveau précision et/ou que ton alim vacille un peu, la lecture risque de ne pas être très précise et bonjour la difficulté à dépanner...

    Au pire, tu peux faire une lecture matricielle si tu veux économiser un peu les E/S.
    Surement :p, mais je débute en électronique (1ère création ever), du coup si t'as des astuces je suis preneur.
    Je trouvais ça plus simple de mettre le tout en série histoire de créer des petits modules (trou de bille) comprenant chacun une led adressable, une résistance et un switch. Sur la Hang-on, j'ai galéré à tout câbler directement sur l'arduino, du coup avoir une sortie boutons, une sortie led m'arrange.
    Il reste à câbler aussi les stepper motor (2 sorties chacun), les 3 afficheurs (1 sortie chacun), un DFmini (4 de mémoire) etc... Je vais voir si tout peu passer sur un arduino MEGA mais j'aimerai que ce sois le plus imple possible.

    Hors ligne berunours

    • Serial Bartopeur
    • Passionné
    • *
    • Messages: 156
      • Voir le profil
    Ice cold beer mini à l'étude
    « Réponse #8 le: Lundi 22 Mars 2021, 08:23:26 am »
  • J'avais retravailler un peu mon câblage pour que la simulation soit plus facile et "compréhensible".

    J'attends un éventuel confinement de chez moi pour commandé le nécessaire (tout, moteurs, bandes led, courroie etc) pour rebosser dessus.
    En attendant j'avance sur la construction de la hangon.



    Toujours en public, testable ici avec un compte gratos: Version 16 mars

    Comme on peut le voir, j'essaie de faire le plus simple au niveau câblage histoire de ne pas me casser la tête lors de la construction.

    Hors ligne Mario25

    • Scotché
    • *
    • Messages: 424
    • Localisation: St Omer / Boulogne-sur-mer (62)
      • Voir le profil
    Ice cold beer mini à l'étude
    « Réponse #9 le: Lundi 22 Mars 2021, 22:27:18 pm »
  • Bon courage pour ce projet.  ^-

    Dire que j'ai croisé la borne à Coin-op legacy, sans y avoir touché.  :-\

    Hors ligne berunours

    • Serial Bartopeur
    • Passionné
    • *
    • Messages: 156
      • Voir le profil
    Ice cold beer mini à l'étude
    « Réponse #10 le: Mercredi 07 Avril 2021, 22:47:08 pm »
  • Bon, ce projet m'occupe pas mal l'esprit. Pas de confinement donc pas beaucoup de temps à y consacrer même si je vais être en vacances la dernière semaine d'avril.
    J'ai étudié plus en détail la chose et même commandé 2-3 éléments pour commencer mes test.

    Du coup, niveau choix de matos:
    -Arduino méga, plus de port, j'vais finalement utilisé un port par trous
    -J'ai commandé une 12aine de TCRT5000 qui sont des barrières infra-rouge, parfaite pour détecter le passage d'un objet réfléchissant. J'utiliserai le port digital pour la facilité.
    -Je vais utiliser des leds individuelles de type RGBCW que je fixerai sur une pièce imprimé en 3d (une sorte de pipe) avec les TRCT. Elles sont adressables donc besoin d'un port unique pour l'ensemble.
    -Pour les moteurs, on passe par du stepper, j'ai une vague idée de leur fonctionnement, j'ai déjà commandé des contrôleurs A4988 pour les actionner.
    -Pour le son, un DFplayer mini devrai faire l'affaire, ça reste une grande question, j'en ai commandé pour tester.
    -Pour les affichage, 3 afficheurs led 7 segments 4 digit devraient suffire, commandé pour m'entrainer à les utiliser.
    -Pour la partie méca, je vais m'orienter sur quelque chose de similaire aux axes X,Y d'une imprimante 3D avec un entrainement par courroie GT2. Je m'y attaquerai plus tard, cette conception ne me fait pas trop peur.

    A pis, j'ai aussi commandé des billes en 15 et 13 mm... Sur la machine d'origine, elle fait un peu plus de 15 mm. Vue que je vais la réduire un peu, je vais peut-être passer sur du 13mm. J'attends de les avoir pour faire mes test.

    Afin de ne pas engager trop d'argent dans un projet que je ne maîtrise pas, j'ai commandé direct en Chine, ça devrait arrivé pour mes vacances. En attendant je fini la Hangon (des news bientôt).

    Du coup, la prochaine étape, dès réception des billes, leds et des barrières IR, je dessine une pièce qui comprendra les 3 et se cachera derrière les trous. Faut juste que je sois patient.

    Merci pour vos encouragements ;)

    Hors ligne berunours

    • Serial Bartopeur
    • Passionné
    • *
    • Messages: 156
      • Voir le profil
    Ice cold beer mini à l'étude
    « Réponse #11 le: Jeudi 15 Avril 2021, 19:26:37 pm »
  • J'ai reçu mes capteurs infra rouge aujourd'hui !

    Du coup petit test  ;)

    Faut imaginer un peu mais:
    - l'afficheur LED affiche le trou demandé
    - les 3 capteurs sont dans les trous (le 1 à droite, 2 au centre, 3 à gauche)
    - le bout de métal sert de bille en attendant de les recevoir (avec un ptit bout d'essuis tout histoire de limiter le bruit de la chute)

    Du coup:


    Voilà, j'étais pas censé y toucher avant ma semaine de vacance en fin de mois mais je n'ai pas réussis à me retenir...

    Hors ligne Little_Rabbit

    • ✌(◕‿◕)✌ Donateur 2021
    • Staff
    • Dieu de l' Arcade
    • *****
    • Messages: 6052
    • Localisation: Nantes
    • The early 80's : the arcade golden age !!
      • Voir le profil
    Ice cold beer mini à l'étude
    « Réponse #12 le: Jeudi 15 Avril 2021, 20:37:33 pm »
  • Salut,

    Génial ! Ça marche super bien !!  ^-^

    Une interrogation toutefois : la bille tombera dans l'un des trous, et doit être détectée par ton capteur infra-rouge. OK. Mais derrière le trou, il y aura une coque ou un panneau pour canaliser la bille qui doit retomber en bas. Ce panneau ou cette coque ne va-t-elle pas elle même réfléchir le faisceau infra-rouge, et du coup interdire la détection de la bille ? Quelle est la distance à partir de laquelle la réflexion du faisceau n'est-elle plus détectée ? Ou peut-être que si l'arrière-plan est peint en noir, cela absorbera le faisceau sans le réfléchir ?

    En tous cas là ça marche super bien, avec un passage même très furtif de ton objet métallique  ^-.

    A+
    Recherche bornes dédiées ou PCB originaux: Miss Pacman, Dig Dug, Galaga, Mappy, Asteroids, Battlezone, Missile Command, Tempest, Star Wars, Donkey Kong (+ Jr), Mario Bros, Moon Patrol, Defender, Joust, Frogger, Gyruss, Pooyan, Space Tactics, Zaxxon, etc. Flip : Gottlieb des années 80 (Spirit, Amazon Hunt, ...), Baby Pac Man. Divers :  Ice Cold Beer
    Trois fois rien quoi ! :D

    Hors ligne berunours

    • Serial Bartopeur
    • Passionné
    • *
    • Messages: 156
      • Voir le profil
    Ice cold beer mini à l'étude
    « Réponse #13 le: Jeudi 15 Avril 2021, 20:49:23 pm »
  • Salut,

    Génial ! Ça marche super bien !!  ^-^

    Une interrogation toutefois : la bille tombera dans l'un des trous, et doit être détectée par ton capteur infra-rouge. OK. Mais derrière le trou, il y aura une coque ou un panneau pour canaliser la bille qui doit retomber en bas. Ce panneau ou cette coque ne va-t-elle pas elle même réfléchir le faisceau infra-rouge, et du coup interdire la détection de la bille ? Quelle est la distance à partir de laquelle la réflexion du faisceau n'est-elle plus détectée ? Ou peut-être que si l'arrière-plan est peint en noir, cela absorbera le faisceau sans le réfléchir ?

    En tous cas là ça marche super bien, avec un passage même très furtif de ton objet métallique  ^-.

    A+
    Les capteurs sont réglables grâce à un petit potard intégré. J'ai prévu de faire une pièce imprimé en 3D noir mat pour le passage de bille.
    Je vais tester, mais je pense que ça ne devrait pas poser de problème.

    Néanmoins tu souligne une question importante  =?=

    Ils ont 2 modes, digital et analogique. Si jamais le digital, utilisé pour le moment, ne fonctionne pas, j'passerais en analogique et surveillerais les grosses variations de valeurs.
    La bille étant très réfléchissante, je pense que les variations seront suffisamment importantes pour êtres significatives.

    Hors ligne Iro

    • Alias le Rouston Masqué
    • Staff
    • Accro
    • *****
    • Messages: 222
    • Localisation: Chilly Mazarin
    • Iro, chevalier Judaï
      • Voir le profil
    Ice cold beer mini à l'étude
    « Réponse #14 le: Jeudi 15 Avril 2021, 21:20:01 pm »
  • Super !!!!   ^-^ ^-^
    "Jet set 2, c'est avec Robert Garcia ?" Kaneda, Lapsus de sac Vol.1
    Peter Shou Owner' Club

    WIPs : Naomi - SEGA Rally - AB Cop - Lethal Enforcers - COMPUMI - Terminator 2 - Space Invaders - Artworks pour Boitiers K7 Naomi CF - Ma collec' de panels

    LES TUTOS DE GAMO   

    Hors ligne berunours

    • Serial Bartopeur
    • Passionné
    • *
    • Messages: 156
      • Voir le profil
    Ice cold beer mini à l'étude
    « Réponse #15 le: Samedi 17 Avril 2021, 14:00:57 pm »
  • Salut à tous...

    J'ai programmé ma boucle de gameplay et mes afficheurs...

    Pour les curieux je vous mets le code en fin de post.
    Je suis toujours aussi novice en code mais je prends plaisir à apprendre donc c'est motivant.

    J'vous mets une petite vidéo de démonstration aussi. Les afficheurs clignotent à cause de la caméra du téléphone, en vraie c'est totalement imperceptible.


    J'ai mes grandes étapes de programme. Et ça fonctionne bien.
    Mes afficheurs sont petits, sur la version final j'en prendrais des plus grands.

    Je vous tiens au courant de la suite.
    Si vous avez des conseil ou remarques n'hésitez pas.
    Merci ;)

    Le code:
    //--------------------------------------------------- INITIALISATION DE LA BECANNE ------------------------------------

    #include <SevenSegmentAsciiMap.h>
    #include <SevenSegmentExtended.h>
    #include <SevenSegmentTM1637.h>


    SevenSegmentTM1637    tm1(9, 8 );  //afficheur du bas déclaration
    SevenSegmentTM1637    tm2(11, 10);  //afficheur du centre déclaration
    SevenSegmentTM1637    tm3(13, 12);  //afficheur du haut déclaration

    int temp = 0;  //variable temporisation
    int bille = 0; // Bille on bar
    int etape = 0; // Trou demandé
    int bonus = 0; // Variable bonus
    int score = 0; // variable Score
    int highscore = 0; // Variable highscore
    int tempoloop = 50; // Variable du delay de la boucle pricipale en ms

    int button2 = 0;  // etat boutton 1
    int button4 = 0;  // etat boutton 2

    int Amode = 1;   // Pour attrack mode
    int Debutpartie = 0; // Initialisation de la partie après le crédit
    int Initbarre = 0;   // Pour que les barres aillent chercher une nouvelle bille
    int Principale = 0;  // Boucle principale avec bougeage des barres, bonus qui descent, billes qui passent dans un trou etc...
    int Bontrou = 0;     // Boucle Bille dans le bon trou
    int Badtrou = 0;     // Boucle Bille dans le mauvais trou
    int Gameover = 0;     // Boucle Gamover

    int test = 0; // Variable temporaire pour ecriture du programme (gestion des etapes)

    void setup() {
       
        tm1.begin(); tm1.setBacklight(60); tm1.setPrintDelay(500); tm1.clear();   //afficheur du bas initialisation
        tm2.begin(); tm2.setBacklight(60); tm2.setPrintDelay(500); tm2.clear();   //afficheur du centre initialisation
        tm3.begin(); tm3.setBacklight(60); tm3.setPrintDelay(300); tm3.clear();   //afficheur du haut initialisation
       
       
        pinMode(2, INPUT); // cablage Bouton Crédit
        pinMode(4, INPUT); // cablage Bouton Mauvais trou TEMP
       
        Serial.begin(9600); //Pour la console
    }



    void loop() {

    //--------------------------------------------------- ATTRACK MODE ---------------------------------
      if (Amode == 1){
        delay(100);
        button2 = digitalRead(2);                                         // Verif si boutton coin est appuyé
        if (button2== HIGH) { Amode=0; Debutpartie = 1;tm1.clear();}      // Sortie d'Attrack mode
       
        temp++;
           switch (temp) {                                                // Faire defiler text ecran du bas
            case 20: tm1.clear(); tm1.print("PLAY"); break;
            case 40: tm1.clear(); tm1.print("ICE"); break;
            case 60: tm1.clear(); tm1.print("COLD"); break;
            case 80: tm1.clear(); tm1.print("BEER"); break;
            case 100: tm1.clear(); break;
            case 120: tm1.clear(); tm1.setCursor(1, decalage (highscore)); tm1.print(highscore); temp = 0;  break;}
      } //----- FIN DE ATTRACK MODE

    //--------------------------------------------------- DEBUT DE PARTIE ---------------------------------
      if (Debutpartie == 1){bille++; tm3.clear(); tm3.print(bille); etape = 1; Debutpartie =0;Initbarre = 1;}
     
    //----------------------------------------- INITIALISATION DES BARRES ET BONUS ------------------------
      if (Initbarre ==1){ bonus = etape *100; tm2.clear(); tm2.setCursor(1, decalage (bonus)); tm2.print(bonus);  //Affichage Bonus
                          tm1.clear(); tm1.setCursor(1, decalage (score)); tm1.print(score); Initbarre = 0;       //Affichage Score
                          Principale = 1; delay (1000);}  //le delay sera a virer !!!!!

    //----------------------------------------------------BOUCLE PRINCIPALE--------------------------------
      if (Principale == 1) { delay(tempoloop);  // Delais (latence voulu)
           
            temp++; if (temp > (3000/tempoloop) && bonus > 0) {bonus = bonus - 10; tm2.clear(); tm2.setCursor(1, decalage (bonus)); tm2.print(bonus); temp = 0;} //Actu Bonus
           
            button2 = digitalRead(2); if (button2== HIGH) { Bontrou =1 ; Principale = 0 ;}   // Appui Bouton 2 pour valider (test) 
            button4 = digitalRead(4); if (button4== HIGH) { Badtrou =1 ; Principale = 0 ;}   // Appui Bouton 2 pour valider (test) 
        } //----- FIN DE BOUCLE PRINCIPALE

    //----------------------------------------------------------BON TROU-----------------------------------
      if (Bontrou == 1) { tm2.blink(); temp = bonus/10;
                for ( int i=0; i<temp; i++){ bonus= bonus -10; score = score +10; delay (200- (i*2));  // Décompte du bonus
                   tm2.clear(); tm2.setCursor(1, decalage (bonus)); tm2.print(bonus); tm1.clear(); tm1.setCursor(1, decalage (score)); tm1.print(score);}
                etape++; if (etape > 10) {etape=1;} Bontrou =0; Initbarre =1;tm2.clear(); delay (1000);}  // Retour Initialisation barre
     
    //--------------------------------------------------------MAUVAIS TROU----------------------------------
      if (Badtrou == 1){ tm3.clear(); tm3.print("-"); tm2.clear(); tm2.print("----"); tm1.clear(); tm1.print("OUPS"); delay (2000);
            if (bille == 3) { Gameover = 1;} Debutpartie = 1; Badtrou = 0;}

      if (Gameover == 1) {tm3.clear(); tm2.clear(); tm1.clear(); tm1.print("    GAME OVER   YOUR SCORE   "); tm1.clear(); tm1.setCursor(1, decalage (score)); tm1.print(score); delay (1000); tm1.blink(); delay (1000); tm1.clear();
            if ( score > highscore) { highscore = score; tm1.clear(); tm1.print(" NEW"); tm1.blink(); tm1.print("HIGH"); tm1.blink(); tm1.print("SCOR"); tm1.blink(); tm1.clear();}
            Amode = 1; Gameover = 0; Debutpartie = 0; bille = 0; etape = 0; score = 0; temp = 0;}
     
     
     
    } //----- FIN DE LOOP


    int decalage (int adecaler) {         // Fonction pour trouver decalage des afficheurs *******************
        int decal = 0;
        if ( adecaler <1000){decal = 1;}
        if ( adecaler <100){decal = 2;}
        if ( adecaler <10){decal = 3;}
        return decal;       
    }
    « Modifié: Dimanche 18 Avril 2021, 19:27:56 pm par berunours »