Le Pendu Batch

swadow Messages postés 57 Statut Membre -  
swadow Messages postés 57 Statut Membre -
bonjour je suis en train de faire un jeu en batch et je cherches plusieurs choses je me demandais si il était possible selon le nombre de caractères d'afficher le même nombre mais en * et aussi de changer les * par les bons caractères et dans le bon ordre ?
si cela vous intéresse voici mon code pour le moment :

:0
title Le pendu 2 joueurs
cls
echo ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
echo ºLe Pendu 2 Joueursº
echo ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
ping localhost -n 2 > nul
:lependu2j
echo S'il vous plait ne mettez pas de Majuscules pour plus de facilit'.
echo quel sera le mot a trouver ?
set /p pendu2j1=:
cls
:: calcul du nombre de lettres
for /f "tokens=1,* delims=[,]" %%A in ('"%comspec% /u /c echo:%pendu2j1%|more|find /n /v """') do set /a pendu2jnblettres1=%%A-4
:: fin du calcul
echo ce mot contient %pendu2jnblettres1% lettres.
::mettre un certain nombre d'étoile dépendant du nombre de lettres
::qui seront remplacés par les caractères trouvés

echo donnez 1 lettre ou le mot:
set /p lependulettreoumot1=:
:: calcul du nombre de lettres
for /f "tokens=1,* delims=[,]" %%A in ('"%comspec% /u /c echo:%lependulettreoumot1%|more|find /n /v """') do set /a pendu2jnblettres2=%%A-4
:: fin du calcul
if %pendu2jnblettres2% EQU 1 goto lependu2jlettre
if %pendu2jnblettres2% NEQ 1 goto lependu2jmot1
:lependue2jlettre

:lependu2jmot1
if %lependulettreoumot1% EQU %pendu2j1% goto lependu2jmot2
if %lependulettreoumot1% NEQ %pendu2j1% goto lependu2jmot3

:lependu2jmot2
echo bonne réponse
pause
goto 0

:lependu2jmot3
echo mauvaise réponse
pause
goto lependu2j
et si j'ai mis des variables aussi longues c'est parce que je compte réunir les différents jeux que je ferais dans un même fichier et comme ça il n'y aura pas de conflits entre les variables des différents jeux.
Merci d'avance pour votre aide et j'espère que j'ai été assez précis sinon dites le moi ;-)
A voir également:

3 réponses

Utilisateur anonyme
 
Bonjour,

Tu utilises un très mauvais outil pour faire ton jeu, car les fichiers batch ne sont pas du tout faits pour faire des applications complètes mais des scripts qui appellent différentes commandes. Oui on pourrait envisager de le faire mais je trouve que c'est une prise de tête totalement inutile.

Je te conseille d'envisager un véritable langage de programmation. Tu peux par exemple aller voir du coté du langage BASIC ou Python, excellent pour débuter mais suffisamment puissant pour créer de véritables programmes et on trouve pas mal d'infos sur le net.
0
swadow Messages postés 57 Statut Membre
 
oui tu a raison sur le fait que c'est pas un langage approprié pour faire un jeu mais disons que je n'ai pas vraiment le temps d'en apprendre d'autre car je dois l'avoir fini pour dans 3 semaines car après je ne vois plus le professeur a qui je dois le rendre :-)
et merci pour ta réponse
0
Utilisateur anonyme
 
Quoi c'est un prof qui t'a demandé de faire ça en batch ou quoi? Mais alors c'est lui qui devrait se renseigner un peu :-)
0
swadow Messages postés 57 Statut Membre
 
en fait on devait faire un projet et puisque moi je ne connais que le language batch et que je voulais faire une petite compilation de jeux je me suis dit pourquoi pas donc je suis parti sur cette idée la et mon prof ne s'y connait pas trop en batch :-p
0
swadow Messages postés 57 Statut Membre
 
bon j'ai trouvé comment tester si une lettre ou d'un chaine de caractères est dans une variable, voila la ligne:
echo %var% | find "abc" > nul && echo ok
0