@echo off title Slide Puzzle setlocal enabledelayedexpansion ' set the game screen size [Width,Height] Mode 58,28 set default= % set pos=9 set loop=1 ' Counter set count=0 ' Color [Field Text] color 1e :reset ' Randomizer set /a rand=%random% %%12 goto %rand% :display cls echo. echo Using the keyboard keys "ASDW" to move echo a number to the adjacent empty square. echo. echo A = Slide Left echo S = Slide Down R = Reset Gameboard echo D = Slide Right C = Close Game echo W = Slide Up echo ____ ____ ____ echo ^| ^| ^| ^| echo ^| %slide1% ^| %slide2% ^| %slide3% ^| echo ^|____^|____^|____^| echo ^| ^| ^| ^| echo ^| %slide4% ^| %slide5% ^| %slide6% ^| echo ^|____^|____^|____^| echo ^| ^| ^| ^| echo ^| %slide7% ^| %slide8% ^| %slide9% ^| echo ^|____^|____^|____^| echo. echo Type the direction you want to slide the number. echo ( "A"- Left "S"- Down "D"- Right "W"- Up ) echo. echo Number of moves you've made %count% choice /c wasdrc /n if %errorlevel% == 1 goto movew if %errorlevel% == 2 goto movea if %errorlevel% == 3 goto moves if %errorlevel% == 4 goto moved if %errorlevel% == 5 goto reset if %errorlevel% == 6 exit /B :movew if %pos% GEQ 7 goto display set /a helper=%pos% + 3 set /a slide%pos%=!slide%helper%! set slide%helper%=%default% set /a pos=%pos% + 3 set /a count=%count%+1 goto display :movea if %pos% == 3 goto display if %pos% == 6 goto display if %pos% == 9 goto display set /a helper=%pos% + 1 set /a slide%pos%=!slide%helper%! set slide%helper%=%default% set /a pos=%pos% + 1 set /a count=%count%+1 goto display :moves if %pos% LEQ 3 goto display set /a helper=%pos% - 3 set /a slide%pos%=!slide%helper%! set slide%helper%=%default% set /a pos=%pos% - 3 set /a count=%count%+1 goto display :moved if %pos% == 1 goto display if %pos% == 4 goto display if %pos% == 7 goto display set /a helper=%pos% - 1 set /a slide%pos%=!slide%helper%! set slide%helper%=%default% set /a pos=%pos% - 1 set /a count=%count%+1 goto display Library : 0 set slide1=1 set slide2=7 set slide3=3 set slide4=5 set slide5=8 set slide6=4 set slide7=2 set slide8=6 set slide9=%default% set pos=9 set count=0 goto display :1 set slide1=7 set slide2=1 set slide3=6 set slide4=2 set slide5=5 set slide6=4 set slide7=3 set slide8=%default% set slide9=8 set pos=8 set count=0 goto display :2 set slide1=8 set slide2=%default% set slide3=2 set slide4=5 set slide5=7 set slide6=3 set slide7=6 set slide8=4 set slide9=1 set pos=2 set count=0 goto display :3 set slide1=2 set slide2=8 set slide3=%default% set slide4=5 set slide5=6 set slide6=1 set slide7=4 set slide8=7 set slide9=3 set pos=3 set count=0 goto display :4 set slide1=4 set slide2=8 set slide3=2 set slide4=%default% set slide5=5 set slide6=1 set slide7=7 set slide8=3 set slide9=6 set pos=4 set count=0 goto display :5 set slide1=6 set slide2=8 set slide3=5 set slide4=3 set slide5=%default% set slide6=1 set slide7=7 set slide8=2 set slide9=4 set pos=5 set count=0 goto display :6 set slide1=3 set slide2=8 set slide3=5 set slide4=7 set slide5=1 set slide6=%default% set slide7=2 set slide8=6 set slide9=4 set pos=5 set count=0 goto display :7 set slide1=1 set slide2=8 set slide3=3 set slide4=7 set slide5=5 set slide6=%default% set slide7=6 set slide8=2 set slide9=4 set pos=6 set count=0 goto display :8 set slide1=8 set slide2=%default% set slide3=6 set slide4=5 set slide5=4 set slide6=7 set slide7=3 set slide8=2 set slide9=1 set pos=2 set count=0 goto display :9 set slide1=1 set slide2=8 set slide3=%default% set slide4=4 set slide5=3 set slide6=2 set slide7=5 set slide8=7 set slide9=6 set pos=3 set count=0 goto display :10 set slide1=3 set slide2=6 set slide3=8 set slide4=5 set slide5=1 set slide6=7 set slide7=2 set slide8=4 set slide9=%default% set pos=9 set count=0 goto display :11 set slide1=2 set slide2=7 set slide3=%default% set slide4=5 set slide5=1 set slide6=4 set slide7=3 set slide8=8 set slide9=6 set pos=3 set count=0 goto display : 12 set slide1=1 set slide2=8 set slide3=2 set slide4=%default% set slide5=4 set slide6=3 set slide7=7 set slide8=6 set slide9=5 set pos=4 set count=0 goto display