Jeu à deux joueurs avec fonction aléatoire

Bonjour à tous,

Je débute sous VBA, mais j'essaie de créer un jeu à deux joueurs où chacun lance le dé à tours de rôle.

De là le pion avance d'autant de case indiqué par le nombre aléatoire.

Mon problème réside dans la case active : lorsque le joueur_2 joue, son pion démarre de la dernière case activé (par le joueur_1) et non de la sienne. C'est-à-dire que le joueur_1 joue, son pion avance disons de deux cases, puis le joueur_2 lance le dé et il doit avancer de trois cases. Mais là, le pion du joueur_2 avance à compter de la case du joueur_1. Comment faire pour résoudre se problème? Que me manque t-il comme fonction ou ligne de code?

Je souhaiterai comprendre la logique (pour apprendre, car je débute).

D'avance je vous en remercie

Sub TirageUnDe()

Tirage1 = Int((6 * Rnd) + 1)

'Tirage1 = 1

Dim joueurs As Integer

For joueur_1 = 1 To 1

Call MessageTirage

Call ChercherCase

Call joueur_1

Call TestGage

Next

MsgBox "joueur_2 c'est à vous de jouer"

End Sub

Sub ChercherCase()

ValeurActuelle = ActiveCell.Value

ValeurObtenue = ValeurActuelle + Tirage1

ValeurRecherchee = ValeurActuelle + 1

Select Case ValeurObtenue

Case Is < 120

Do While ValeurRecherchee < ValeurObtenue

Range("A1:A19,B19,C19:C1,D1,E1:E19,F19,G19:G1,H1,I1:I19,J19,K19:K1,L1").Select

Selection.Find(What:=ValeurRecherchee, After:=ActiveCell, MatchCase:=True).Select

ValeurRecherchee = ValeurRecherchee + 1

Loop

Range("A1:A19,B19,C19:C1,D1,E1:E19,F19,G19:G1,H1,I1:I19,J19,K19:K1,L1").Select

Selection.Find(What:=ValeurObtenue, After:=ActiveCell, MatchCase:=True).Select

Case Is > 120

MsgBox "Vous devez rejouer pour tomber PILE sur le 120 !!", , "PRESQUE TERMINE", , "Mais attention de ne pas jouir avant, .... sinon vous perdez"

Case Is = 120

Range("A1:A19,B19,C19:C1,D1,E1:E19,F19,G19:G1,H1,I1:I19,J19,K19:K1,L1").Select

Do While ValeurRecherchee <= ValeurObtenue

Range("A1:A19,B19,C19:C1,D1,E1:E19,F19,G19:G1,H1,I1:I19,J19,K19:K1,L1").Select

Selection.Find(What:=ValeurRecherchee, After:=ActiveCell, MatchCase:=True).Select

ValeurRecherchee = ValeurRecherchee + 1

Loop

Selection.Find(What:=ValeurObtenue, After:=ActiveCell, MatchCase:=True).Select

MsgBox "Vous venez de gagner la partie, choisissez la manière dont vous souhaitez atteindre l'extase!"

End Select

End Sub

Bonjour,

C'est déjà pas facile de lire une macro quand elle n'est pas en BALISE

alors sans classeur pour se repérer

Bonjour M12

Ci-joint les deux modules crées. Je débute donc le code n'est sûrement pas écrit comme il se doit car j'apprends. Je commence par un petit jeu pour mes enfants passionnés de légo.

Merci de ton aide

Bonjour fr70,

Vu les phrases inclues dans le code VBA, ça a l'air d'être un jeu très olé olé !

c'est pour grimper au rideau ? ... ou au 7ème ciel ?

dhany

Rechercher des sujets similaires à "jeu deux joueurs fonction aleatoire"