[Batch] Necesito ayuda con este .bat

Iniciado por Adrex, 13 Abril 2014, 19:08 PM

0 Miembros y 1 Visitante están viendo este tema.

Adrex

Hola! antes de de nada decir que soy nuevo el el foro y en el tema relacionado con batch.

Bueno estoy haciendo el juego de las 3 en raya en batch, ya se que hay muchos por ahí pero me gustaría tener el mio propio. hasta ahora llevo esto:

Código (DOS) [Seleccionar]
@ECHO OFF
ECHO.
ECHO.
ECHO  ----------------------
ECHO  ---- TRES EN RAYA ----
ECHO  ----------------------
ECHO.
ECHO.
SET /P J1= NOMBRE DEL JUGADOR 1:
ECHO.
SET /P J2= NOMBRE DEL JUGADOR 2:
ECHO.
ECHO %J1% ES X
ECHO.
ECHO %J2% ES O
ECHO.
PAUSE
SET A=1
SET B=2
SET C=3
SET D=4
SET E=5
SET F=6
SET G=7
SET H=8
SET I=9
:MENU
CLS
ECHO.
ECHO                     ===============
ECHO                     =  %A%   %B%   %C%  =
ECHO                     =  %D%   %E%   %F%  =
ECHO                     =  %G%   %H%   %I%  =
ECHO                     ===============
ECHO.
ECHO.

IF %A%%B%%C% == XXX GOTO GANA_J1
IF %D%%E%%F% == XXX GOTO GANA_J1
IF %G%%H%%I% == XXX GOTO GANA_J1
IF %A%%D%%G% == XXX GOTO GANA_J1
IF %B%%E%%H% == XXX GOTO GANA_J1
IF %C%%F%%I% == XXX GOTO GANA_J1
IF %A%%E%%I% == XXX GOTO GANA_J1
IF %G%%E%%C% == XXX GOTO GANA_J1

IF %A%%B%%C% == OOO GOTO GANA_J2
IF %D%%E%%F% == OOO GOTO GANA_J2
IF %G%%H%%I% == OOO GOTO GANA_J2
IF %A%%D%%G% == OOO GOTO GANA_J2
IF %B%%E%%H% == OOO GOTO GANA_J2
IF %C%%F%%I% == OOO GOTO GANA_J2
IF %A%%E%%I% == OOO GOTO GANA_J2
IF %G%%E%%C% == OOO GOTO GANA_J2
ECHO ES EL TURNO DE %J1%
ECHO.
SET /P PRE= elige UN NUMERO:
IF %PRE% == 1 SET A=X
IF %PRE% == 2 SET B=X
IF %PRE% == 3 SET C=X
IF %PRE% == 4 SET D=X
IF %PRE% == 5 SET E=X
IF %PRE% == 6 SET F=X
IF %PRE% == 7 SET G=X
IF %PRE% == 8 SET H=X
IF %PRE% == 9 SET I=X
CLS
ECHO.
ECHO                     ===============
ECHO                     =  %A%   %B%   %C%  =
ECHO                     =  %D%   %E%   %F%  =
ECHO                     =  %G%   %H%   %I%  =
ECHO                     ===============
ECHO.
ECHO.

IF %A%%B%%C% == XXX GOTO GANA_J1
IF %D%%E%%F% == XXX GOTO GANA_J1
IF %G%%H%%I% == XXX GOTO GANA_J1
IF %A%%D%%G% == XXX GOTO GANA_J1
IF %B%%E%%H% == XXX GOTO GANA_J1
IF %C%%F%%I% == XXX GOTO GANA_J1
IF %A%%E%%I% == XXX GOTO GANA_J1
IF %G%%E%%C% == XXX GOTO GANA_J1

IF %A%%B%%C% == OOO GOTO GANA_J2
IF %D%%E%%F% == OOO GOTO GANA_J2
IF %G%%H%%I% == OOO GOTO GANA_J2
IF %A%%D%%G% == OOO GOTO GANA_J2
IF %B%%E%%H% == OOO GOTO GANA_J2
IF %C%%F%%I% == OOO GOTO GANA_J2
IF %A%%E%%I% == OOO GOTO GANA_J2
IF %G%%E%%C% == OOO GOTO GANA_J2
ECHO ES EL TURNO DE %J2%
ECHO.
SET /P PRE= elige UN NUMERO:
IF %PRE% == 1 SET A=O
IF %PRE% == 2 SET B=O
IF %PRE% == 3 SET C=O
IF %PRE% == 4 SET D=O
IF %PRE% == 5 SET E=O
IF %PRE% == 6 SET F=O
IF %PRE% == 7 SET G=O
IF %PRE% == 8 SET H=O
IF %PRE% == 9 SET I=O
GOTO MENU

:GANA_JI
CLS
ECHO.
ECHO ENHORABUENA A GANADO %JI%
PAUSE

:GANA_J2
CLS
ECHO.
ECHO ENHORABUENA A GANADO %J2%
PAUSE


PAUSE


Bien ahora mis dudas surgen cuando por ejemplo: hay tablas que no se como ponerlo y también esta el problema de que cuando por ej: el jugador 1 establece 1 como X puede llegar el jugador 2 en su turno y cambiarlo por O no se si me explico con claridad.
Ante todo muchas gracias. Un saludo.