Last active
September 21, 2024 06:39
-
-
Save faizul726/602bc5326a625e04e6d7d748c54deb96 to your computer and use it in GitHub Desktop.
TicTacToe made in batch. Still can't find winner tho... play using qwe, asd, zxc
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@echo off | |
:start | |
setlocal | |
title Tic Tac Toe in Command Prompt by faizul726 | |
set turn=0 | |
set "i=[ ]" | |
set "ii=[ ]" | |
set "iii=[ ]" | |
set "iv=[ ]" | |
set "v=[ ]" | |
set "vi=[ ]" | |
set "vii=[ ]" | |
set "viii=[ ]" | |
set "ix=[ ]" | |
set "x=[x]" | |
set "o=[o]" | |
:GAME | |
cls | |
echo Born on 20240921 | |
echo. | |
set errorlevel= | |
echo %i% %ii% %iii% | |
echo. | |
echo %iv% %v% %vi% | |
echo. | |
echo %vii% %viii% %ix% | |
echo. | |
echo. | |
if defined filled1 if defined filled2 if defined filled3 if defined filled4 if defined filled5 if defined filled6 if defined filled7 if defined filled8 if defined filled9 goto END | |
if %turn% equ 0 (echo [Your turn]) else (echo [Opponent's turn]) | |
echo. | |
echo. | |
choice /c qweasdzxc /n | |
if %errorlevel% equ 1 ( | |
if defined filled1 goto GAME | |
set filled1=1 | |
if %turn% equ 1 ( | |
set i=%o% | |
set turn=0 | |
goto GAME | |
) else ( | |
set i=%x% | |
set turn=1 | |
goto GAME | |
) | |
) | |
if %errorlevel% equ 2 ( | |
if defined filled2 goto GAME | |
set filled2=1 | |
if %turn% equ 1 ( | |
set ii=%o% | |
set turn=0 | |
goto GAME | |
) else ( | |
set ii=%x% | |
set turn=1 | |
goto GAME | |
) | |
) | |
if %errorlevel% equ 3 ( | |
if defined filled3 goto GAME | |
set filled3=1 | |
if %turn% equ 1 ( | |
set iii=%o% | |
set turn=0 | |
goto GAME | |
) else ( | |
set iii=%x% | |
set turn=1 | |
goto GAME | |
) | |
) | |
if %errorlevel% equ 4 ( | |
if defined filled4 goto GAME | |
set filled4=1 | |
if %turn% equ 1 ( | |
set iv=%o% | |
set turn=0 | |
goto GAME | |
) else ( | |
set iv=%x% | |
set turn=1 | |
goto GAME | |
) | |
) | |
if %errorlevel% equ 5 ( | |
if defined filled5 goto GAME | |
set filled5=1 | |
if %turn% equ 1 ( | |
set v=%o% | |
set turn=0 | |
goto GAME | |
) else ( | |
set v=%x% | |
set turn=1 | |
goto GAME | |
) | |
) | |
if %errorlevel% equ 6 ( | |
if defined filled6 goto GAME | |
set filled6=1 | |
if %turn% equ 1 ( | |
set vi=%o% | |
set turn=0 | |
goto GAME | |
) else ( | |
set vi=%x% | |
set turn=1 | |
goto GAME | |
) | |
) | |
if %errorlevel% equ 7 ( | |
if defined filled7 goto GAME | |
set filled7=1 | |
if %turn% equ 1 ( | |
set vii=%o% | |
set turn=0 | |
goto GAME | |
) else ( | |
set vii=%x% | |
set turn=1 | |
goto GAME | |
) | |
) | |
if %errorlevel% equ 8 ( | |
if defined filled8 goto GAME | |
set filled8=1 | |
if %turn% equ 1 ( | |
set viii=%o% | |
set turn=0 | |
goto GAME | |
) else ( | |
set viii=%x% | |
set turn=1 | |
goto GAME | |
) | |
) | |
if %errorlevel% equ 9 ( | |
if defined filled9 goto GAME | |
set filled9=1 | |
if %turn% equ 1 ( | |
set ix=%o% | |
set turn=0 | |
goto GAME | |
) else ( | |
set ix=%x% | |
set turn=1 | |
goto GAME | |
) | |
) | |
:END | |
echo. | |
echo Game ended. Play another? [Y/N] | |
echo. | |
choice /c yn /n | |
if %errorlevel% equ 1 (endlocal && goto start) else (goto:EOF) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment