pour l'instant, je n'ai fait que ça, les sprites, c.-à-d. l'image de fond, les pièces de monnaie, mais j'aimerais que quand on descend les pièces dans la zone en bas, ça me cumule la valeur des pièces, c'est pour cette raison que j'ai mis un fond de couleur différente.
J'aimerais aussi placer un bouton pour valider l'opération, mais je n'envisage pas encore comment je vais m'y prendre.
C'est pourquoi, je me tourne vers vous pour solliciter votre aide bienveillante et je vous en remercie par anticipation.










Code : Tout sélectionner
;Monnaie
;Niveau 1 : maximum 12€
;Niveau 2 : maximum 99 centimes
;Niveau 3 : euros et centimes
;Niveau 4 : rendre la monnaie, juste des euros
;Niveau 5 : rendre la monnaie, juste des centimes
;Niveau 6 : rendre la monnaie, euros et centimes
Enumeration
#Fenetre_principale
EndEnumeration
Enumeration Gadgets
#Btn_valider
#Fond
EndEnumeration
Enumeration Polices
#Police
#Police2
#Police3
EndEnumeration
Structure Monnaie
Sprite.i ;Id de la pièce
x.i ;Position horitontale de la pièce
y.i ;Position verticale de la pièce
Largeur.i;Largeur de la pièce
Hauteur.i;Hauteur de la pièce
Valeur.i ;Valeur de la pièce (en centimes)
Type.b ;Type de pièce (Euro ou centime)
EndStructure
Structure Present
cout_Euros.i ;Prix coûtant euros
cout_Cts.i ;Prix coûtant centimes
donne_Euros.i ;Prix payé euros
donne_Cts.i ;Prix payé centimes
EndStructure
Global NewList Piece.Monnaie(), NewList PieceBis.Monnaie(), Evenement, i, Mouse, mousePress, Niveau = 0, Texte$, TxtEuros$, TxtCts$, MontantEuros, MontantCts, MontantTotal, totalValeursComptees
Global enonce$, enonce2$, enonce3$
Global Points = 0, Cado.Present
Global Fond_principal, Cadeau, N1, N2, N3, N4, N5, N6, Valider, ZoneRassemblage, ZoneScore
#Chemin = #PB_Compiler_FilePath + "Images\"
LoadFont(#Police2, "FontAwesome", 16)
LoadFont(#Police3, "Impact", 60)
UsePNGImageDecoder()
InitSprite()
InitKeyboard()
InitMouse()
Procedure AfficherMonnaie()
ForEach Piece()
With Piece()
DisplayTransparentSprite(\Sprite, \x, \y)
EndWith
Next
EndProcedure
Procedure AfficherPoints()
Select Niveau
Case 1, 4
MontantTotal = MontantEuros * 100
If MontantTotal = totalValeursComptees
Points + 1
EndIf
Case 2, 5
MontantTotal = MontantCts
If MontantTotal = totalValeursComptees
Points + 1
EndIf
Case 3, 6
MontantTotal = MontantEuros * 100 + MontantCts
If MontantTotal = totalValeursComptees
Points + 1
EndIf
EndSelect
DrawingFont(FontID(#Police3))
DrawText((160-TextWidth(Space(10)))/2, (100-TextHeight(Space(10)))/2, Space(10), #Yellow, $3CC53C)
DrawText((160-TextWidth(Str(Points)))/2, (100-TextHeight(Str(Points)))/2, Str(Points), #Yellow, $3CC53C)
EndProcedure
Procedure AfficherMontant()
Protected TexteMontant$
If Niveau
TexteMontant$ = "Valeur pièces déplacées : " + StrF(totalValeursComptees/100, 2) + " €"
DrawingFont(FontID(#Police))
DrawText(0, 0, Space(100), #Yellow, $1EA01E)
DrawText((850-TextWidth(TexteMontant$))/2, 0, TexteMontant$, #Yellow, $1EA01E)
Else
TexteMontant$ = "Choisis un niveau"
DrawingFont(FontID(#Police))
DrawText(0, 0, Space(100), #Yellow, $1EA01E)
DrawText((850-TextWidth(Texte$))/2, 0, TexteMontant$, #Yellow, $1EA01E)
EndIf
EndProcedure
Procedure AfficherTexte()
Select Niveau
Case 1
enonce2$ = "Rassemble "
If MontantEuros And MontantCts
enonce2$ + TxtEuros$ + " et " + TxtCts$
ElseIf MontantEuros
enonce2$ + TxtEuros$
ElseIf Not MontantEuros And MontantCts
enonce2$ + TxtCts$
EndIf
enonce2$ + " sur le tapis"
enonce$ = " joue avec les euros"
enonce3$ = ""
Case 2
enonce2$ = "Rassemble "
If MontantEuros And MontantCts
enonce2$ + TxtEuros$ + " et " + TxtCts$
ElseIf MontantEuros
enonce2$ + TxtEuros$
ElseIf Not MontantEuros And MontantCts
enonce2$ + TxtCts$
EndIf
enonce2$ + " sur le tapis"
enonce$ = " joue avec les centimes"
enonce3$ = ""
Case 3
enonce2$ = "Rassemble "
If MontantEuros And MontantCts
enonce2$ + TxtEuros$ + " et " + TxtCts$
ElseIf MontantEuros
enonce2$ + TxtEuros$
ElseIf Not MontantEuros And MontantCts
enonce2$ + TxtCts$
EndIf
enonce2$ + " sur le tapis"
enonce$ = " joue avec les euros et les centimes"
enonce3$ = ""
Case 4
Cado\cout_Euros = Random(6, 1)
Cado\donne_Euros = MontantEuros + Cado\cout_Euros
enonce$ = " joue avec les euros" + " " + Str(MontantEuros)
enonce2$ = " Tu donnes " + Str(Cado\donne_Euros) + " €"
enonce2$ + " pour un cadeau qui vaut " + Str(Cado\cout_Euros) + " €"
enonce3$ = "Combien la marchande va-t-elle te rendre ?"
Case 5
Cado\cout_Cts = Random(50, 1)
Cado\donne_Cts = MontantCts + Cado\cout_Cts
enonce$ = " joue avec les centimes" + " " + Str(MontantCts)
enonce2$ = " Tu donnes " + Str(Cado\donne_Cts)
If Cado\donne_Cts < 2 : enonce2$ + " centime" : Else : enonce2$ + " centimes" : EndIf
enonce2$ + " pour un cadeau qui vaut " + Str(Cado\cout_Cts)
If Cado\cout_Cts < 2 : enonce2$ + " centime." : Else : enonce2$ + " centimes." : EndIf
enonce3$ = "Combien la marchande va-t-elle te rendre ?"
Case 6
Cado\cout_Euros = Random(6, 1)
Cado\cout_Cts = Random(50, 1)
Cado\donne_Euros = MontantEuros + Cado\cout_Euros
Cado\donne_Cts = MontantCts + Cado\cout_Cts
enonce$ = " joue avec les euros et les centimes " + Str(MontantEuros) + "." + RSet(Str(MontantCts),2, "0") + " €."
enonce2$ = " Tu donnes " + Str(Cado\donne_Euros) + "," + RSet(Str(Cado\cout_Cts),2, "0") + " € pour un cadeau qui vaut " + Str(Cado\cout_Euros) + "," + RSet(Str(Cado\donne_Cts),2, "0") + " €."
enonce3$ = "Combien la marchande va-t-elle te rendre ?"
EndSelect
DrawingFont(FontID(#Police))
DrawText(0, 316, Space(200), #Yellow, $1D9E1D)
DrawText((850-TextWidth(enonce2$))/2, 316, enonce2$, #Yellow, $1D9E1D)
DrawText(100, 356, Space(200), #Yellow, $21A321)
DrawText(100, 356, enonce3$, #Yellow, $21A321)
DrawingFont(FontID(#Police2))
DrawText(10, 410, Space(100), #Yellow, $26A926)
DrawText(10, 410, "Niveau " + Str(Niveau) + enonce$, #Yellow, $26A926)
EndProcedure
Procedure DefinirMontantCts(MontantMaxi)
MontantCts = Random(MontantMaxi, 1)
TxtCts$ = Str(MontantCts)
If MontantCts < 2
TxtCts$ + " centime"
Else
TxtCts$ + " centimes"
EndIf
AfficherTexte()
ProcedureReturn MontantCts
EndProcedure
Procedure DefinirMontantEuros(MontantMaxi)
MontantEuros = Random(MontantMaxi, 1)
TxtEuros$ = Str(MontantEuros)
If MontantEuros < 2
TxtEuros$ + " euro"
Else
TxtEuros$ + " euros"
EndIf
AfficherTexte()
ProcedureReturn MontantEuros
EndProcedure
Procedure InitMontant()
Select Niveau
Case 1
DefinirMontantEuros(12)
Case 2
DefinirMontantCts(99)
Case 3
DefinirMontantEuros(12)
DefinirMontantCts(99)
Case 4
DefinirMontantEuros(6)
Case 5
DefinirMontantCts(50)
Case 6
DefinirMontantEuros(6)
DefinirMontantCts(50)
EndSelect
EndProcedure
Procedure principale()
OpenWindow(#Fenetre_principale, 0, 0, 999, 752, "Monnaie", #PB_Window_BorderLess|#PB_Window_ScreenCentered)
OpenWindowedScreen(WindowID(#Fenetre_principale), 0, 0, WindowWidth(#Fenetre_principale), WindowHeight(#Fenetre_principale))
Fond_principal = CatchSprite(#PB_Any, ?Fond)
;Création du cadeau
Cadeau = CatchSprite(#PB_Any, ?Cadeau)
TransparentSpriteColor(Cadeau, $FF00FF)
;- Création de la souris
LoadFont(#Police ,"FontAwesome", 30)
Mouse = CreateSprite(#PB_Any, 24, 40)
StartDrawing(SpriteOutput(Mouse))
Box(0, 0, 24, 40, #White)
DrawingFont(FontID(#Police))
DrawText(0, 0, Chr($F245), #Black, #White)
StopDrawing()
TransparentSpriteColor(Mouse, #White)
;- Création de la zone de rassemblage
ZoneRassemblage = CreateSprite(#PB_Any, 850, 40)
StartDrawing(SpriteOutput(ZoneRassemblage))
Box(0, 0, 850, 40, $FF00FF)
StopDrawing()
TransparentSpriteColor(ZoneRassemblage, $FF00FF)
;- Création de la zone de score
zoneScore = CreateSprite(#PB_Any, 160, 100)
StartDrawing(SpriteOutput(zoneScore))
Box(0, 0, 160, 100, $3CC53C)
StopDrawing()
;- Création du bouton valider
Valider = CreateSprite(#PB_Any, 160, 50)
StartDrawing(SpriteOutput(Valider))
Box(0, 0, 160, 50, $FF00FF)
RoundBox(0, 0, 120, 50, 25, 25, #Black)
DrawingFont(FontID(#Police))
Texte$ = "Valider"
DrawText((120-TextWidth(Texte$))/2, 3, Texte$, #Yellow, #Black)
StopDrawing()
TransparentSpriteColor(Valider, $FF00FF)
;- Création du bouton niveau 1
N1 = CreateSprite(#PB_Any, 130, 50)
StartDrawing(SpriteOutput(N1))
Box(0, 0, 130, 50, $FF)
DrawingFont(FontID(#Police))
Texte$ = "Niveau 1"
DrawText((130-TextWidth(Texte$))/2, 3, Texte$, #Black, $FF)
StopDrawing()
;- Création du bouton niveau 2
N2 = CreateSprite(#PB_Any, 130, 50)
StartDrawing(SpriteOutput(N2))
Box(0, 0, 130, 50, $006DFF)
DrawingFont(FontID(#Police))
Texte$ = "Niveau 2"
DrawText((130-TextWidth(Texte$))/2, 3, Texte$, #Black, $006DFF)
StopDrawing()
;- Création du bouton niveau 3
N3 = CreateSprite(#PB_Any, 130, 50)
StartDrawing(SpriteOutput(N3))
Box(0, 0, 130, 50, $00D5FF)
DrawingFont(FontID(#Police))
Texte$ = "Niveau 3"
DrawText((130-TextWidth(Texte$))/2, 3, Texte$, #Black, $00D5FF)
StopDrawing()
;- Création du bouton niveau 4
N4 = CreateSprite(#PB_Any, 130, 50)
StartDrawing(SpriteOutput(N4))
Box(0, 0, 130, 50, $00FF40)
DrawingFont(FontID(#Police))
Texte$ = "Niveau 4"
DrawText((130-TextWidth(Texte$))/2, 3, Texte$, #Black, $00FF40)
StopDrawing()
;- Création du bouton niveau 5
N5 = CreateSprite(#PB_Any, 130, 50)
StartDrawing(SpriteOutput(N5))
Box(0, 0, 130, 50, $DBFF00)
DrawingFont(FontID(#Police))
Texte$ = "Niveau 5"
DrawText((130-TextWidth(Texte$))/2, 3, Texte$, #Black, $DBFF00)
StopDrawing()
;- Création du bouton niveau 6
N6 = CreateSprite(#PB_Any, 130, 50)
StartDrawing(SpriteOutput(N6))
Box(0, 0, 130, 50, $FF8700)
DrawingFont(FontID(#Police))
Texte$ = "Niveau 6"
DrawText((130-TextWidth(Texte$))/2, 3, Texte$, #Black, $FF8700)
StopDrawing()
;- Création des différentes pièces de monnaie, les valeurs sont en centimes
With Piece()
;4 pièces de 2€
AddElement(Piece())
\Sprite = CatchSprite(#PB_Any, ?Piece2Euros):\x = 0:\y = 0:\Largeur = 127:\Hauteur = 126:\Valeur = 200:\Type = Euro
AddElement(Piece())
\Sprite = CatchSprite(#PB_Any, ?Piece2Euros):\x = 0:\y = 53.5:\Largeur = 127:\Hauteur = 126:\Valeur = 200:\Type = Euro
AddElement(Piece())
\Sprite = CatchSprite(#PB_Any, ?Piece2Euros):\x = 0:\y = 107:\Largeur = 127:\Hauteur = 126:\Valeur = 200:\Type = Euro
AddElement(Piece())
\Sprite = CatchSprite(#PB_Any, ?Piece2Euros):\x = 0:\y = 160.5:\Largeur = 127:\Hauteur = 126:\Valeur = 200:\Type = Euro
;4 pièces de 1€
AddElement(Piece())
\Sprite = CatchSprite(#PB_Any, ?Piece1Euro):\x = 125.5:\y = 0:\Largeur = 113:\Hauteur = 113:\Valeur = 100:\Type = Euro
AddElement(Piece())
\Sprite = CatchSprite(#PB_Any, ?Piece1Euro):\x = 125.5:\y = 48.5:\Largeur = 113:\Hauteur = 113:\Valeur = 100:\Type = Euro
AddElement(Piece())
\Sprite = CatchSprite(#PB_Any, ?Piece1Euro):\x = 125.5:\y = 97:\Largeur = 113:\Hauteur = 113:\Valeur = 100:\Type = Euro
AddElement(Piece())
\Sprite = CatchSprite(#PB_Any, ?Piece1Euro):\x = 125.5:\y = 145.5:\Largeur = 113:\Hauteur = 113:\Valeur = 100:\Type = Euro
;4 pièces de 50 centimes
AddElement(Piece())
\Sprite = CatchSprite(#PB_Any, ?Piece50Cts):\x = 237:\y = 0:\Largeur = 116:\Hauteur = 116:\Valeur = 50:\Type = Centime
AddElement(Piece())
\Sprite = CatchSprite(#PB_Any, ?Piece50Cts):\x = 237:\y = 47:\Largeur = 116:\Hauteur = 116:\Valeur = 50:\Type = Centime
AddElement(Piece())
\Sprite = CatchSprite(#PB_Any, ?Piece50Cts):\x = 237:\y = 97:\Largeur = 116:\Hauteur = 116:\Valeur = 50:\Type = Centime
AddElement(Piece())
\Sprite = CatchSprite(#PB_Any, ?Piece50Cts):\x = 237:\y = 144:\Largeur = 116:\Hauteur = 116:\Valeur = 50:\Type = Centime
;4 pièces de 20 centimes
AddElement(Piece())
\Sprite = CatchSprite(#PB_Any, ?Piece20Cts):\x = 352:\y = 0:\Largeur = 106:\Hauteur = 106:\Valeur = 20:\Type = Centime
AddElement(Piece())
\Sprite = CatchSprite(#PB_Any, ?Piece20Cts):\x = 352:\y = 47:\Largeur = 106:\Hauteur = 106:\Valeur = 20:\Type = Centime
AddElement(Piece())
\Sprite = CatchSprite(#PB_Any, ?Piece20Cts):\x = 352:\y = 94:\Largeur = 106:\Hauteur = 106:\Valeur = 20:\Type = Centime
AddElement(Piece())
\Sprite = CatchSprite(#PB_Any, ?Piece20Cts):\x = 352:\y = 141:\Largeur = 106:\Hauteur = 106:\Valeur = 20:\Type = Centime
;4 pièces de 10 centimes
AddElement(Piece())
\Sprite = CatchSprite(#PB_Any, ?Piece10Cts):\x = 461:\y = 0:\Largeur = 94:\Hauteur = 94:\Valeur = 10:\Type = Centime
AddElement(Piece())
\Sprite = CatchSprite(#PB_Any, ?Piece10Cts):\x = 461:\y = 44.5:\Largeur = 94:\Hauteur = 94:\Valeur = 10:\Type = Centime
AddElement(Piece())
\Sprite = CatchSprite(#PB_Any, ?Piece10Cts):\x = 461:\y = 89:\Largeur = 94:\Hauteur = 94:\Valeur = 10:\Type = Centime
AddElement(Piece())
\Sprite = CatchSprite(#PB_Any, ?Piece10Cts):\x = 461:\y = 133.5:\Largeur = 94:\Hauteur = 94:\Valeur = 10:\Type = Centime
;4 pièces de 5 centimes
AddElement(Piece())
\Sprite = CatchSprite(#PB_Any, ?Piece5Cts):\x = 561:\y = 0:\Largeur = 102:\Hauteur = 104:\Valeur = 5:\Type = Centime
AddElement(Piece())
\Sprite = CatchSprite(#PB_Any, ?Piece5Cts):\x = 561:\y = 39.5:\Largeur = 102:\Hauteur = 104:\Valeur = 5:\Type = Centime
AddElement(Piece())
\Sprite = CatchSprite(#PB_Any, ?Piece5Cts):\x = 561:\y = 79:\Largeur = 102:\Hauteur = 104:\Valeur = 5:\Type = Centime
AddElement(Piece())
\Sprite = CatchSprite(#PB_Any, ?Piece5Cts):\x = 561:\y = 118.5:\Largeur = 102:\Hauteur = 104:\Valeur = 5:\Type = Centime
;4 pièces de 2 centimes
AddElement(Piece())
\Sprite = CatchSprite(#PB_Any, ?Piece2Cts):\x = 666.5:\y = 0:\Largeur = 84:\Hauteur = 84:\Valeur = 2:\Type = Centime
AddElement(Piece())
\Sprite = CatchSprite(#PB_Any, ?Piece2Cts):\x = 666.5:\y = 37.5:\Largeur = 84:\Hauteur = 84:\Valeur = 2:\Type = Centime
AddElement(Piece())
\Sprite = CatchSprite(#PB_Any, ?Piece2Cts):\x = 666.5:\y = 75:\Largeur = 84:\Hauteur = 84:\Valeur = 2:\Type = Centime
AddElement(Piece())
\Sprite = CatchSprite(#PB_Any, ?Piece2Cts):\x = 666.5:\y = 112.5:\Largeur = 84:\Hauteur = 84:\Valeur = 2:\Type = Centime
;4 pièces de 1 centime
AddElement(Piece())
\Sprite = CatchSprite(#PB_Any, ?Piece1Ct):\x = 762:\y = 0:\Largeur = 76:\Hauteur = 76:\Valeur = 1:\Type = Centime
AddElement(Piece())
\Sprite = CatchSprite(#PB_Any, ?Piece1Ct):\x = 762:\y = 27:\Largeur = 76:\Hauteur = 76:\Valeur = 1:\Type = Centime
AddElement(Piece())
\Sprite = CatchSprite(#PB_Any, ?Piece1Ct):\x = 762:\y = 54:\Largeur = 76:\Hauteur = 76:\Valeur = 1:\Type = Centime
AddElement(Piece())
\Sprite = CatchSprite(#PB_Any, ?Piece1Ct):\x = 762:\y = 81:\Largeur = 76:\Hauteur = 76:\Valeur = 1:\Type = Centime
EndWith
CopyList(Piece(), PieceBis())
ForEach Piece()
With Piece()
TransparentSpriteColor(\Sprite, $FF00FF)
EndWith
Next
;- boucle
Repeat
Repeat : Until WindowEvent() = 0
;{ Affichage des sprites
;Dessiner le tapis
DisplaySprite(Fond_principal, 0, 0)
;Affichage du bouton niveau 1
DisplaySprite(N1, 860, 10)
;Affichage du bouton niveau 2
DisplaySprite(N2, 860, 70)
;Affichage du bouton niveau 3
DisplaySprite(N3, 860, 130)
;Affichage du bouton niveau 4
DisplaySprite(N4, 860, 190)
;Affichage du bouton niveau 5
DisplaySprite(N5, 860, 250)
;Affichage du bouton niveau 6
DisplaySprite(N6, 860, 310)
;affichage du bouton valider
DisplayTransparentSprite(Valider, 860, 430)
;affichage de la zone de score
DisplaySprite(zoneScore, 850, 650)
;affichage de la zone de rassemblage
DisplayTransparentSprite(ZoneRassemblage, 0, 270)
Select Niveau
Case 4 To 6
DisplayTransparentSprite(Cadeau, 300, 550)
EndSelect
;Affichage des piéces
AfficherMonnaie()
;Affichage de la souris en dernier
DisplayTransparentSprite(Mouse, MouseX(), MouseY())
;}
;Evénements clavier
If ExamineKeyboard()
EndIf
;Evénements souris
If ExamineMouse()
If MouseButton(#PB_MouseButton_Left)
mousePress = #True
Else
mousePress = #False
EndIf
;Test de collision entre la souris et le bouton valider
If Bool(MouseX() >= 860 And MouseX() <= 1020) And Bool(MouseY() >= 430 And MouseY() <= 480) And mousePress = #True
Select Niveau
Case 1, 4
If MontantEuros * 100 = totalValeursComptees
CopyList(PieceBis(), Piece())
EndIf
Case 2, 5
If MontantCts = totalValeursComptees
CopyList(PieceBis(), Piece())
EndIf
Case 3, 6
If MontantEuros * 100 + MontantCts = totalValeursComptees
CopyList(PieceBis(), Piece())
EndIf
EndSelect
StartDrawing(SpriteOutput(zoneScore))
AfficherPoints()
StopDrawing()
Delay(500)
StartDrawing(SpriteOutput(Fond_principal))
InitMontant()
StopDrawing()
EndIf
;Test de collision entre la souris et le bouton niveau 1
If Bool(MouseX() >= 860 And MouseX() <= 990) And Bool(MouseY() >= 10 And MouseY() <= 60) And mousePress = #True
Delay(500)
Niveau = 1
MontantEuros = 0
MontantCts = 0
StartDrawing(SpriteOutput(Fond_principal))
InitMontant()
StopDrawing()
EndIf
;Test de collision entre la souris et le bouton niveau 2
If Bool(MouseX() >= 860 And MouseX() <= 990) And Bool(MouseY() >= 70 And MouseY() <= 120) And mousePress = #True
Delay(500)
Niveau = 2
MontantEuros = 0
MontantCts = 0
StartDrawing(SpriteOutput(Fond_principal))
InitMontant()
StopDrawing()
EndIf
;Test de collision entre la souris et le bouton niveau 3
If Bool(MouseX() >= 860 And MouseX() <= 990) And Bool(MouseY() >= 130 And MouseY() <= 180) And mousePress = #True
Delay(500)
Niveau = 3
MontantEuros = 0
MontantCts = 0
StartDrawing(SpriteOutput(Fond_principal))
InitMontant()
StopDrawing()
EndIf
;Test de collision entre la souris et le bouton niveau 4
If Bool(MouseX() >= 860 And MouseX() <= 990) And Bool(MouseY() >= 200 And MouseY() <= 240) And mousePress = #True
Delay(500)
Niveau = 4
MontantEuros = 0
MontantCts = 0
StartDrawing(SpriteOutput(Fond_principal))
InitMontant()
StopDrawing()
EndIf
;Test de collision entre la souris et le bouton niveau 5
If Bool(MouseX() >= 860 And MouseX() <= 990) And Bool(MouseY() >= 260 And MouseY() <= 300) And mousePress = #True
Delay(500)
Niveau = 5
MontantEuros = 0
MontantCts = 0
StartDrawing(SpriteOutput(Fond_principal))
InitMontant()
StopDrawing()
EndIf
;Test de collision entre la souris et le bouton niveau 6
If Bool(MouseX() >= 860 And MouseX() <= 990) And Bool(MouseY() >= 320 And MouseY() <= 360) And mousePress = #True
Delay(500)
Niveau = 6
MontantEuros = 0
MontantCts = 0
StartDrawing(SpriteOutput(Fond_principal))
InitMontant()
StopDrawing()
EndIf
EndIf ;ExamineMouse()
;Test collision entre souris et piéces
totalValeursComptees=0
ForEach Piece()
With Piece()
If SpriteCollision(Mouse, MouseX(), MouseY(), \Sprite, \x, \y) And mousePress = #True
\x = MouseX() - \Largeur/2
\y = MouseY() - \Hauteur/2
Break
EndIf
If mousePress= #False
If \x <840 And \y > 440
totalValeursComptees + (\Valeur)
EndIf
EndIf
EndWith
Next
StartDrawing(SpriteOutput(ZoneRassemblage))
AfficherMontant()
StopDrawing()
FlipBuffers()
Until KeyboardReleased(#PB_Key_Escape)
EndProcedure
principale()
DataSection
Piece2Euros:
IncludeBinary #Chemin + "2 EUROS.png"
Piece1Euro:
IncludeBinary #Chemin + "1 EURO.png"
Piece50Cts:
IncludeBinary #Chemin + "50 CTS.png"
Piece20Cts:
IncludeBinary #Chemin + "20 CTS.png"
Piece10Cts:
IncludeBinary #Chemin + "10 CTS.png"
Piece5Cts:
IncludeBinary #Chemin + "5 CTS.png"
Piece2Cts:
IncludeBinary #Chemin + "2 CTS.png"
Piece1Ct:
IncludeBinary #Chemin + "1 CT.png"
Fond:
IncludeBinary #Chemin + "Ecran principal.png"
Cadeau:
IncludeBinary #Chemin + "Cadeau.png"
EndDataSection