Salut,

Je fais un jeu du + ou moins, mais j'ai un soucis, j'instaure des niveaux de difficultés, donc je met des if et des set, et des echo.
Mais ca pose problème:
je n'ai pas mis @echo on pour plus de visibilité (je tiens à préciser que ça fait environ 1-2h que j'ai commencé à apprendre le batch, desolé si il y a des notions que je ne comprends pas.)

script:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
:again
echo Bienvenue dans le jeu du + ou moins ! Entre ton niveau de difficulté !
set /p niveau=1 pour facile, 2 pour difficile, 3 pour impossible: 

if niveau EQU 1 (set /a secret=%random% %% 100 + 1
	echo Chiffre entre 1 et 100, 10 chances)
if niveau EQU 2 (set /a secret=%random% %% 1000 + 1
	echo Chiffre entre 1 et 1000, 25 chances)
if niveau EQU 3 (set /a secret=%random% %% 10000 + 1
	echo Chiffre entre 1 et 10000, 50 chances)

echo %secret%

set tentative=0

:essai
if tentative == 10 (if niveau == 1 (goto perdu))
if tentative == 25 (if niveau == 2 (goto perdu))
if tentative == 50 (if niveau == 3 (goto perdu))

set /p nombre=

if %nombre% LSS %secret% (echo PLUS !
	goto :essai
	set /a tentative = %tentative% + 1)
if %nombre% GTR %secret% (echo MOINS !
	goto :essai
	set /a tentative = %tentative% + 1)
if %nombre% == %secret% (echo Bravo, c'etait bien %secret%, bien joue !
	goto :gagne)

:gagne
echo.
echo Tu veux rejouer ?
set /p encore=1 si oui, 0 si non: 
if %encore% == 1 (cls 
	goto again)
echo D'accord ! Merci d'avoir joue !
pause

:perdu
echo.
echo Tu as epuise toutes tes chances le nombre etait %secret%, essaye un niveau de difficulte plus faible !
echo Tu veux rejouer ?
set /p encore=1 si oui, 0 si non: 
if %encore% == 1 (cls 
	goto again)
echo D'accord ! Merci d'avoir joue !
pause
log:
C:\Users\PC-HP\Desktop>echo Bienvenue dans le jeu du + ou moins ! Entre ton nive
au de difficult├® !
Bienvenue dans le jeu du + ou moins ! Entre ton niveau de difficult├® !

C:\Users\PC-HP\Desktop>set /p niveau=1 pour facile, 2 pour difficile, 3 pour imp
ossible:
1 pour facile, 2 pour difficile, 3 pour impossible: 2

C:\Users\PC-HP\Desktop>if niveau EQU 1 (
set /a secret=22467 % 100 + 1
echo Chiffre entre 1 et 100, 10 chances
)

C:\Users\PC-HP\Desktop>if niveau EQU 2 (
set /a secret=13642 % 1000 + 1
echo Chiffre entre 1 et 1000, 25 chances
)

C:\Users\PC-HP\Desktop>if niveau EQU 3 (
set /a secret=19091 % 10000 + 1
echo Chiffre entre 1 et 10000, 50 chances
)

C:\Users\PC-HP\Desktop>echo
Commande ECHO activée.

C:\Users\PC-HP\Desktop>set tentative=0

C:\Users\PC-HP\Desktop>if tentative == 10 (if niveau == 1 (goto perdu ) )

C:\Users\PC-HP\Desktop>if tentative == 25 (if niveau == 2 (goto perdu ) )

C:\Users\PC-HP\Desktop>if tentative == 50 (if niveau == 3 (goto perdu ) )

C:\Users\PC-HP\Desktop>set /p nombre=
3

C:\Users\PC-HP\Desktop>if 3 LSS (echo PLUS !

C:\Users\PC-HP\Desktop>goto :essai

C:\Users\PC-HP\Desktop>if tentative == 10 (if niveau == 1 (goto perdu ) )

C:\Users\PC-HP\Desktop>if tentative == 25 (if niveau == 2 (goto perdu ) )

C:\Users\PC-HP\Desktop>if tentative == 50 (if niveau == 3 (goto perdu ) )

C:\Users\PC-HP\Desktop>set /p nombre=
On peut voir que ça bug lorsque je lui demande d'affichier la variable secret, je suppose que c'est parce que j'ai initialisé une variable dans un if, mais je ne sais pas comment corrigé ça.

Dans la console, je tape respectivement: 2, puis 3

Merci pour votre aide !