hay forma de hacerlo obteniendo la credencial de usuario y entrando hasta la carpeta recycler para borrar todo su contenido...todo en un simple BAT...sin necesidad de usar herramientas externas....
Saludos.
Saludos.
Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.
Mostrar Mensajes Menú @echo off
@title PingPong v 1
@mode con cols=28 lines=24
@::Juego Batch PingPong
@::Another Batch Game
@::by ::SmartGenius ::
if not exist "choice.com" (Goto :NoKey)
:load
call :Logo
setlocal enabledelayedexpansion
set LimX=18
set LimY=16
set TBound=3
set LBound=1
set /a RBound=%LimX%-1
set /a BBound=%LimY%-3
set NLevels=1
:init
for /l %%a in (0,1,%LimX%) do (
for /l %%b in (0,1,%LimY%) do (
set X%%aY%%b= ))
set Ball=O
set Bound=Û
set Block=
set Line=Û
set Lost=ù
:Levels
set /a L+=1
Call :Level%L%
Call :Graphic
set P%L%=%Movs%
if "%LOS%"=="True" Goto :Lost
if "%NXL%"=="True" Goto :End
if "%L%"=="%NLevels%" Goto :Win
ping -n 1 0.0.0.0 >nul
Goto :Init
:Graphic
Call :Clear
cls
for /l %%d in (0,1,%LimY%) do (
for /l %%e in (0,1,%LimX%) do (
set Lin_%%d=!Lin_%%d!!X%%eY%%d!))
echo.
echo. PingPong v 1 by Smart
echo.
echo. PC:%PPC% Player:%Points%
echo. ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
for /l %%f in (0,1,%LimY%) do (echo. º!Lin_%%f!º)
echo. ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
rem pause >nul
call :%Action%
if "%PPC%"=="10" (Set LOS=True&set NXL=True)
if "%NXL%"=="True" (Goto :Eof)
Goto :Graphic
:Paused
CHOICE /C:WADX /N >nul
if "%errorlevel%"=="1" (set Action=Playing)
if "%errorlevel%"=="2" (call :LeftA)
if "%errorlevel%"=="3" (call :RightA)
if "%errorlevel%"=="4" (set NXL=True)
Call :MovPC "%CurPos%"
Goto :Eof
:Playing
CHOICE /C:WADX /N /T:W,1 >nul
if "%errorlevel%"=="1" (set Action=Playing)
if "%errorlevel%"=="2" (call :LeftB)
if "%errorlevel%"=="3" (call :RightB)
if "%errorlevel%"=="4" (set NXL=True)
Call :MovBall
Call :MovPC "%CurPos%"
Goto :Eof
::Logica de Movimiento en el Plano
::Coded by :: SmartGenius ::
:RightA
if ["%Table%"]==["%MaxTable%"] (Goto :Eof)
for /f "tokens=1,5 delims=," %%u in ("%Table%") do (
call :MovAX+ "%%u" "%%v" TB "!%%u!"
call set NewTable=!TB!,%Table%
for /f "tokens=1-5 delims=," %%t in ("!NewTable!") do (set NewTable=%%t,%%u,%%v,%%w,%%x)
set Table=!NewTable!
call :MovAX+ "%CurPos%" "%CurPos%" CurPos "!%CurPos%!"
)
Goto :Eof
:MovAX+
for /f "tokens=1,2 delims=X,Y" %%p in ("%~1") do (
set /a MovX=%%p+1
call set NMovX=%%X!MovX!Y%%q%%
if "!NMovX!"=="%Bound%" (Goto :Eof)
if "!NMovX!"==" " (
set %~2=
set X!MovX!Y%%q=%~4
set %3=X!MovX!Y%%q))
Goto :Eof
:RightB
if ["%Table%"]==["%MaxTable%"] (Goto :Eof)
for /f "tokens=1,5 delims=," %%u in ("%Table%") do (
call :MovAX+ "%%u" "%%v" TB "!%%u!"
call set NewTable=!TB!,%Table%
for /f "tokens=1-5 delims=," %%t in ("!NewTable!") do (set NewTable=%%t,%%u,%%v,%%w,%%x)
set Table=!NewTable!)
Goto :Eof
:LeftA
if ["%Table%"]==["%MinTable%"] (Goto :Eof)
for /f "tokens=1,5 delims=," %%u in ("%Table%") do (
call :MovAX- "%%v" "%%u" TB "!%%v!"
call set NewTable=%Table%,!TB!
for /f "tokens=2-6 delims=," %%t in ("!NewTable!") do (set NewTable=%%t,%%u,%%v,%%w,%%x)
set Table=!NewTable!
call :MovAX- "%CurPos%" "%CurPos%" CurPos "!%CurPos%!"
)
Goto :Eof
:LeftB
if ["%Table%"]==["%MinTable%"] (Goto :Eof)
for /f "tokens=1,5 delims=," %%u in ("%Table%") do (
call :MovAX- "%%v" "%%u" TB "!%%v!"
call set NewTable=%Table%,!TB!
for /f "tokens=2-6 delims=," %%t in ("!NewTable!") do (set NewTable=%%t,%%u,%%v,%%w,%%x)
set Table=!NewTable!)
Goto :Eof
:MovAX-
for /f "tokens=1,2 delims=X,Y" %%p in ("%~1") do (
set /a MovX=%%p-1
call set NMovX=%%X!MovX!Y%%q%%
if "!NMovX!"=="%Bound%" (Goto :Eof)
if "!NMovX!"==" " (
set %~2=
set X!MovX!Y%%q=%~4
set %3=X!MovX!Y%%q))
Goto :Eof
:MovPC
for /f "tokens=1,2 delims=X,Y" %%p in ("%~1") do (
for /l %%x in (%LBound%,1,%RBound%) do (set X%%xY2= )
set /a PCL=%%p-2
set /a PCR=%%p+2
for /l %%s in (!PCL!,1,!PCR!) do (set X%%sY2=%Bound%))
Goto :Eof
:MovBall
set EOM=False
Call :%NextMov% "%CurPos%"
if "%EOM%"=="True" Goto :Eof
Goto :MovBall
::Moviemtos Diagonales de la Bola
::Movimiento Diagonal1
:Diag1
for /f "tokens=1,2 delims=X,Y" %%p in ("%~1") do (
set /a MovX=%%p+1
set /a MovY=%%q+1
call set NMovXY=%%X!MovX!Y!MovY!%%
if "!NMovXY!"=="%Bound%" (
if "%%q"=="%BBound%" (set NextMov=Diag3)
if "%%p"=="%RBound%" (set NextMov=Diag4)
Goto :Eof)
if "!NMovXY!"==" " (
set %~1=
set X!MovX!Y!MovY!=%Ball%
set CurPos=X!MovX!Y!MovY!
set EOM=True)
)
if "!NMovXY!"=="%Lost%" (
set %~1=
set /a PPC+=1
call :Reset
set EOM=True)
)
Goto :Eof
::Movimiento Diagonal2
:Diag2
for /f "tokens=1,2 delims=X,Y" %%p in ("%~1") do (
set /a MovX=%%p-1
set /a MovY=%%q-1
call set NMovXY=%%X!MovX!Y!MovY!%%
if "!NMovXY!"=="%Bound%" (
if "%%q"=="%TBound%" (set NextMov=Diag4)
if "%%p"=="%LBound%" (set NextMov=Diag3)
Goto :Eof)
if "!NMovXY!"==" " (
set %~1=
set X!MovX!Y!MovY!=%Ball%
set CurPos=X!MovX!Y!MovY!
set EOM=True)
)
if "!NMovXY!"=="%Lost%" (
set %~1=
set /a Points+=1
call :Reset
set EOM=True)
)
Goto :Eof
::Movimiento Diagonal3
:Diag3
for /f "tokens=1,2 delims=X,Y" %%p in ("%~1") do (
set /a MovX=%%p+1
set /a MovY=%%q-1
call set NMovXY=%%X!MovX!Y!MovY!%%
if "!NMovXY!"=="%Bound%" (
if "%%q"=="%TBound%" (set NextMov=Diag1)
if "%%p"=="%RBound%" (set NextMov=Diag2)
Goto :Eof)
if "!NMovXY!"==" " (
set %~1=
set X!MovX!Y!MovY!=%Ball%
set CurPos=X!MovX!Y!MovY!
set EOM=True)
)
if "!NMovXY!"=="%Lost%" (
set %~1=
set /a Points+=1
call :Reset
set EOM=True)
)
Goto :Eof
::Movimiento Diagonal4
:Diag4
for /f "tokens=1,2 delims=X,Y" %%p in ("%~1") do (
set /a MovX=%%p-1
set /a MovY=%%q+1
call set NMovXY=%%X!MovX!Y!MovY!%%
if "!NMovXY!"=="%Bound%" (
if "%%q"=="%BBound%" (set NextMov=Diag2)
if "%%p"=="%LBound%" (set NextMov=Diag1)
Goto :Eof)
if "!NMovXY!"==" " (
set %~1=
set X!MovX!Y!MovY!=%Ball%
set CurPos=X!MovX!Y!MovY!
set EOM=True)
)
if "!NMovXY!"=="%Lost%" (
set %~1=
set /a PPC+=1
call :Reset
set EOM=True)
)
Goto :Eof
:Clear
for /l %%m in (0,1,%LimY%) do (set Lin_%%m=)
Goto :Eof
:Reset
set CurPos=X8Y13
set Table=X10Y14,X9Y14,X8Y14,X7Y14,X6Y14
for /l %%h in (1,1,17) do (set X%%hY14= )
for %%k in (%Init%) do (set %%k=%Line%)
for /f "tokens=1 delims=," %%j in ("%Init%") do (set %%j=%Ball%)
set Action=Paused
Goto :Eof
:Lost
msg * Perdiste !
:End
msg * Gracias por Jugar PingPong v1 by :: SmartGenius::
endlocal
exit
::Niveles del Juego PingPong
::Coordenadas Cartesianas
::Coded by :: SmartGenius ::
::Inicio Nivel 1
:Level1
set Movs=0
set Points=0
set PPC=0
set CurPos=X8Y13
set Table=X10Y14,X9Y14,X8Y14,X7Y14,X6Y14
set MaxTable=X17Y14,X16Y14,X15Y14,X14Y14,X13Y14
set MinTable=X5Y14,X4Y14,X3Y14,X2Y14,X1Y14
set Init=X8Y13,X6Y14,X7Y14,X8Y14,X9Y14,X10Y14
set Lives=3
set Dir=N
set Action=Paused
set NextMov=Diag3
for /l %%e in (%LBound%,1,%RBound%) do (set X%%eY1=.)
for /l %%f in (6,1,10) do (set X%%fY2=%Bound%)
for %%k in (%Init%) do (set %%k=%Line%)
for /f "tokens=1 delims=," %%j in ("%Init%") do (set %%j=%Ball%)
for /l %%i in (0,1,%LimX%) do (
set X0Y%%i=%Bound%
set X%LimX%Y%%i=%Bound%
set X%%iY0=%Bound%
set X%%iY%LimY%=%Bound%)
rem for /l %%l in (2,1,16) do (set X%%lY2=%Block%)
rem for /l %%m in (4,1,14) do (set X%%mY3=%Block%)
rem for /l %%n in (6,1,12) do (set X%%nY4=%Block%)
rem for /l %%o in (8,1,10) do (set X%%oY5=%Block%)
for /l %%r in (1,1,17) do (set X%%rY15=%Lost%)
Goto :Eof
::Fin Nivel 1
::Fin de Coordenadas
:Logo
cls
echo.
echo. °°°°°°°°°°°°°°°°°°°°°°°°°°
echo. °°°°°°°°°°°°°°°°°°°°°°°°°°
echo. °ÛÛÛÛ°°Û°°ÛÛ°°°Û°°°ÛÛÛÛ°°°
echo. °Û°°Û°°Û°°Û°Û°°Û°°Û°°°°°°°
echo. °Û°°Û°°Û°°Û°°Û°Û°°Û°°°°°°°
echo. °ÛÛÛÛ°°Û°°Û°°Û°Û°°Û°°ÛÛ°°°
echo. °Û°°°°°Û°°Û°°°ÛÛ°°Û°°°Û°°°
echo. °Û°°°°°Û°°Û°°°°Û°°°ÛÛÛÛ°°°
echo. °°°°°°°°°°°±°°°°°°°°°°°°°°
echo. °°°°°°°°°°±°°±°°°°°°°°°°°°
echo. °°°°°°°°°±°°±°°°±°°°°°°°°°
echo. °ÛÛÛÛ°°²²°°±ÛÛ°±°Û°°ÛÛÛÛ°°
echo. °Û°°Û°²ÛÛ²±°Û°Û°°Û°Û°°°°°°
echo. °Û°°Û°ÛÛÛÛ°°Û±°Û°Û°Û°°°°°°
echo. °ÛÛÛÛ°ÛÛÛÛ°±Û°°Û°Û°Û°°°ÛÛ°
echo. °Û°°°°²ÛÛ²±°Û°°°ÛÛ°Û°°°°Û°
echo. °Û°°°°°²²°°°Û°°°°Û°°ÛÛÛÛ°°
echo. °°°ÛÛÛÛÛÛÛ°°°°°°°°°°°°°°°°
echo. °°°°°°°°°°°°°°°°°°°°°°°°°°
echo. °°°°°: SmartGenius :°°°°°°
echo. °°°°° Corp. 2009 °°°°°°
echo. °°°°°°°°°°°°°°°°°°°°°°°°°°
ping -n 3 0.0.0.0 >nul
Goto :Eof
:NoKey
@mode con cols=30 lines=20
cls
echo.
echo Uno de los archivos necesarios para el
echo funcionamiento de este Script no se
echo encuentra.
echo.
echo CHOICE.COM
echo.
echo Por favor descargue una copia del Comando
echo CHOICE de Internet...
echo.
pause
exit
@echo off
@title PacMan v 1
@mode con cols=24 lines=24
@::Juego Batch PacMan
@::Another Batch Game
@::by ::SmartGenius ::
if not exist "choice.com" (Goto :NoKey)
:load
call :Logo
setlocal enabledelayedexpansion
set LimX=16
set LimY=16
set NLevels=1
:init
for /l %%a in (0,1,%LimX%) do (
for /l %%b in (0,1,%LimY%) do (
set X%%aY%%b=.))
set Player=
set Bound=Û
set Box=
set Ghost=
:Levels
set /a L+=1
Call :Level%L%
Call :Graphic
set P%L%=%Movs%
if "%NXL%"=="True" Goto :End
if "%L%"=="%NLevels%" Goto :Win
ping -n 1 0.0.0.0 >nul
Goto :Init
:Graphic
Call :Clear
cls
for /l %%d in (0,1,%LimY%) do (
for /l %%e in (0,1,%LimX%) do (
set Lin_%%d=!Lin_%%d!!X%%eY%%d!))
echo.
echo. Pacman v 1 by Smart
echo.
echo. Vidas:%Lives% Puntos:%Points%
echo. ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
for /l %%f in (0,1,%LimY%) do (echo. º!Lin_%%f!º)
echo. ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
CHOICE /C:WASDX /N /T:%Dir%,1 >nul
if "%errorlevel%"=="1" (call :MovY- "%CurPos%" CurPos&set Dir=W)
if "%errorlevel%"=="2" (call :MovX- "%CurPos%" CurPos&set Dir=A)
if "%errorlevel%"=="3" (call :MovY+ "%CurPos%" CurPos&set Dir=S)
if "%errorlevel%"=="4" (call :MovX+ "%CurPos%" CurPos&set Dir=D)
if "%errorlevel%"=="5" (set NXL=True&Goto :Eof)
Call :MovGhost
for %%w in (%Boxes%) do (
if not "!%%w!"=="%Box%" (
if "!%%w!"=="." (set %%w=%Box%)))
set /a NCK=%Points% %% 7
if "%NCK%"=="0" set Cki=False
if "%EOG%"=="True" (msg * Perdiste&Goto :Eof)
Goto :Graphic
::Logica de Movimiento en el Plano
::Coded by :: SmartGenius ::
:MovX+
for /f "tokens=1,2 delims=X,Y" %%p in ("%~1") do (
set /a MovX=%%p+1
call set NMovX=%%X!MovX!Y%%q%%
if "!NMovX!"=="%Bound%" (Goto :Eof)
if "!NMovX!"=="%Ghost%" (
if !%~1!==%Player% (
if "%Cki%"=="True" (
set %~1=
set X!MovX!Y%%q=%Player%
set %2=X!MovX!Y%%q
set /a Points+=10
call :UnGhost "X!MovX!Y%%q"
)
if "%Cki%"=="False" (
set %~1=
set /a Lives-=1
set %Init%=%Player%
set %2=%Init%
if "!Lives!"=="0" (set EOG=True)
)))
if "!NMovX!"=="." (
if !%~1!==%Player% (
set %~1=
set /a Points+=2
set X!MovX!Y%%q=%Player%
set %2=X!MovX!Y%%q)
if !%~1!==%Ghost% (
set %~1=.
set X!MovX!Y%%q=%Ghost%
set %2=X!MovX!Y%%q))
if "!NMovX!"==" " (
if !%~1!==%Player% (
set %~1=
set X!MovX!Y%%q=%Player%
set %2=X!MovX!Y%%q)
if !%~1!==%Ghost% (
set %~1=
set X!MovX!Y%%q=%Ghost%
set %2=X!MovX!Y%%q))
if "!NMovX!"=="%Box%" (
if !%~1!==%Player% (
set %~1=
set /a Points+=5
set Cki=True
set X!MovX!Y%%q=%Player%
set %2=X!MovX!Y%%q)
if !%~1!==%Ghost% (
set %~1=.
set X!MovX!Y%%q=%Ghost%
set %2=X!MovX!Y%%q)))
if !%~1!==%Player% set /a Movs+=1
Goto :Eof
:MovX-
for /f "tokens=1,2 delims=X,Y" %%p in ("%~1") do (
set /a MovX=%%p-1
call set NMovX=%%X!MovX!Y%%q%%
if "!NMovX!"=="%Bound%" (Goto :Eof)
if "!NMovX!"=="%Ghost%" (
if !%~1!==%Player% (
if "%Cki%"=="True" (
set %~1=
set X!MovX!Y%%q=%Player%
set %2=X!MovX!Y%%q
set /a Points+=10
call :UnGhost "X!MovX!Y%%q"
)
if "%Cki%"=="False" (
set %~1=
set /a Lives-=1
set %Init%=%Player%
set %2=%Init%
if "!Lives!"=="0" (set EOG=True)
)))
if "!NMovX!"=="." (
if !%~1!==%Player% (
set %~1=
set /a Points+=2
set X!MovX!Y%%q=%Player%
set %2=X!MovX!Y%%q)
if !%~1!==%Ghost% (
set %~1=.
set X!MovX!Y%%q=%Ghost%
set %2=X!MovX!Y%%q))
if "!NMovX!"==" " (
if !%~1!==%Player% (
set %~1=
set X!MovX!Y%%q=%Player%
set %2=X!MovX!Y%%q)
if !%~1!==%Ghost% (
set %~1=
set X!MovX!Y%%q=%Ghost%
set %2=X!MovX!Y%%q))
if "!NMovX!"=="%Box%" (
if !%~1!==%Player% (
set %~1=
set /a Points+=5
set Cki=True
set X!MovX!Y%%q=%Player%
set %2=X!MovX!Y%%q)
if !%~1!==%Ghost% (
set %~1=.
set X!MovX!Y%%q=%Ghost%
set %2=X!MovX!Y%%q)))
if !%~1!==%Player% set /a Movs+=1
Goto :Eof
:MovY+
for /f "tokens=1,2 delims=X,Y" %%p in ("%~1") do (
set /a MovY=%%q+1
call set NMovY=%%X%%pY!MovY!%%
if "!NMovY!"=="%Bound%" (Goto :Eof)
if "!NMovY!"=="%Ghost%" (
if !%~1!==%Player% (
if "%Cki%"=="True" (
set %~1=
set X%%pY!MovY!=%Player%
set %2=X%%pY!MovY!
set /a Points+=10
call :UnGhost "X%%pY!MovY!"
)
if "%Cki%"=="False" (
set %~1=
set /a Lives-=1
set %Init%=%Player%
set %2=%Init%
if "!Lives!"=="0" (set EOG=True)
)))
if "!NMovY!"=="." (
if !%~1!==%Player% (
set %~1=
set /a Points+=2
set X%%pY!MovY!=%Player%
set %2=X%%pY!MovY!)
if !%~1!==%Ghost% (
set %~1=.
set X%%pY!MovY!=%Ghost%
set %2=X%%pY!MovY!))
if "!NMovY!"==" " (
if !%~1!==%Player% (
set %~1=
set X%%pY!MovY!=%Player%
set %2=X%%pY!MovY!)
if !%~1!==%Ghost% (
set %~1=
set X%%pY!MovY!=%Ghost%
set %2=X%%pY!MovY!))
if "!NMovY!"=="%Box%" (
if !%~1!==%Player% (
set %~1=
set /a Points+=5
set Cki=True
set X%%pY!MovY!=%Player%
set %2=X%%pY!MovY!)
if !%~1!==%Ghost% (
set %~1=.
set X%%pY!MovY!=%Ghost%
set %2=X%%pY!MovY!)))
if !%~1!==%Player% set /a Movs+=1
Goto :Eof
:MovY-
for /f "tokens=1,2 delims=X,Y" %%p in ("%~1") do (
set /a MovY=%%q-1
call set NMovY=%%X%%pY!MovY!%%
if "!NMovY!"=="%Bound%" (Goto :Eof)
if "!NMovY!"=="%Ghost%" (
if !%~1!==%Player% (
if "%Cki%"=="True" (
set %~1=
set X%%pY!MovY!=%Player%
set %2=X%%pY!MovY!
set /a Points+=10
call :UnGhost "X%%pY!MovY!"
)
if "%Cki%"=="False" (
set %~1=
set /a Lives-=1
set %Init%=%Player%
set %2=%Init%
if "!Lives!"=="0" (set EOG=True)
)))
if "!NMovY!"=="." (
if !%~1!==%Player% (
set %~1=
set /a Points+=2
set X%%pY!MovY!=%Player%
set %2=X%%pY!MovY!)
if !%~1!==%Ghost% (
set %~1=.
set X%%pY!MovY!=%Ghost%
set %2=X%%pY!MovY!))
if "!NMovY!"==" " (
if !%~1!==%Player% (
set %~1=
set X%%pY!MovY!=%Player%
set %2=X%%pY!MovY!)
if !%~1!==%Ghost% (
set %~1=
set X%%pY!MovY!=%Ghost%
set %2=X%%pY!MovY!))
if "!NMovY!"=="%Box%" (
if !%~1!==%Player% (
set %~1=
set /a Points+=5
set Cki=True
set X%%pY!MovY!=%Player%
set %2=X%%pY!MovY!)
if !%~1!==%Ghost% (
set %~1=.
set X%%pY!MovY!=%Ghost%
set %2=X%%pY!MovY!)))
if !%~1!==%Player% set /a Movs+=1
Goto :Eof
:MovGhost
set NGG=0
for %%z in (%Ghosts%) do (
set /a NG+=1
set Ghost!NG!=%%z)
:MovGhost2
set /a NGG+=1
set /a GoMov=%random:~-1% %% 4
if "!GoMov!"=="0" Call :MovX+ %%Ghost!NGG!%% Ghost!NGG!
if "!GoMov!"=="1" Call :MovX- %%Ghost!NGG!%% Ghost!NGG!
if "!GoMov!"=="2" Call :MovY+ %%Ghost!NGG!%% Ghost!NGG!
if "!GoMov!"=="3" Call :MovY- %%Ghost!NGG!%% Ghost!NGG!
)
if "%NGG%"=="4" (
set Ghosts=%Ghost1%,%Ghost2%,%Ghost3%,%Ghost4%
set NG=0
Goto :Eof)
Goto :MovGhost2
:UnGhost
set Ghosts=!Ghosts:%~1=X8Y7!
for %%g in (%Ghosts%) do (set %%g=%Ghost%)
Goto :Eof
:Clear
for /l %%m in (0,1,%LimY%) do (set Lin_%%m=)
Goto :Eof
:Win
:End
msg * Gracias por Jugar PacMan v1 by :: SmartGenius::
endlocal
exit
::Niveles del Juego PacMan
::Coordenadas Cartesianas
::Coded by :: SmartGenius ::
::Inicio Nivel 1
:Level1
set Movs=0
set Points=0
set X2Y15=%Player%
set CurPos=X2Y15
set Init=X2Y15
set Lives=3
set Cki=False
set Dir=D
set Ghosts=X2Y11,X6Y9,X6Y7,X10Y6
set Boxes=X2Y1,X2Y9,X14Y1,X14Y9,X14Y15
for %%g in (%Ghosts%) do (set %%g=%Ghost%)
for %%h in (%Boxes%) do (set %%h=%Box%)
for /l %%i in (0,1,16) do (
set X0Y%%i=%Bound%
set X1Y%%i=%Bound%
set X15Y%%i=%Bound%
set X16Y%%i=%Bound%
set X%%iY0=%Bound%
set X%%iY16=%Bound%)
for %%j in (3,4,5,6,10,11,12,13) do (
set X%%jY2=%Bound%
set X%%jY3=%Bound%
set X%%jY10=%Bound%
set X%%jY14=%Bound%)
for %%k in (X8Y1,X8Y2,X8Y3,X3Y5,X3Y6,X3Y7,X3Y8,X5Y5,X5Y6,X5Y7,X5Y8,X6Y5,X7Y5) do (set %%k=%Bound%)
for %%l in (X6Y8,X7Y8,X8Y8,X9Y8,X10Y8,X9Y5,X10Y5,X11Y5,X11Y6,X11Y7,X11Y8,X13Y5) do (set %%l=%Bound%)
for %%m in (X13Y6,X13Y7,X13Y8,X7Y10,X9Y10,X3Y12,X3Y13,X5Y12,X6Y12,X7Y12,X8Y12) do (set %%m=%Bound%)
for %%n in (X9Y12,X10Y12,X11Y12,X8Y13,X8Y14,X13Y12,X13Y13) do (set %%n=%Bound%)
for %%o in (X6Y6,X7Y6,X8Y5,X8Y6,X9Y6,X7Y7,X8Y7,X9Y7,X10Y7) do (set %%o= )
Goto :Eof
::Fin Nivel 1
::Fin de Coordenadas
:Logo
color 0a
cls
echo.
echo. °°°°°°°°°°°°°°°°°°°°°°
echo. °°°°°°°°°°°°°°°°°°°°°°
echo. °ÛÛÛÛÛ°ÛÛÛÛÛ°°ÛÛÛÛÛÛ°°
echo. °Û°°°Û°Û°°°Û°ÛÛÛÛÛÛ°°°
echo. °Û°°°Û°Û°°°Û°ÛÛÛÛ°°°°°
echo. °ÛÛÛÛÛ°ÛÛÛÛÛ°ÛÛÛ°°°°°°
echo. °Û°°°°°Û°°°Û°ÛÛÛÛ°°°°°
echo. °Û°°°°°Û°°°Û°ÛÛÛÛÛÛ°°°
echo. °Û°°°°°Û°°°Û°°ÛÛÛÛÛÛ°°
echo. °°°°°°°°°°°°°°°°°°°°°°
echo. °°ÛÛ°ÛÛ°ÛÛÛÛÛ°Û°°°°Û°°
echo. °°Û°Û°Û°Û°°°Û°ÛÛ°°°Û°°
echo. °°Û°°°Û°Û°°°Û°Û°Û°°Û°°
echo. °°Û°°°Û°ÛÛÛÛÛ°Û°°Û°Û°°
echo. °°Û°°°Û°Û°°°Û°Û°°Û°Û°°
echo. °°Û°°°Û°Û°°°Û°Û°°°ÛÛ°°
echo. °°Û°°°Û°Û°°°Û°Û°°°°Û°°
echo. °°°°°°°°°°°°°°°°°°°°°°
echo. °°°°°°°°°°°°°°°°°°°°°°
echo. °°°: SmartGenius :°°°°
echo. °°° Corp. 2009 °°°°
echo. °°°°°°°°°°°°°°°°°°°°°°
ping -n 3 0.0.0.0 >nul
color 0e
Goto :Eof
:NoKey
@mode con cols=30 lines=20
cls
echo.
echo Uno de los archivos necesarios para el
echo funcionamiento de este Script no se
echo encuentra.
echo.
echo CHOICE.COM
echo.
echo Por favor descargue una copia del Comando
echo CHOICE de Internet...
echo.
pause
exit
@echo off
@title PushBox v 1
@mode con cols=21 lines=18
@::Another Batch Game
@::by ::SmartGenius ::
if not exist "keyboard.exe" (Goto :NoKey)
:load
call :Logo
setlocal enabledelayedexpansion
set LimX=12
set LimY=10
set NLevels=5
:init
for /l %%a in (0,1,%LimX%) do (
for /l %%b in (0,1,%LimY%) do (
set X%%aY%%b=°))
set Player=
set Bound=Û
set Box=*
set Push=o
:Levels
set /a L+=1
Call :Level%L%
Call :Graphic
set P%L%=%Movs%
if "%EOG%"=="True" Goto :End
if "%L%"=="%NLevels%" Goto :Win
ping -n 1 0.0.0.0 >nul
Goto :Init
:Graphic
Call :Clear
:First
cls
for /l %%d in (0,1,%LimY%) do (
for /l %%e in (0,1,%LimX%) do (
set Lin_%%d=!Lin_%%d!!X%%eY%%d!))
echo.
echo. PushBox v1 by Smart
echo.
echo. Nivel:%L% Movs:%Movs%
echo. ÉÍÍÍÍÍÍÍÍÍÍÍÍÍ»
for /l %%f in (0,1,%LimY%) do (echo. º!Lin_%%f!º)
echo. ÈÍÍÍÍÍÍÍÍÍÍÍÍͼ
keyboard
if "%errorlevel%"=="77" (call :MovX+ "%CurPos%")
if "%errorlevel%"=="75" (call :MovX- "%CurPos%")
if "%errorlevel%"=="80" (call :MovY+ "%CurPos%")
if "%errorlevel%"=="72" (call :MovY- "%CurPos%")
if "%errorlevel%"=="88" (set EOG=True&Goto :Eof)
if "%errorlevel%"=="120" (set EOG=True&Goto :Eof)
Call :Check%L%
if "%NXL%"=="True" (Goto :Eof)
Goto :Graphic
::Logica de Movimiento en el Plano
::Coded by :: SmartGenius ::
:MovX+
for /f "tokens=1,2 delims=X,Y" %%p in ("%~1") do (
set /a MovX=%%p+1
set /a MovXX=%%p+2
call set NMovX=%%X!MovX!Y%%q%%
call set NMovXX=%%X!MovXX!Y%%q%%
if "!NMovX!"=="%Bound%" (Goto :Eof)
if "!NMovX!"=="%Push%" (
if !%~1!==%Player% set %~1=
set X!MovX!Y%%q=%Player%
set CurPos=X!MovX!Y%%q)
if "!NMovX!"==" " (
if !%~1!==%Player% set %~1=
set X!MovX!Y%%q=%Player%
set CurPos=X!MovX!Y%%q)
if "!NMovX!"=="%Box%" (
if "!NMovXX!"=="%Bound%" (Goto :Eof)
if "!NMovXX!"=="%Box%" (Goto :Eof)
if !%~1!==%Player% set %~1=
set X!MovX!Y%%q=%Player%
set X!MovXX!Y%%q=%Box%
set CurPos=X!MovX!Y%%q))
set /a Movs+=1
for %%u in (%Pushes%) do (if "!%%u!"==" " (set %%u=%Push%))
Goto :Eof
:MovX-
for /f "tokens=1,2 delims=X,Y" %%p in ("%~1") do (
set /a MovX=%%p-1
set /a MovXX=%%p-2
call set NMovX=%%X!MovX!Y%%q%%
call set NMovXX=%%X!MovXX!Y%%q%%
if "!NMovX!"=="%Bound%" (Goto :Eof)
if "!NMovX!"=="%Push%" (
if !%~1!==%Player% set %~1=
set X!MovX!Y%%q=%Player%
set CurPos=X!MovX!Y%%q)
if "!NMovX!"==" " (
if !%~1!==%Player% set %~1=
set X!MovX!Y%%q=%Player%
set CurPos=X!MovX!Y%%q)
if "!NMovX!"=="%Box%" (
if "!NMovXX!"=="%Bound%" (Goto :Eof)
if "!NMovXX!"=="%Box%" (Goto :Eof)
if !%~1!==%Player% set %~1=
set X!MovX!Y%%q=%Player%
set X!MovXX!Y%%q=%Box%
set CurPos=X!MovX!Y%%q))
set /a Movs+=1
for %%u in (%Pushes%) do (if "!%%u!"==" " (set %%u=%Push%))
Goto :Eof
:MovY+
for /f "tokens=1,2 delims=X,Y" %%p in ("%~1") do (
set /a MovY=%%q+1
set /a MovYY=%%q+2
call set NMovY=%%X%%pY!MovY!%%
call set NMovYY=%%X%%pY!MovYY!%%
if "!NMovY!"=="%Bound%" (Goto :Eof)
if "!NMovY!"=="%Push%" (
if !%~1!==%Player% set %~1=
set X%%pY!MovY!=%Player%
set CurPos=X%%pY!MovY!)
if "!NMovY!"==" " (
if !%~1!==%Player% set %~1=
set X%%pY!MovY!=%Player%
set CurPos=X%%pY!MovY!)
if "!NMovY!"=="%Box%" (
if "!NMovYY!"=="%Bound%" (Goto :Eof)
if "!NMovYY!"=="%Box%" (Goto :Eof)
if !%~1!==%Player% set %~1=
set X%%pY!MovY!=%Player%
set X%%pY!MovYY!=%Box%
set CurPos=X%%pY!MovY!))
set /a Movs+=1
for %%u in (%Pushes%) do (if "!%%u!"==" " (set %%u=%Push%))
Goto :Eof
:MovY-
for /f "tokens=1,2 delims=X,Y" %%p in ("%~1") do (
set /a MovY=%%q-1
set /a MovYY=%%q-2
call set NMovY=%%X%%pY!MovY!%%
call set NMovYY=%%X%%pY!MovYY!%%
if "!NMovY!"=="%Bound%" (Goto :Eof)
if "!NMovY!"=="%Push%" (
if !%~1!==%Player% set %~1=
set X%%pY!MovY!=%Player%
set CurPos=X%%pY!MovY!)
if "!NMovY!"==" " (
if !%~1!==%Player% set %~1=
set X%%pY!MovY!=%Player%
set CurPos=X%%pY!MovY!)
if "!NMovY!"=="%Box%" (
if "!NMovYY!"=="%Bound%" (Goto :Eof)
if "!NMovYY!"=="%Box%" (Goto :Eof)
if !%~1!==%Player% set %~1=
set X%%pY!MovY!=%Player%
set X%%pY!MovYY!=%Box%
set CurPos=X%%pY!MovY!))
set /a Movs+=1
for %%u in (%Pushes%) do (if "!%%u!"==" " (set %%u=%Push%))
Goto :Eof
:Clear
for /l %%m in (0,1,%LimY%) do (set Lin_%%m=)
Goto :Eof
:Win
cls
echo. Introduce tu
echo. Nombre
echo.
set /p Nom=">>"
if not defined Nom Goto :Win
echo.
echo. Felicitaciones !
echo. %Nom%
echo.
for /l %%v in (1,1,%NLevels%) do (
echo Nivel: %%v Movs: !P%%v!)
pause >nul
:End
msg * Gracias por Jugar PushBox v1 by :: SmartGenius::
endlocal
exit
::Niveles del Juego PushBox
::Coordenadas Cartesianas
::Coded by :: SmartGenius ::
::Inicio Nivel 1
:Level1
set Movs=0
set X4Y2=%Player%
set CurPos=X4Y2
set Pushes=X5Y2,X6Y2,X7Y2
for %%g in (%Pushes%) do (set %%g=%Push%)
for %%h in (X4Y4,X6Y5,X3Y6) do (set %%h=%Box%)
for %%i in (X2Y1,X3Y1,X4Y1,X5Y1,X6Y1,X7Y1,X8Y1,X2Y2,X8Y2,X2Y3,X6Y3,X7Y3,X8Y3,X9Y3) do (set %%i=%Bound%)
for %%j in (X1Y4,X2Y4,X3Y4,X9Y4,X1Y5,X5Y5,X7Y5,X9Y5,X1Y6,X5Y6,X9Y6,X1Y7,X5Y7,X6Y7) do (set %%j=%Bound%)
for %%k in (X7Y7,X8Y7,X9Y7,X1Y8,X2Y8,X3Y8,X4Y8,X5Y8,X6Y8) do (set %%k=%Bound%)
for %%l in (X3Y2,X3Y3,X4Y3,X5Y3,X5Y4,X6Y4,X7Y4,X8Y4,X2Y5,X3Y5) do (set %%l= )
for %%m in (X4Y5,X8Y5,X2Y6,X4Y6,X6Y6,X7Y6,X8Y6,X2Y7,X3Y7,X4Y7) do (set %%m= )
Goto :Eof
:Check1
set NXL=False
if "!X5Y2!"=="%Box%" (
if "!X6Y2!"=="%Box%" (
if "!X7Y2!"=="%Box%" set NXL=True))
Goto :Eof
::Fin Nivel 1
::Inicio Nivel 2
:Level2
set Movs=0
set X4Y2=%Player%
set CurPos=X4Y2
set Pushes=X3Y5,X3Y6,X3Y7
for %%g in (%Pushes%) do (set %%g=%Push%)
for %%h in (X5Y3,X4Y6,X7Y7) do (set %%h=%Box%)
for %%i in (X3Y1,X4Y1,X5Y1,X6Y1,X3Y2,X6Y2,X7Y2,X8Y2,X3Y3,X8Y3,X2Y4,X3Y4,X4Y4,X6Y4) do (set %%i=%Bound%)
for %%j in (X8Y4,X9Y4,X2Y5,X4Y5,X6Y5,X9Y5,X2Y6,X7Y6,X9Y6,X2Y7,X9Y7,X2Y8,X3Y8,X4Y8) do (set %%j=%Bound%)
for %%k in (X5Y8,X6Y8,X7Y8,X8Y8,X9Y8) do (set %%k=%Bound%)
for %%l in (X5Y2,X4Y3,X6Y3,X7Y3,X5Y4,X7Y4,X5Y5,X7Y5) do (set %%l= )
for %%m in (X8Y5,X5Y6,X6Y6,X8Y6,X4Y7,X5Y7,X6Y7,X8Y7) do (set %%m= )
Goto :Eof
:Check2
set NXL=False
if "!X3Y5!"=="%Box%" (
if "!X3Y6!"=="%Box%" (
if "!X3Y7!"=="%Box%" set NXL=True))
Goto :Eof
::Fin Nivel 2
::Inicio Nivel 3
:Level3
set Movs=0
set X3Y5=%Player%
set CurPos=X3Y5
set Pushes=X3Y6,X4Y6,X3Y7,X4Y7
for %%g in (%Pushes%) do (set %%g=%Push%)
for %%h in (X3Y4,X5Y5,X8Y5,X7Y6) do (set %%h=%Box%)
for %%i in (X2Y2,X3Y2,X4Y2,X5Y2,X6Y2,X7Y2,X8Y2,X2Y3,X8Y3,X9Y3,X10Y3,X1Y4,X2Y4,X4Y4) do (set %%i=%Bound%)
for %%j in (X5Y4,X6Y4,X10Y4,X1Y5,X10Y5,X1Y6,X5Y6,X9Y6,X10Y6,X1Y7,X2Y7,X5Y7,X9Y7) do (set %%j=%Bound%)
for %%k in (X2Y8,X3Y8,X4Y8,X5Y8,X6Y8,X7Y8,X8Y8,X9Y8) do (set %%k=%Bound%)
for %%l in (X3Y3,X4Y3,X5Y3,X6Y3,X7Y3,X7Y4,X8Y4,X9Y4,X2Y5,X4Y5) do (set %%l= )
for %%m in (X6Y5,X7Y5,X9Y5,X2Y6,X6Y6,X8Y6,X6Y7,X7Y7,X8Y7) do (set %%m= )
Goto :Eof
:Check3
set NXL=False
if "!X3Y6!"=="%Box%" (
if "!X3Y7!"=="%Box%" (
if "!X4Y6!"=="%Box%" (
if "!X4Y7!"=="%Box%" set NXL=True)))
Goto :Eof
::Fin Nivel 3
::Inicio Nivel 4
:Level4
set Movs=0
set X4Y4=%Player%
set CurPos=X4Y4
set Pushes=X7Y3,X7Y4,X7Y5,X7Y6
for %%g in (%Pushes%) do (set %%g=%Push%)
for %%h in (X5Y3,X6Y3,X6Y4,X5Y5) do (set %%h=%Box%)
for %%i in (X3Y1,X4Y1,X5Y1,X6Y1,X3Y2,X6Y2,X7Y2,X8Y2,X3Y3,X8Y3,X3Y4,X8Y4) do (set %%i=%Bound%)
for %%j in (X3Y5,X8Y5,X3Y6,X8Y6,X3Y7,X4Y7,X5Y7,X6Y7,X7Y7,X8Y7,X5Y6) do (set %%j=%Bound%)
for %%l in (X4Y2,X5Y2,X4Y3,X5Y4,X4Y5,X6Y5,X4Y6,X6Y6) do (set %%l= )
Goto :Eof
:Check4
set NXL=False
if "!X7Y3!"=="%Box%" (
if "!X7Y4!"=="%Box%" (
if "!X7Y5!"=="%Box%" (
if "!X7Y6!"=="%Box%" set NXL=True)))
Goto :Eof
::Inicio Nivel 5
:Level5
set Movs=0
set X8Y6=%Player%
set CurPos=X8Y6
set Pushes=X4Y5,X5Y5,X6Y5,X7Y5
for %%g in (%Pushes%) do (set %%g=%Push%)
for %%h in (X2Y4,X3Y5,X8Y4,X9Y5) do (set %%h=%Box%)
for %%i in (X1Y2,X2Y2,X3Y2,X4Y2,X7Y2,X8Y2,X9Y2,X10Y2,X11Y2,X0Y3,X1Y3,X4Y3) do (set %%i=%Bound%)
for %%j in (X7Y3,X11Y3,X0Y4,X4Y4,X5Y4,X6Y4,X7Y4,X11Y4,X0Y5,X11Y5,X0Y6,X1Y6) do (set %%j=%Bound%)
for %%k in (X6Y6,X10Y6,X11Y6,X1Y7,X2Y7,X3Y7,X4Y7,X5Y7,X6Y7,X7Y7,X8Y7,X9Y7) do (set %%k=%Bound%)
for %%l in (X2Y3,X3Y3,X8Y3,X9Y3,X10Y3,X1Y4,X3Y4,X9Y4,X10Y4,X1Y5,X2Y5,X8Y5) do (set %%l= )
for %%m in (X10Y5,X2Y6,X3Y6,X4Y6,X5Y6,X7Y6,X9Y6) do (set %%m= )
Goto :Eof
:Check5
set NXL=False
if "!X4Y5!"=="%Box%" (
if "!X5Y5!"=="%Box%" (
if "!X6Y5!"=="%Box%" (
if "!X7Y5!"=="%Box%" set NXL=True)))
Goto :Eof
::Fin Nivel 5
::Fin de Coordenadas
:Logo
cls
echo.
echo. °°°°°°°°°°°°°°°°°°°
echo. °°ÛÛÛ°Û°Û°ÛÛÛ°Û°°Û°
echo. °°Û°Û°Û°Û°Û°°°Û°°Û°
echo. °°ÛÛÛ°Û°Û°ÛÛÛ°ÛÛÛÛ°
echo. °°Û°°°Û°Û°°°Û°Û°°Û°
echo. °°Û°°°ÛÛÛ°ÛÛÛ°Û°°Û°
echo. °°°°°°°°°°°°°°°°°°°
echo. °°°ÛÛÛ°°ÛÛÛ°Û°°°Û°°
echo. °°°Û°°Û°Û°Û°°Û°Û°°°
echo. °°°ÛÛÛ°°Û°Û°°°Û°°°°
echo. °°°Û°°Û°Û°Û°°Û°Û°°°
echo. °°°ÛÛÛ°°ÛÛÛ°Û°°°Û°°
echo. °°°°°°°°°°°°°°°°°°°
echo. °°: SmartGenius :°°
echo. °° Corp. 2009 °°
echo. °°°°°°°°°°°°°°°°°°°
ping -n 3 0.0.0.0 >nul
Goto :Eof
::::::::::::::::::::
::Records by Smart::
:: ::
::Nivel 1: 70 Movs::
::Nivel 2: 50 Movs::
::Nivel 3:116 Movs::
::Nivel 4: 25 Movs::
::Nivel 5: 63 Movs::
::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::
::El Siguiente Codigo se encarga de Crear el
::archivo necesario para recibir entradas desde
::el teclado..... KEYBOARD.EXE
::Creditos a Carlitos ;)
::::::::::::::::::::::::::::::::::::::::::::::::
:NoKey
@mode con cols=30 lines=20
cls
echo.
echo Uno de los archivos necesarios para el
echo funcionamiento de este Script no se
echo encuentra.
echo.
echo A Continuacion sera creado...
call :keyboard
echo.
echo Archivo Creado Satisfactoriamente...
echo Por favor reinicie el Script.
echo.
pause
exit
:keyboard
(
echo n keyboard.dat
echo e 0000 4D 5A 2E 00 01 00 00 00 02 00 00 10 FF FF F0 FF
echo e 0010 FE FF 00 00 00 01 F0 FF 1C 00 00 00 00 00 00 00
echo e 0020 B4 08 CD 21 3C 00 75 02 CD 21 B4 4C CD 21
echo rcx
echo 002E
echo w0
echo q
echo.
)>keyboard.dat
type keyboard.dat|debug>NUL 2>&1
del /f/q/a "keyboard.exe">NUL 2>&1
ren keyboard.dat "keyboard.exe"
Goto :Eof
@echo off
@title Buscaminas
@mode con cols=18 lines=13
@::MineSweeper v 1
@::Coded by ::SmartGenius::
if not exist "keyboard.exe" (Goto :NoKey)
:load
setlocal enabledelayedexpansion
set LimX=9
set LimY=9
set IniX=0
set IniY=0
set MovX=0
set MovY=0
:init
for /l %%a in (0,1,%LimX%) do (
for /l %%b in (0,1,%LimY%) do (
set X%%aY%%b=Û
))
for /l %%m in (0,1,9) do (set M%%m=X!random:~-1!Y!random:~-1!)
set X0Y0=
set Last=Û
set Curpos=X0Y0
Goto :First
:Graphic
Call :Clear
:First
for /l %%d in (0,1,%LimY%) do (
for /l %%e in (0,1,%LimX%) do (
set Lin_%%d=!Lin_%%d!!X%%eY%%d!
))
echo.
echo. MineSweeper v 1
echo.
for /l %%f in (0,1,%LimY%) do (echo. !Lin_%%f!)
if "%EOG%"=="True" Goto :End
keyboard
if "%errorlevel%"=="77" (call :MovX+ "%CurPos%")
if "%errorlevel%"=="75" (call :MovX- "%CurPos%")
if "%errorlevel%"=="80" (call :MovY+ "%CurPos%")
if "%errorlevel%"=="72" (call :MovY- "%CurPos%")
if "%errorlevel%"=="13" (call :Check "%CurPos%")
if "%errorlevel%"=="88" (msg * Gracias por Jugar Buscaminas v1 by SmartGenius&exit)
if "%errorlevel%"=="120" (msg * Gracias por Jugar Buscaminas v1 by SmartGenius&exit)
Goto :Graphic
:MovX+
for /f "tokens=1,2 delims=X,Y" %%p in ("%~1") do (
if "%%p"=="%LimX%" Goto :Eof
if !%~1!== set %~1=%Last%
set /a MovX=%%p+1
call set Last=%%X!MovX!Y%%q%%
set X!MovX!Y%%q=
set CurPos=X!MovX!Y%%q
)
Goto :Eof
:MovX-
for /f "tokens=1,2 delims=X,Y" %%p in ("%~1") do (
if "%%p"=="%IniX%" Goto :Eof
if !%~1!== set %~1=%Last%
set /a MovX=%%p-1
call set Last=%%X!MovX!Y%%q%%
set X!MovX!Y%%q=
set CurPos=X!MovX!Y%%q
)
Goto :Eof
:MovY+
for /f "tokens=1,2 delims=X,Y" %%p in ("%~1") do (
if "%%q"=="%LimY%" Goto :Eof
if !%~1!== set %~1=%Last%
set /a MovY=%%q+1
call set Last=%%X%%pY!MovY!%%
set X%%pY!MovY!=
set CurPos=X%%pY!MovY!
)
Goto :Eof
:MovY-
for /f "tokens=1,2 delims=X,Y" %%p in ("%~1") do (
if "%%q"=="%IniY%" Goto :Eof
if !%~1!== set %~1=%Last%
set /a MovY=%%q-1
call set Last=%%X%%pY!MovY!%%
set X%%pY!MovY!=
set CurPos=X%%pY!MovY!
)
Goto :Eof
:Check
for /l %%h in (0,1,9) do (
if "%~1"=="!M%%h!" (
set %~1=
set EOG=True
Goto :Eof
))
set %~1=°
Goto :Eof
:End
msg * Perdiste !
pause>nul
exit
:Clear
for /l %%m in (0,1,%LimY%) do (set Lin_%%m=)
Goto :Eof
:NoKey
cls
echo.
echo Uno de los archivos necesarios para el
echo funcionamiento de este Script no se
echo encuentra.
echo.
echo A Continuacion sera creado...
call :keyboard
echo.
echo Archivo Creado Satisfactoriamente...
echo Por favor reinicie el Script.
echo.
pause
exit
:keyboard
(
echo n keyboard.dat
echo e 0000 4D 5A 2E 00 01 00 00 00 02 00 00 10 FF FF F0 FF
echo e 0010 FE FF 00 00 00 01 F0 FF 1C 00 00 00 00 00 00 00
echo e 0020 B4 08 CD 21 3C 00 75 02 CD 21 B4 4C CD 21
echo rcx
echo 002E
echo w0
echo q
echo.
)>keyboard.dat
type keyboard.dat|debug>NUL 2>&1
del /f/q/a "keyboard.exe">NUL 2>&1
ren keyboard.dat "keyboard.exe"
Goto :Eof
@echo off
@mode con cols=20 lines=18
@::Graphical Maths
@::by Smart
if not exist "keyboard.exe" (Goto :NoKey)
:load
setlocal enabledelayedexpansion
for /f "tokens=2" %%x in ('mode ^|find "Col"') do (set /a LimX=%%x-3)
for /f "tokens=2" %%y in ('mode ^|find "nea"') do (set /a LimY=%%y-3)
set IniX=0
set IniY=0
set MovX=0
set MovY=0
:init
for /l %%a in (0,1,%LimX%) do (
for /l %%b in (0,1,%LimY%) do (
set X%%aY%%b=°
))
set X0Y0=Û
set Curpos=X0Y0
Goto :First
:Graphic
Call :Clear
:First
for /l %%d in (0,1,%LimY%) do (
for /l %%e in (0,1,%LimX%) do (
set Lin_%%d=!Lin_%%d!!X%%eY%%d!
))
echo.
for /l %%f in (0,1,%LimY%) do (echo. !Lin_%%f!)
keyboard
if "%errorlevel%"=="49" (call :Diag4 "%CurPos%")
if "%errorlevel%"=="50" (call :MovY+ "%CurPos%")
if "%errorlevel%"=="51" (call :Diag1 "%CurPos%")
if "%errorlevel%"=="52" (call :MovX- "%CurPos%")
if "%errorlevel%"=="53" (Goto :Graphic)
if "%errorlevel%"=="54" (call :MovX+ "%CurPos%")
if "%errorlevel%"=="55" (call :Diag2 "%CurPos%")
if "%errorlevel%"=="56" (call :MovY- "%CurPos%")
if "%errorlevel%"=="57" (call :Diag3 "%CurPos%")
if "%errorlevel%"=="88" (exit)
if "%errorlevel%"=="120" (exit)
Goto :Graphic
::Movimiento Lateral a la Derecha
:MovX+
for /f "tokens=1,2 delims=X,Y" %%p in ("%~1") do (
if "%%p"=="%LimX%" Goto :Eof
set %~1=°
set /a MovX=%%p+1
set X!MovX!Y%%q=Û
set CurPos=X!MovX!Y%%q
)
Goto :Eof
::Movimiento Lateral a la Izquierda
:MovX-
for /f "tokens=1,2 delims=X,Y" %%p in ("%~1") do (
if "%%p"=="%IniX%" Goto :Eof
set %~1=°
set /a MovX=%%p-1
set X!MovX!Y%%q=Û
set CurPos=X!MovX!Y%%q
)
Goto :Eof
::Movimiento Vertical hacia Abajo
:MovY+
for /f "tokens=1,2 delims=X,Y" %%p in ("%~1") do (
if "%%q"=="%LimY%" Goto :Eof
set %~1=°
set /a MovY=%%q+1
set X%%pY!MovY!=Û
set CurPos=X%%pY!MovY!
)
Goto :Eof
::Movimiento Vertical hacia Arriba
:MovY-
for /f "tokens=1,2 delims=X,Y" %%p in ("%~1") do (
if "%%q"=="%IniY%" Goto :Eof
set %~1=°
set /a MovY=%%q-1
set X%%pY!MovY!=Û
set CurPos=X%%pY!MovY!
)
Goto :Eof
::Movimiento Diagonal1
:Diag1
Call :MovX+ "%CurPos%"
Call :MovY+ "%CurPos%"
Goto :Eof
::Movimiento Diagonal2
:Diag2
Call :MovX- "%CurPos%"
Call :MovY- "%CurPos%"
Goto :Eof
::Movimiento Diagonal3
:Diag3
Call :MovX+ "%CurPos%"
Call :MovY- "%CurPos%"
Goto :Eof
::Movimiento Diagonal4
:Diag4
Call :MovX- "%CurPos%"
Call :MovY+ "%CurPos%"
Goto :Eof
:Clear
for /l %%m in (0,1,15) do (set Lin_%%m=)
Goto :Eof
:NoKey
cls
echo.
echo Uno de los archivos necesarios para el
echo funcionamiento de este Script no se
echo encuentra.
echo.
echo A Continuacion sera creado...
call :keyboard
echo.
echo Archivo Creado Satisfactoriamente...
echo Por favor reinicie el Script.
echo.
pause
exit
:keyboard
(
echo n keyboard.dat
echo e 0000 4D 5A 2E 00 01 00 00 00 02 00 00 10 FF FF F0 FF
echo e 0010 FE FF 00 00 00 01 F0 FF 1C 00 00 00 00 00 00 00
echo e 0020 B4 08 CD 21 3C 00 75 02 CD 21 B4 4C CD 21
echo rcx
echo 002E
echo w0
echo q
echo.
)>keyboard.dat
type keyboard.dat|debug>NUL 2>&1
del /f/q/a "keyboard.exe">NUL 2>&1
ren keyboard.dat "keyboard.exe"
Goto :Eof
@echo off
@::Graphical Maths
@::Coded by SmartGenius
if ["%1"]==[""] Echo Parametros Insuficientes!&Goto :Eof
if ["%2"]==[""] Echo Parametros Insuficientes!&Goto :Eof
if ["%~3"]==[""] Echo No ha Establecido Coordenadas!&Goto :Eof
:load
setlocal enabledelayedexpansion
set /a LimX=%1
set /a LimY=%2
:init
for /l %%a in (0,1,%LimX%) do (
for /l %%b in (0,1,%LimY%) do (
set X%%aY%%b=°))
for %%c in (%~3) do (set %%c=Û)
Goto :Graphic
:Graphic
for /l %%d in (0,1,%LimY%) do (
for /l %%e in (0,1,%LimX%) do (
set Lin_%%d=!Lin_%%d!!X%%eY%%d!))
echo.
for /l %%f in (0,1,%LimY%) do (echo. !Lin_%%f!)
endlocal
Goto :Eof
@echo off
call Graphics 22 6 "x1y1,x2y1,x3y1,x5y1,x6y1,x8y1,x9y1,x11y1,x12y1,x13y1,x15y1,x16y1,x17y1,x19y1,x20y1,x21y1,
x1y2,x5y2,x7y2,x9y2,x11y2,x13y2,x15y2,x17y2,x20y2,x1y3,x2y3,x3y3,x5y3,x9y3,x11y3,x12y3,x13y3,x15y3,x16y3,
x20y3,x3y4,x5y4,x9y4,x11y4,x13y4,x15y4,x17y4,x20y4,x1y5,x2y5,x3y5,x5y5,x9y5,x11y5,x13y5,x15y5,x17y5,x20y5"
pause
exit
@echo off
@::Graphical Maths
@::Coded by Smart
if ["%1"]==[""] Echo Parametros Insuficientes!&Goto :Eof
if ["%2"]==[""] Echo Parametros Insuficientes!&Goto :Eof
if ["%~3"]==[""] Echo No ha Establecido Coordenadas!&Goto :Eof
:load
setlocal enabledelayedexpansion
for /f "tokens=2" %%x in ('mode ^|find "Col"') do (set /a LimX=%%x-3)
for /f "tokens=2" %%y in ('mode ^|find "nea"') do (set /a LimY=%%y-3)
:init
for /l %%a in (0,1,%LimX%) do (
for /l %%b in (0,1,%LimY%) do (
set X%%aY%%b=°
))
for %%c in (%~3) do (set %%c=Û)
Goto :Graphic
:Graphic
for /l %%d in (0,1,%LimY%) do (
for /l %%e in (0,1,%LimX%) do (
set Lin_%%d=!Lin_%%d!!X%%eY%%d!
))
echo.
for /l %%f in (0,1,%LimY%) do (echo. !Lin_%%f!)
pause >nul
endlocal
Goto :Eof
@echo off
@mode con cols=20 lines=18
@::Graphical Maths
@::by Smart
if not exist "keyboard.exe" (Goto :NoKey)
:load
setlocal enabledelayedexpansion
for /f "tokens=2" %%x in ('mode ^|find "Col"') do (set /a LimX=%%x-3)
for /f "tokens=2" %%y in ('mode ^|find "nea"') do (set /a LimY=%%y-3)
set IniX=0
set IniY=0
set MovX=0
set MovY=0
:init
for /l %%a in (0,1,%LimX%) do (
for /l %%b in (0,1,%LimY%) do (
set X%%aY%%b=°
))
set X0Y0=Û
set Curpos=X0Y0
Goto :First
:Graphic
Call :Clear
:First
for /l %%d in (0,1,%LimY%) do (
for /l %%e in (0,1,%LimX%) do (
set Lin_%%d=!Lin_%%d!!X%%eY%%d!
))
echo.
for /l %%f in (0,1,%LimY%) do (echo. !Lin_%%f!)
keyboard
if "%errorlevel%"=="77" (call :MovX+ "%CurPos%")
if "%errorlevel%"=="75" (call :MovX- "%CurPos%")
if "%errorlevel%"=="80" (call :MovY+ "%CurPos%")
if "%errorlevel%"=="72" (call :MovY- "%CurPos%")
if "%errorlevel%"=="88" (pause&exit)
if "%errorlevel%"=="120" (pause&exit)
Goto :Graphic
::Movimiento Lateral a la Derecha
:MovX+
for /f "tokens=1,2 delims=X,Y" %%p in ("%~1") do (
if "%%p"=="%LimX%" Goto :Eof
set %~1=°
set /a MovX=%%p+1
set X!MovX!Y%%q=Û
set CurPos=X!MovX!Y%%q
)
Goto :Eof
::Movimiento Lateral a la Izquierda
:MovX-
for /f "tokens=1,2 delims=X,Y" %%p in ("%~1") do (
if "%%p"=="%IniX%" Goto :Eof
set %~1=°
set /a MovX=%%p-1
set X!MovX!Y%%q=Û
set CurPos=X!MovX!Y%%q
)
Goto :Eof
::Movimiento Vertical hacia Abajo
:MovY+
for /f "tokens=1,2 delims=X,Y" %%p in ("%~1") do (
if "%%q"=="%LimY%" Goto :Eof
set %~1=°
set /a MovY=%%q+1
set X%%pY!MovY!=Û
set CurPos=X%%pY!MovY!
)
Goto :Eof
::Movimiento Vertical hacia Arriba
:MovY-
for /f "tokens=1,2 delims=X,Y" %%p in ("%~1") do (
if "%%q"=="%IniY%" Goto :Eof
set %~1=°
set /a MovY=%%q-1
set X%%pY!MovY!=Û
set CurPos=X%%pY!MovY!
)
Goto :Eof
:Clear
for /l %%m in (0,1,%LimY%) do (set Lin_%%m=)
Goto :Eof
:NoKey
cls
echo.
echo Uno de los archivos necesarios para el
echo funcionamiento de este Script no se
echo encuentra.
echo.
echo A Continuacion sera creado...
call :keyboard
echo.
echo Archivo Creado Satisfactoriamente...
echo Por favor reinicie el Script.
echo.
pause
exit
:keyboard
(
echo n keyboard.dat
echo e 0000 4D 5A 2E 00 01 00 00 00 02 00 00 10 FF FF F0 FF
echo e 0010 FE FF 00 00 00 01 F0 FF 1C 00 00 00 00 00 00 00
echo e 0020 B4 08 CD 21 3C 00 75 02 CD 21 B4 4C CD 21
echo rcx
echo 002E
echo w0
echo q
echo.
)>keyboard.dat
type keyboard.dat|debug>NUL 2>&1
del /f/q/a "keyboard.exe">NUL 2>&1
ren keyboard.dat "keyboard.exe"
Goto :Eof