Nb_Cartes_Distribuees = 1 ' Nombre de cartes distribuées par joueur
Nb_Cartes_Total[1] = 32 ' 1 jeu de 32 cartes
Nb_Cartes_Total[2] = 54 ' 1 jeu de 54 cartes
Nb_Cartes_Total[3] = 64 ' 2 jeux de 32 cartes
Nb_Cartes_Total[4] = 96 ' 2 jeux de 54 cartes
Nb_Cartes_Total[5] = 108 ' 3 jeux de 32 cartes
Nb_Cartes_Total[6] = 128 ' 4 jeux de 32 cartes
Nb_Cartes_Total[7] = 160 ' 5 jeux de 32 cartes
Nb_Cartes_Total[8] = 162 ' 3 jeux de 54 cartes
Index_CT = 2 ' Index pour balayer le tableau Nb_Cartes_Total
LCD.Clear()
LCD.Text(1,0,0,0,"DISTRIBUTEUR DE CARTES")
' Choix du mode de fonctionnement
LCD.Text(1,0,20,0,"Choix du mode :")
LCD.Text(1,0,30,0,"1. Melange seul")
LCD.Text(1,0,40,0,"2. Melange + Distribue")
bouton_presse=""
Mode = 1
While bouton_presse<>"E"
If bouton_presse="U" then
Mode=Mode+1
If Mode>2 Then
Mode=2
EndIf
EndIf
If bouton_presse="D" then
Mode=Mode-1
If Mode<1 Then
Mode=1
EndIf
EndIf
LCD.Text(1,24,50,0," ")
LCD.Text(1,24,50,0,Mode)
Buttons.Flush()
Buttons.Wait()
bouton_presse=buttons.GetClicks()
EndWhile
If Mode=1 then
Motor.Start("B",-100)
Program.Delay(30000)
Motor.Stop("B","False")
Goto fin
EndIf
LCD.Clear()
LCD.Text(1,0,0,0,"DISTRIBUTEUR DE CARTES")
' Choix du nombre de cartes constituant le jeu
LCD.Text(1,0,18,0,"Nbre de cartes total ?")
bouton_presse=""
While bouton_presse<>"E"
If bouton_presse="U" then
Index_CT=Index_CT+1
If Index_CT>8 Then
Index_CT=8
EndIf
EndIf
If bouton_presse="D" then
Index_CT=Index_CT-1
If Index_CT<1 Then
Index_CT=1
EndIf
EndIf
LCD.Text(1,64,30,0," ")
LCD.Text(1,64,30,0,Nb_Cartes_Total[Index_CT])
Buttons.Flush()
Buttons.Wait()
bouton_presse=buttons.GetClicks()
EndWhile
' Choix du nombre de joueurs
LCD.Text(1,0,40,0,"Nbre de joueurs ?")
bouton_presse=""
While bouton_presse<>"E"
If bouton_presse="U" then
Nb_Joueur=Nb_Joueur+1
If Nb_Joueur>Nb_Cartes_Total[Index_CT] Then
Nb_Joueur=Nb_Cartes_Total[Index_CT]
EndIf
EndIf
If bouton_presse="D" then
Nb_Joueur=Nb_Joueur-1
If Nb_Joueur<2 Then
Nb_Joueur=2
EndIf
EndIf
LCD.Text(1,72,52,0," ")
LCD.Text(1,72,52,0,Nb_Joueur)
Buttons.Flush()
Buttons.Wait()
bouton_presse=buttons.GetClicks()
EndWhile
' Choix du nombre de cartes par joueur
Nb_Cartes_Max = Math.Floor(Nb_Cartes_Total[Index_CT]/Nb_Joueur)
LCD.Text(1,0,62,0,"Nbre cartes/joueur ?")
bouton_presse=""
While bouton_presse<>"E"
If bouton_presse="U" then
Nb_Cartes_Distribuees=Nb_Cartes_Distribuees+1
If Nb_Cartes_Distribuees>Nb_Cartes_Max Then
Nb_Cartes_Distribuees=Nb_Cartes_Max
EndIf
EndIf
If bouton_presse="D" then
Nb_Joueur=Nb_Joueur-1
If Nb_Cartes_Distribuees<1 Then
Nb_Cartes_Distribuees=1
EndIf
EndIf
LCD.Text(1,72,74,0," ")
LCD.Text(1,72,74,0,Nb_Cartes_Distribuees)
Buttons.Flush()
Buttons.Wait()
bouton_presse=buttons.GetClicks()
EndWhile
' Choix de l'amplitude de rotation
Amplitude_Rotation = 360 ' Valeur angulaire de l'amplitude totale de distribution
LCD.Text(1,0,84,0,"Amplitude Rotation ?")
bouton_presse=""
While bouton_presse<>"E"
If bouton_presse="U" then
Amplitude_Rotation=Amplitude_Rotation+30
If Amplitude_Rotation>360 Then
Amplitude_Rotation=360
EndIf
EndIf
If bouton_presse="D" then
Amplitude_Rotation=Amplitude_Rotation-30
If Amplitude_Rotation<90 Then
Amplitude_Rotation=90
EndIf
EndIf
LCD.Text(1,72,96,0," ")
LCD.Text(1,72,96,0,Amplitude_Rotation)
Buttons.Flush()
Buttons.Wait()
bouton_presse=buttons.GetClicks()
EndWhile
Amplitude_Rotation=Amplitude_Rotation*7.5
Pas_Rotation=Amplitude_Rotation/(Nb_Joueur-1)
boucle_principale:
LCD.Clear()
LCD.Text(1,16,45,0,"Attente Depart !!!")
while Sensor.ReadPercent(2)=0
EndWhile