Besoin de votre avis sur un jeu .bat

Fermé
Jordan Lie - Modifié le 26 oct. 2017 à 21:44
Eudjen81 Messages postés 3 Date d'inscription samedi 2 décembre 2017 Statut Membre Dernière intervention 3 décembre 2017 - 3 déc. 2017 à 01:34
Bonjour,
Bonjour à tous,

J'ai créé il n'y a pas si longtemps un jeu en .bat, je sais que ce language n'est plus trop utlisé mais je m'ennuyais quand j'ai fait ça ^^

J'aimerai que ceux qui souhaite le télécharge, il y a un lien si dessous.

Petite précision:

- Pour le moment seul la difficulté facile est disponible (j'attend votre avis pour savoir si je continue)

- Les règles du jeu sont écrites dans un fichier txt à l'intérieur du .rar

- En ce qui concerne ce que j'attend suite à ce post se serait que certains d'entre vous me donne leur avis, ce que je pourrais améliorer dans le jeu mais aussi les bugs si jamais vous en trouvez (rien ne vous empêche d'analyser le code en faisant clic droit > modifier sur le fichier .bat)

- Le lien de téléchargement étant gratuit il faut attendre 1 minute avant de pouvoir le télécharger

- Le lien: http://www.sendbox.fr/b671306204c82101/Pyramide.rar

Voila merci beaucoup à ceux qui prendront le temps de télécharger mon petit jeu, au revoir.


A voir également:

4 réponses

barnabe0057 Messages postés 14440 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 19 avril 2024 4 908
26 oct. 2017 à 22:36
Bonsoir,

Voilà quelques remarques :

- ton code n'est pas du tout optimisé, beaucoup de lignes en double, triple, quadruple, ...

- après avoir choisi et confirmé la difficulté, si on reste appuyé sur la touche entrée, le script continue comme si de rien n'était

0
Très bien je vois, as-tu des idées pour optimiser le code ? (des choses à changer etc...)

En ce qui concerne le bug je pense qu'il n'y a pas trop de moyen pour le résoudre :/
0
barnabe0057 Messages postés 14440 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 19 avril 2024 4 908
27 oct. 2017 à 05:34
Je te tiens au courant ce soir.
0
D'accord merci
0
barnabe0057 Messages postés 14440 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 19 avril 2024 4 908 > Jordan Lie
27 oct. 2017 à 22:44
CALL est très utile pour créer des fonctions paramétrées, ça évite les répétitions de code.

J'avance bien mais il y a encore un peu de travail, je te dis à demain.
0
Okay, je ne connaissais pas la fonction CALL, merci.
0
barnabe0057 Messages postés 14440 Date d'inscription lundi 2 mars 2009 Statut Contributeur Dernière intervention 19 avril 2024 4 908 > Jordan Lie
Modifié le 28 oct. 2017 à 14:20
Voilà où j'en suis :

@echo off
title %~n0
SETLOCAL EnableExtensions EnableDelayedExpansion

set fichier=2mememot.txt


:Commencement

REM Set variable de départ

set /A score=0
set /A erreur=0
set "difficulte="
CLS


REM Menu

echo Pyramide !
echo Niveau de difficulte:
echo 1: Facile (5 indices)
echo 2: Normale (4 indices)
echo 3: Difficile (3 indices)
echo 4: Quitter le jeu
echo.

echo. > %fichier%

Set /P difficulte= Entrez le numero de difficulte ^(1, 2 ou 3^) ou 4 pour quitter:


REM Direction vers le niveau/exit

if !difficulte! EQU 1 (
set /P suretelvl=Etes-vous certain de choisir la difficulté facile ? ^(oui ou non^)
if /i @!suretelvl!@==@oui@ (goto :facile)
)

if !difficulte! EQU 2 (
set /P suretelvl= Etes-vous certain de choisir la difficulté normale ? ^(oui ou non^)
if /i @!suretelvl!@==@oui@ (goto :normal)
)

if !difficulte! EQU 3 (
set /P suretelvl= Etes-vous certain de choisir la difficulté difficile ? ^(oui ou non^)
if /i @!suretelvl!@==@oui@ (goto :difficile)
)

if !difficulte! EQU 4 (
set /P suretelvl= Etes-vous certain de vouloir quitter le jeu ? ^(oui ou non^)
if /i @!suretelvl!@==@oui@ (goto :eof)
)

goto :Commencement


REM Niveau facile

:facile


REM Verification du score (=5)

:verifscore

If !score! EQU 5 (

CLS
echo.
echo Bien joue !
echo Tu as gagne 5 points
echo Avec !erreur! erreurs
echo.
echo Retour au menu principal...
echo.
pause
del /F /Q %fichier%
goto :Commencement

)



REM Verification si tous les mots ont été utilisés

:veriftoutlesmots

set gameover=1

for %%A in (a b c d e f g h i j) do (findstr /i /c:"%%A" %fichier% || set gameover=0)

if !gameover! EQU 1 (

CLS
echo.
echo.
echo Tu as perdu
echo Tous les mots ont ete
echo utilises
echo.
echo.
echo Tu feras mieux
echo La prochaine fois ^^!
echo.
echo Ton score: !score!
pause
del /F /Q %fichier%
goto :Commencement

)



:nbrandomfacile

REM Nombre aléatoire

set /A max=10,min=1

set /A rand=%random%
set /A _max=(max-min)+1
set /A mod=%rand%%%_max%
set /A mot=!mod!+min



REM Vérification deux mêmes mots

:verif2mememot

If !mot! EQU 1 (findstr /i /c:"a" %fichier% && goto :nbrandomfacile)

If !mot! EQU 2 (findstr /i /c:"b" %fichier% && goto :nbrandomfacile)

If !mot! EQU 3 (findstr /i /c:"c" %fichier% && goto :nbrandomfacile)

If !mot! EQU 4 (findstr /i /c:"d" %fichier% && goto :nbrandomfacile)

If !mot! EQU 5 (findstr /i /c:"e" %fichier% && goto :nbrandomfacile)

If !mot! EQU 6 (findstr /i /c:"f" %fichier% && goto :nbrandomfacile)

If !mot! EQU 7 (findstr /i /c:"g" %fichier% && goto :nbrandomfacile)

If !mot! EQU 8 (findstr /i /c:"h" %fichier% && goto :nbrandomfacile)

If !mot! EQU 9 (findstr /i /c:"i" %fichier% && goto :nbrandomfacile)

If !mot! EQU 10 (findstr /i /c:"j" %fichier% && goto :nbrandomfacile)



REM mot 1 (béton, valeur fichier externe: a)
If !mot! EQU 1 (call :jeu Beton Matiere Solide Construction Murs Portugais a)


REM mot 2 (légende, valeur fichier externe: b)
If !mot! EQU 2 (call :jeu Legende Imaginaire Creatures Moyen-age Thor Dragon b)


REM mot 3 (Micro, valeur fichier externe: c)
If !mot! EQU 3 (call :jeu Micro Chant Amplificateur "Prise jack" Parler Skype c)


REM mot 4 (Agenda, valeur fichier externe: d)
If !mot! EQU 4 (call :jeu Agenda Affaire Cours Noter Travail Devoirs d)


REM mot 5 (Ordinateur, valeur fichier externe: e)
If !mot! EQU 5 (call :jeu Ordinateur Bureautique Informatique Clavier Souris Gaming e)


REM mot 6 (Télévision, valeur fichier externe: f)
If !mot! EQU 6 (call :jeu Television Divertissement Salon Ecran Regarder Dessin-anime f)


REM mot 7 (Chat, valeur fichier externe: g)
If !mot! EQU 7 (call :jeu Chat Animal Felin Domestique Moustache Coussinet g)


REM mot 8 (Hamburger, valeur fichier externe: h)
If !mot! EQU 8 (call :jeu Hamburger Nourriture Fast-food Pain Steack "Graine de tournesol" h)


REM mot 9 (Jaune, valeur fichier externe: i)
If !mot! EQU 9 (call :jeu Jaune Poussin Banane Eponge Couleur Soleil i)


REM mot 10 (Voiture, valeur fichier externe: j)
If !mot! EQU 10 (call :jeu Voiture Roule Volant Pneus Pare-brise Essuie-glace j)

goto :veriftoutlesmots


:normal

echo normal

pause
exit /B


:difficile

echo difficile

pause
exit /B



:jeu

CLS
title %~n0 - Ton score : # !score! #
echo.
echo.
echo Indice 1: %~2
echo.
echo.
call :check %~1 %7
if !retour! EQU 1 (goto :eof)

cls & echo Non ^^!
set /A erreur+=1
echo.
echo.
echo Indice 2: %~3
echo.
echo.
call :check %~1 %7
if !retour! EQU 1 (goto :eof)

cls & echo Non ^^!
set /A erreur+=1
echo.
echo.
echo Indice 3: %~4
echo.
echo.
call :check %~1 %7
if !retour! EQU 1 (goto :eof)

cls & echo Non ^^!
set /A erreur+=1
echo.
echo.
echo Indice 4: %~5
echo.
echo.
call :check %~1 %7
if !retour! EQU 1 (goto :eof)

cls & echo Non ^^!
set /A erreur+=1
echo.
echo.
echo Indice 5: %~6
echo.
echo.
call :check %~1 %7
if !retour! EQU 1 (goto :eof)

cls & echo. & echo Perdu =/
set /A score-=1
title %~n0 - Ton score : # !score! #
echo.
echo Le mot: %1
echo. & pause
echo %7 >> %fichier%
Set /A erreur+=1
CLS
goto :verifscore

goto :eof



:check
set retour=0
set "reponse="
set /P "reponse= Le mot ? "
if /i @!reponse!@==@%1@ (

cls & echo. & echo Bravo ^^! Le mot etait bien '%1'
set /A score+=1
echo. & pause
echo %2 >> %fichier%
set retour=1

)

goto :eof

rem

J'ai pas mal optimisé mais on peut toujours faire mieux.

Je pense pouvoir réduire encore de 30%, enfin si je trouve le temps.
0
kaumune Messages postés 22361 Date d'inscription lundi 26 novembre 2007 Statut Contributeur Dernière intervention 22 avril 2024 5 034
27 oct. 2017 à 06:20
Slt

Pourquoi le fournis-tu en .rar au lieu d'un simple .zip ?

Ça oblige à avoir un logiciel supplémentaire (winrar, 7zip etc etc) pour l'extraire
0
Salut kaumune,

C'est var il y a 2 dossiers, un .bat et un .txt pour les règles et les précisions utiles.
0
Judge_DT Messages postés 29395 Date d'inscription vendredi 5 février 2010 Statut Modérateur Dernière intervention 23 octobre 2021 9 619
27 oct. 2017 à 13:46
Sauf que ça ne réponds pas réellement à la question : pourquoi le fournir dans un conteneur compressé en .rar (propriétaire, propre à Winrar à la base) à la place d'un conteneur en .zip, qui est nativement supporté par les versions récentes de Windows ?

Pour décompresser une archive en RAR, il faut un logiciel... Pour ouvrir une archive en zip, les versions modernes de Windows peuvent le faire sans logiciel complémentaire...
0
Ah je ne savais pas, à l'avenir je penserai à fournir mes programmes avec un fichier .zip

Merci beaucoup
0
Eudjen81 Messages postés 3 Date d'inscription samedi 2 décembre 2017 Statut Membre Dernière intervention 3 décembre 2017 > Jordan Lie
3 déc. 2017 à 01:34
Salut Jordan Lie , je vais faire une version en python du jeu le plus tôt possible et je te conseille de compiler le code avec le logiciel "Batch to exe Computer"
Bien utile quand tu dev en batch
0