Je débute en programmation alors j'ai fait un petit "jeu" tout simple, le fameux pierre papier ciseaux.
Il fonctionne plutôt bien, mais je rencontre quelques petits soucis que je ne sais pas comment arranger.
- Je voudrais afficher les scores dans un textgadget, sauf que l'affichage de la variable reste toujours à 0 ?
- Lorsque j'affiche la deuxième variable du score, cela ne fait que déplacer l'autre.
- Lorsque dans les messagerequester je retire le logo info, cela décale le texte sur la gauche, ce qui me paraît inesthétique. Y-a-il un moyen pour centrer ?
Merci à tous
Voici mon petit code :
Code : Tout sélectionner
;EnableExplicit
Enumeration
#Fenetre
#Texte
#Pierre
#Papier
#Ciseaux
#Partie
EndEnumeration
Global Event
Global Points
Global Adversaire
Global Mes_Points
Global Ses_points
Global Texte.s = "Salut ! Tu veux jouer avec moi ? :) On va en 3 points"
;==================================================================================
Procedure Partie()
; PIERRE
Adversaire = Random(3,1)
Select EventGadget()
Case #Pierre
Select Adversaire
Case 1
MessageRequester(" . . . . Choix . . . ."," ♥ Pierre ♥ ")
Case 2
MessageRequester(" . . . . Choix . . . ."," ♥ Papier ♥ ")
Ses_Points +1
Case 3
MessageRequester(" . . . . Choix . . . ."," ♥ Ciseaux ♥ ")
Mes_points +1
EndSelect
; PAPIER
Case #Papier
Select Adversaire
Case 1
MessageRequester(" . . . . Choix . . . ."," ♥ Pierre ♥")
Mes_Points +1
Case 2
MessageRequester(" . . . . Choix . . . ."," ♥ Papier ♥ ")
Case 3
MessageRequester(" . . . . Choix . . . ."," ♥ Ciseaux ♥ ")
ses_points +1
EndSelect
; CISEAUX
Case #Ciseaux
Select Adversaire
Case 1
MessageRequester(" . . . . Choix . . . ."," ♥ Pierre ♥ ")
Ses_Points +1
Case 2
MessageRequester(" . . . . Choix . . . ."," ♥ Papier ♥")
Mes_Points +1
Case 3
MessageRequester(" . . . . Choix . . . ."," ♥ Ciseaux ♥ ")
EndSelect
EndSelect
If Mes_Points = 3
MessageRequester("Felicitations","Bravo, tu as gagné ! :D",#PB_MessageRequester_Warning)
End
EndIf
If Ses_points = 3
MessageRequester("Dommage","Oh, tu as perdu... :(",#PB_MessageRequester_Warning)
End
EndIf
EndProcedure
;==================================================================================
Procedure Fenetre()
If OpenWindow(#Fenetre, 0, 0, 250, 250, "Jeu Pierre Papier Ciseaux V1", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
TextGadget(#Texte,10,10,240, 30,Texte)
TextGadget(Ses_points,50,60,240,30, Str(Ses_points))
;TextGadget(Mes_points,6,5,5,30, Str(Mes_points))
ButtonGadget(#Pierre, 10,100,230 ,20,"Pierre")
ButtonGadget(#Papier, 10,130,230 ,20,"Papier")
ButtonGadget(#Ciseaux, 10,160,230 ,20,"Ciseaux")
BindGadgetEvent(#Pierre, @Partie())
BindGadgetEvent(#Papier, @Partie())
BindGadgetEvent(#Ciseaux, @Partie())
EndIf
EndProcedure
Fenetre()
Repeat
Event = WaitWindowEvent()
Until Event = #PB_Event_CloseWindow
End