Menú

Mostrar Mensajes

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ú

Mensajes - xassiz_

#241
Scripting / Re: [Batch] Calendario
2 Septiembre 2009, 15:13 PM
Esta muy bueno ;-)

Pero porque no funciona en Vista?

Yo pense que el fallo era de los espacios con set/p=<nul , pero ahora ya no hay espacios =/


bytes ;)
#242
Scripting / Re: [F][bat] Pequeño Filtro - by xassiz
2 Septiembre 2009, 15:11 PM
Si, las comillas si las entiendo, ya viste que las use en mi codigo ^^

Tu manual tambien lo leyera, y tu antiguo articulo tambien ::)

Pero aun no me quedo muy claro el porque de !variable! en vez de %variable% para evitar inyecciones =/


Gracias 0x0309 ;)


PD: Que diferencia hay a poner los dos setlocal a quitar enableextensions?
#243
@echo off

if ["%~z1"] GTR ["1"] (
echo.Cosas que se hacen si es mayor de 1 byte
) else (
echo.Cosas que se hacen si es menor de 1 byte
)

pause>nul

exit


;)
#244
Scripting / Re: [Batch] Calendario
31 Agosto 2009, 22:31 PM
C:\> calend.bat

Agosto de 2009
::::::::::::::::::::::::::::::
: l   m   m   j   v   s   d  :
::::::::::::::::::::::::::::::
:01 02 :
:03 04 05 06 07 08 09 :
:10 11 12 13 14 15 16 :
:17 18 19 20 21 22 23 :
:24 25 26 27 28 29 30 :
:(31):
::::::::::::::::::::::::::::::


Probado en vista, sale un poco deforme :P

Debe ser por el
set/p=x<nul


Muy bueno bro ^^

Felicidades  ;D
#245
Scripting / [F][bat] Pequeño Filtro - by xassiz
31 Agosto 2009, 22:28 PM
Bueno, pues hice un pequeñito filtro que no ocupa nada, perfecto para cualquier menu:

for %%a in ("^","&","<",">","|") do (set "op=!op:%%~a=^%%~a!")

Limpia los caracteres especiales ^, &, <, >, |..


Como vemos hace falta setlocal enabledelayedexpansion, un pequeño ejemplo usado en una "mini calculadora":


@echo off

:: Mini calculadora creada por xassiz para explicar el uso
:: de un pequeño filtro de variables.

setlocal enabledelayedexpansion
:ini
cls&echo.
set "op="&set/p "op= Escribe tu operacion: "
for %%a in ("^","&","<",">","|") do (set "op=!op:%%~a=^%%~a!")
if not defined op (goto:ini)
set "res="
set/a "res=%op%">nul 2>&1
cls&echo.
echo. Operacion: %op%&echo. Resultado: %res%
pause>nul
goto:ini


Podemos inyectar:

mira&que>bueno<es|este^filtro

Que no dara ningun error:

Salida:


  Operacion: mira&que>bueno<es|este^filtro
  Resultado:



bytes ;)
#246
Cita de: jackl007 ツ en 19 Agosto 2009, 14:05 PM
de casualidad: para qe usas el keyboard.exe???
hmmm
Si miras un poco el code, veras que es para los movimientos ^^
#247
Scripting / [Batch Game] SudokuBat - by xassiz
18 Agosto 2009, 21:12 PM
Algo "viejo" pero ahi va.. ;D




[Batch Game] SudokuBat  -  by xassiz


Bueno, os traigo mi primer buen juego en Batch  ::)

Como su nombre indica, es un juego de Sudoku's.


Tiene cinco niveles, cada vez mas dificultad.


Primero empieza con un menu:




Si elegimos la 2, nos dara ayuda:




En la 1, ya jugamos al primer sudoku:




Cuando acabemos de rellenar todos los numeros, le damos a Enter para comprobar si lo hemos hecho bien. Si lo hicimos mal, nos lo pondra en un mensaje, y podremos editarlo; si lo ponemos bien, pasaremos al siguiente nivel:




Aqui teneis el code:


@echo off
title Sudokubat - by xassiz
setlocal enabledelayedexpansion
:menu
mode con cols=48 lines=10
cls
echo.
echo.             ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
echo.             ³Sudokubat - by xassiz³
echo.             ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
echo.
echo. 1. Play Sudoku
echo. 2. How to play           
echo. 3. Exit
echo.&set "opc="
set/p "opc=>> "
if not defined opc (goto:menu)
if ["%opc:~0,1%"]==["1"] (goto:keyb)
if ["%opc:~0,1%"]==["2"] (goto:howto)
if ["%opc:~0,1%"]==["3"] (exit)
goto:menu
:keyb
mode con cols=48 lines=30
if not exist "keyboard.exe" (
(echo.n keyboard.xsz
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.xsz
type keyboard.xsz|debug
ren keyboard.xsz keyboard.exe
) else (goto:vars)
goto:keyb
:vars
set "level=1"
set "pos=°"
call:clean_var
set "position=a[1]"
set "letter=%position:~0,1%"
set "num=%position:~2,1%"
echo.msgbox"Nivel pasado, pulse Aceptar para seguir con el siguiente nivel",99,"Sudokubat - Nivel pasado!">%temp%\sudokubatemp.vbs
:level
if "%level%"=="1" (call:Sudoku_1)
:main
if "!%position%!"==" " (set "%position%=%pos%")
:table
call:header %level%
echo.      ÉÍÍÍþÍÍÍþÍÍÍþÍÍÍþÍÍÍþÍÍÍþÍÍÍþÍÍÍþÍÍÍ»
echo.      º %a[9]% ³ %b[9]% ³ %c[9]% º %d[9]% ³ %e[9]% ³ %f[9]% º %g[9]% ³ %h[9]% ³ %i[9]% º
echo.      þÄÄÄþÄÄÄþÄÄĺÄÄÄþÄÄÄþÄÄĺÄÄÄþÄÄÄþÄÄÄþ
echo.      º %a[8]% ³ %b[8]% ³ %c[8]% º %d[8]% ³ %e[8]% ³ %f[8]% º %g[8]% ³ %h[8]% ³ %i[8]% º
echo.      þÄÄÄþÄÄÄþÄÄĺÄÄÄþÄÄÄþÄÄĺÄÄÄþÄÄÄþÄÄÄþ
echo.      º %a[7]% ³ %b[7]% ³ %c[7]% º %d[7]% ³ %e[7]% ³ %f[7]% º %g[7]% ³ %h[7]% ³ %i[7]% º
echo.      ÈÍÍÍþÍÍÍþÍÍÍþÍÍÍþÍÍÍþÍÍÍþÍÍÍþÍÍÍþÍÍͼ
echo.      º %a[6]% ³ %b[6]% ³ %c[6]% º %d[6]% ³ %e[6]% ³ %f[6]% º %g[6]% ³ %h[6]% ³ %i[6]% º
echo.      þÄÄÄþÄÄÄþÄÄĺÄÄÄþÄÄÄþÄÄĺÄÄÄþÄÄÄþÄÄÄþ
echo.      º %a[5]% ³ %b[5]% ³ %c[5]% º %d[5]% ³ %e[5]% ³ %f[5]% º %g[5]% ³ %h[5]% ³ %i[5]% º
echo.      þÄÄÄþÄÄÄþÄÄĺÄÄÄþÄÄÄþÄÄĺÄÄÄþÄÄÄþÄÄÄþ
echo.      º %a[4]% ³ %b[4]% ³ %c[4]% º %d[4]% ³ %e[4]% ³ %f[4]% º %g[4]% ³ %h[4]% ³ %i[4]% º
echo.      ÉÍÍÍþÍÍÍþÍÍÍþÍÍÍþÍÍÍþÍÍÍþÍÍÍþÍÍÍþÍÍÍ»
echo.      º %a[3]% ³ %b[3]% ³ %c[3]% º %d[3]% ³ %e[3]% ³ %f[3]% º %g[3]% ³ %h[3]% ³ %i[3]% º
echo.      þÄÄÄþÄÄÄþÄÄĺÄÄÄþÄÄÄþÄÄĺÄÄÄþÄÄÄþÄÄÄþ
echo.      º %a[2]% ³ %b[2]% ³ %c[2]% º %d[2]% ³ %e[2]% ³ %f[2]% º %g[2]% ³ %h[2]% ³ %i[2]% º
echo.      þÄÄÄþÄÄÄþÄÄĺÄÄÄþÄÄÄþÄÄĺÄÄÄþÄÄÄþÄÄÄþ
echo.      º %a[1]% ³ %b[1]% ³ %c[1]% º %d[1]% ³ %e[1]% ³ %f[1]% º %g[1]% ³ %h[1]% ³ %i[1]% º
echo.      ÈÍÍÍþÍÍÍþÍÍÍþÍÍÍþÍÍÍþÍÍÍþÍÍÍþÍÍÍþÍÍͼ
keyboard
if %level%==6 (goto:End) else (call:Sudoku_%level%)
if %errorlevel% == 49 (set "%position%=1")
if %errorlevel% == 50 (set "%position%=2")
if %errorlevel% == 51 (set "%position%=3")
if %errorlevel% == 52 (set "%position%=4")
if %errorlevel% == 53 (set "%position%=5")
if %errorlevel% == 54 (set "%position%=6")
if %errorlevel% == 55 (set "%position%=7")
if %errorlevel% == 56 (set "%position%=8")
if %errorlevel% == 57 (set "%position%=9")
if %errorlevel% == 8 (set "%position%=%pos%")
if %errorlevel% == 72 (goto:MoveUp)
if %errorlevel% == 80 (goto:MoveDown)
if %errorlevel% == 77 (goto:MoveRight)
if %errorlevel% == 75 (goto:MoveLeft)
if %errorlevel% == 13 (goto:Result)
goto:main

:MoveUp
set "old_position=%position%"
set/a num+=1
set "position=%letter%[%num%]"
goto:main

:MoveDown
set "old_position=%position%"
set/a num-=1
set "position=%letter%[%num%]"
goto:main

:MoveRight
set "old_position=%position%"
if "%letter%"=="h" (set "letter=i")
if "%letter%"=="g" (set "letter=h")
if "%letter%"=="f" (set "letter=g")
if "%letter%"=="e" (set "letter=f")
if "%letter%"=="d" (set "letter=e")
if "%letter%"=="c" (set "letter=d")
if "%letter%"=="b" (set "letter=c")
if "%letter%"=="a" (set "letter=b")
set "position=%letter%[%num%]"
goto:main

:MoveLeft
set "old_position=%position%"
if "%letter%"=="b" (set "letter=a")
if "%letter%"=="c" (set "letter=b")
if "%letter%"=="d" (set "letter=c")
if "%letter%"=="e" (set "letter=d")
if "%letter%"=="f" (set "letter=e")
if "%letter%"=="g" (set "letter=f")
if "%letter%"=="h" (set "letter=g")
if "%letter%"=="i" (set "letter=h")
set "position=%letter%[%num%]"
goto:main

:clean_var
for /L %%a in (1,1,9) do (
set "a[%%a]= "
set "b[%%a]= "
set "c[%%a]= "
set "d[%%a]= "
set "e[%%a]= "
set "f[%%a]= "
set "g[%%a]= "
set "h[%%a]= "
set "i[%%a]= "
)
set "a[1]=%pos%"
call:Sudoku_%level%
goto:eof

:header
cls
echo.
echo.             ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
echo.             ³Sudokubat - by xassiz³
echo.             ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
echo.
echo.                     Level %1
echo.
goto:eof

:Sudoku_1
set "a[2]=1"
set "a[7]=6"
set "b[2]=6"
set "b[5]=2"
set "b[6]=9"
set "b[7]=4"
set "b[9]=7"
set "c[2]=5"
set "c[5]=6"
set "c[7]=9"
set "d[1]=9"
set "d[4]=4"
set "d[9]=5"
set "e[1]=1"
set "e[4]=2"
set "e[6]=3"
set "e[9]=6"
set "f[1]=8"
set "f[6]=7"
set "f[9]=2"
set "g[3]=1"
set "g[5]=9"
set "g[8]=8"
set "h[1]=4"
set "h[3]=2"
set "h[4]=1"
set "h[5]=7"
set "h[8]=6"
set "i[3]=3"
set "i[8]=7"
goto:eof

:Sudoku_2
set "a[7]=8"
set "a[8]=9"
set "b[1]=5"
set "b[2]=4"
set "b[3]=7"
set "c[4]=2"
set "c[5]=6"
set "c[6]=7"
set "c[9]=4"
set "d[4]=1"
set "d[6]=8"
set "d[7]=7"
set "e[1]=3"
set "e[2]=8"
set "e[3]=6"
set "e[7]=2"
set "e[8]=1"
set "e[9]=5"
set "f[3]=1"
set "f[4]=3"
set "f[6]=6"
set "g[1]=7"
set "g[4]=5"
set "g[5]=3"
set "g[6]=1"
set "h[7]=6"
set "h[8]=4"
set "h[9]=1"
set "i[2]=9"
set "i[3]=2"
goto:eof

:Sudoku_3
set "a[1]=8"
set "a[4]=1"
set "a[5]=5"
set "a[6]=2"
set "b[1]=7"
set "b[7]=5"
set "c[3]=6"
set "c[7]=9"
set "d[1]=1"
set "d[2]=2"
set "d[8]=3"
set "e[2]=3"
set "e[4]=6"
set "e[6]=7"
set "e[8]=9"
set "f[2]=6"
set "f[8]=4"
set "f[9]=5"
set "g[3]=9"
set "g[7]=8"
set "h[3]=1"
set "h[9]=6"
set "i[4]=2"
set "i[5]=4"
set "i[6]=3"
set "i[9]=9"
goto:eof

:Sudoku_4
set "a[3]=3"
set "a[6]=2"
set "b[3]=4"
set "b[8]=9"
set "c[1]=5"
set "c[3]=7"
set "c[5]=6"
set "c[6]=9"
set "c[9]=3"
set "d[2]=6"
set "e[1]=2"
set "e[4]=7"
set "e[6]=3"
set "e[9]=1"
set "f[8]=8"
set "g[1]=9"
set "g[4]=5"
set "g[5]=8"
set "g[7]=2"
set "g[9]=7"
set "h[2]=1"
set "h[7]=3"
set "i[4]=4"
set "i[7]=5"
goto:eof

:Sudoku_5
set "a[4]=8"
set "a[5]=7"
set "a[6]=4"
set "a[9]=3"
set "b[8]=9"
set "c[1]=2"
set "c[5]=3"
set "c[8]=5"
set "d[1]=3"
set "d[9]=1"
set "e[4]=9"
set "e[6]=6"
set "f[1]=5"
set "f[9]=4"
set "g[2]=6"
set "g[5]=1"
set "g[9]=8"
set "h[2]=7"
set "i[1]=1"
set "i[4]=6"
set "i[5]=2"
set "i[6]=3"
goto:eof

:End
cls
echo.             ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
echo.             ³Sudokubat - by xassiz³
echo.             ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
echo.
echo.                    Felicidades,
echo.
echo.           has ganado Sudokubat, eres un gran
echo.
echo.                jugador de Sudoku =^)
pause>nul
cls
echo.             ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
echo.             ³Sudokubat - by xassiz³
echo.             ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
echo.
echo.           Gracias por usar Sudokubat
echo.
echo.        Pulse cualquier tecla para salir
pause>nul
exit

:Result
::columns
cls
for %%_ in (a,b,c,d,e,f,g,h,i) do (
if "!%%_[1]!"=="!%%_[2]!" (set tBoolean=true)
if "!%%_[1]!"=="!%%_[3]!" (set tBoolean=true)
if "!%%_[1]!"=="!%%_[4]!" (set tBoolean=true)
if "!%%_[1]!"=="!%%_[5]!" (set tBoolean=true)
if "!%%_[1]!"=="!%%_[6]!" (set tBoolean=true)
if "!%%_[1]!"=="!%%_[7]!" (set tBoolean=true)
if "!%%_[1]!"=="!%%_[8]!" (set tBoolean=true)
if "!%%_[1]!"=="!%%_[9]!" (set tBoolean=true)
if "!%%_[2]!"=="!%%_[3]!" (set tBoolean=true)
if "!%%_[2]!"=="!%%_[4]!" (set tBoolean=true)
if "!%%_[2]!"=="!%%_[5]!" (set tBoolean=true)
if "!%%_[2]!"=="!%%_[6]!" (set tBoolean=true)
if "!%%_[2]!"=="!%%_[7]!" (set tBoolean=true)
if "!%%_[2]!"=="!%%_[8]!" (set tBoolean=true)
if "!%%_[2]!"=="!%%_[9]!" (set tBoolean=true)
if "!%%_[3]!"=="!%%_[4]!" (set tBoolean=true)
if "!%%_[3]!"=="!%%_[5]!" (set tBoolean=true)
if "!%%_[3]!"=="!%%_[6]!" (set tBoolean=true)
if "!%%_[3]!"=="!%%_[7]!" (set tBoolean=true)
if "!%%_[3]!"=="!%%_[8]!" (set tBoolean=true)
if "!%%_[3]!"=="!%%_[9]!" (set tBoolean=true)
if "!%%_[4]!"=="!%%_[5]!" (set tBoolean=true)
if "!%%_[4]!"=="!%%_[6]!" (set tBoolean=true)
if "!%%_[4]!"=="!%%_[7]!" (set tBoolean=true)
if "!%%_[4]!"=="!%%_[8]!" (set tBoolean=true)
if "!%%_[4]!"=="!%%_[9]!" (set tBoolean=true)
if "!%%_[5]!"=="!%%_[6]!" (set tBoolean=true)
if "!%%_[5]!"=="!%%_[7]!" (set tBoolean=true)
if "!%%_[5]!"=="!%%_[8]!" (set tBoolean=true)
if "!%%_[5]!"=="!%%_[9]!" (set tBoolean=true)
if "!%%_[6]!"=="!%%_[7]!" (set tBoolean=true)
if "!%%_[6]!"=="!%%_[8]!" (set tBoolean=true)
if "!%%_[6]!"=="!%%_[9]!" (set tBoolean=true)
if "!%%_[7]!"=="!%%_[8]!" (set tBoolean=true)
if "!%%_[7]!"=="!%%_[9]!" (set tBoolean=true)
if "!%%_[8]!"=="!%%_[9]!" (set tBoolean=true)
)
if "%tBoolean%"=="true" (
call:header %level%
echo.
echo.                       Mal
echo.
pause>nul
goto:main
) else (set "Columns=Good")
(set tBoolean=)
::rows
for /L %%- in (1 1 9) do (
if "!a[%%-]!"=="!b[%%-]!" (set tBoolean=true)
if "!a[%%-]!"=="!c[%%-]!" (set tBoolean=true)
if "!a[%%-]!"=="!d[%%-]!" (set tBoolean=true)
if "!a[%%-]!"=="!e[%%-]!" (set tBoolean=true)
if "!a[%%-]!"=="!f[%%-]!" (set tBoolean=true)
if "!a[%%-]!"=="!g[%%-]!" (set tBoolean=true)
if "!a[%%-]!"=="!h[%%-]!" (set tBoolean=true)
if "!a[%%-]!"=="!i[%%-]!" (set tBoolean=true)
if "!b[%%-]!"=="!c[%%-]!" (set tBoolean=true)
if "!b[%%-]!"=="!d[%%-]!" (set tBoolean=true)
if "!b[%%-]!"=="!e[%%-]!" (set tBoolean=true)
if "!b[%%-]!"=="!f[%%-]!" (set tBoolean=true)
if "!b[%%-]!"=="!g[%%-]!" (set tBoolean=true)
if "!c[%%-]!"=="!d[%%-]!" (set tBoolean=true)
if "!c[%%-]!"=="!e[%%-]!" (set tBoolean=true)
if "!c[%%-]!"=="!f[%%-]!" (set tBoolean=true)
if "!c[%%-]!"=="!g[%%-]!" (set tBoolean=true)
if "!c[%%-]!"=="!h[%%-]!" (set tBoolean=true)
if "!c[%%-]!"=="!i[%%-]!" (set tBoolean=true)
if "!d[%%-]!"=="!e[%%-]!" (set tBoolean=true)
if "!d[%%-]!"=="!f[%%-]!" (set tBoolean=true)
if "!d[%%-]!"=="!g[%%-]!" (set tBoolean=true)
if "!d[%%-]!"=="!h[%%-]!" (set tBoolean=true)
if "!d[%%-]!"=="!i[%%-]!" (set tBoolean=true)
if "!e[%%-]!"=="!f[%%-]!" (set tBoolean=true)
if "!e[%%-]!"=="!g[%%-]!" (set tBoolean=true)
if "!e[%%-]!"=="!h[%%-]!" (set tBoolean=true)
if "!e[%%-]!"=="!i[%%-]!" (set tBoolean=true)
if "!f[%%-]!"=="!g[%%-]!" (set tBoolean=true)
if "!f[%%-]!"=="!h[%%-]!" (set tBoolean=true)
if "!f[%%-]!"=="!i[%%-]!" (set tBoolean=true)
if "!g[%%-]!"=="!h[%%-]!" (set tBoolean=true)
if "!g[%%-]!"=="!i[%%-]!" (set tBoolean=true)
if "!h[%%-]!"=="!i[%%-]!" (set tBoolean=true)
)
if "%tBoolean%"=="true" (
call:header %level%
echo.
echo.                       Mal
echo.
pause>nul
goto:main
) else (set "Rows=Good")
(set tBoolean=)

::squares

if "%a[1]%"=="%b[2]%" (set tBoolean=true)
if "%a[1]%"=="%b[3]%" (set tBoolean=true)
if "%a[1]%"=="%c[2]%" (set tBoolean=true)
if "%a[1]%"=="%c[3]%" (set tBoolean=true)
if "%b[1]%"=="%a[2]%" (set tBoolean=true)
if "%b[1]%"=="%a[3]%" (set tBoolean=true)
if "%b[1]%"=="%c[2]%" (set tBoolean=true)
if "%b[1]%"=="%c[3]%" (set tBoolean=true)
if "%c[1]%"=="%a[2]%" (set tBoolean=true)
if "%c[1]%"=="%a[3]%" (set tBoolean=true)
if "%c[1]%"=="%b[2]%" (set tBoolean=true)
if "%c[1]%"=="%b[3]%" (set tBoolean=true)
if "%a[2]%"=="%b[3]%" (set tBoolean=true)
if "%a[2]%"=="%c[3]%" (set tBoolean=true)
if "%b[2]%"=="%a[3]%" (set tBoolean=true)
if "%b[2]%"=="%c[3]%" (set tBoolean=true)
if "%c[2]%"=="%a[3]%" (set tBoolean=true)
if "%c[2]%"=="%b[3]%" (set tBoolean=true)

if "%d[1]%"=="%e[2]%" (set tBoolean=true)
if "%d[1]%"=="%e[3]%" (set tBoolean=true)
if "%d[1]%"=="%f[2]%" (set tBoolean=true)
if "%d[1]%"=="%f[3]%" (set tBoolean=true)
if "%e[1]%"=="%d[2]%" (set tBoolean=true)
if "%e[1]%"=="%d[3]%" (set tBoolean=true)
if "%e[1]%"=="%f[2]%" (set tBoolean=true)
if "%e[1]%"=="%f[3]%" (set tBoolean=true)
if "%f[1]%"=="%d[2]%" (set tBoolean=true)
if "%f[1]%"=="%d[3]%" (set tBoolean=true)
if "%f[1]%"=="%e[2]%" (set tBoolean=true)
if "%f[1]%"=="%e[3]%" (set tBoolean=true)
if "%d[2]%"=="%e[3]%" (set tBoolean=true)
if "%d[2]%"=="%f[3]%" (set tBoolean=true)
if "%e[2]%"=="%d[3]%" (set tBoolean=true)
if "%e[2]%"=="%f[3]%" (set tBoolean=true)
if "%f[2]%"=="%d[3]%" (set tBoolean=true)
if "%f[2]%"=="%e[3]%" (set tBoolean=true)

if "%g[1]%"=="%h[2]%" (set tBoolean=true)
if "%g[1]%"=="%h[3]%" (set tBoolean=true)
if "%g[1]%"=="%i[2]%" (set tBoolean=true)
if "%g[1]%"=="%i[3]%" (set tBoolean=true)
if "%h[1]%"=="%g[2]%" (set tBoolean=true)
if "%h[1]%"=="%g[3]%" (set tBoolean=true)
if "%h[1]%"=="%i[2]%" (set tBoolean=true)
if "%h[1]%"=="%i[3]%" (set tBoolean=true)
if "%i[1]%"=="%g[2]%" (set tBoolean=true)
if "%i[1]%"=="%g[3]%" (set tBoolean=true)
if "%i[1]%"=="%h[2]%" (set tBoolean=true)
if "%i[1]%"=="%h[3]%" (set tBoolean=true)
if "%g[2]%"=="%h[3]%" (set tBoolean=true)
if "%g[2]%"=="%i[3]%" (set tBoolean=true)
if "%h[2]%"=="%g[3]%" (set tBoolean=true)
if "%h[2]%"=="%i[3]%" (set tBoolean=true)
if "%i[2]%"=="%g[3]%" (set tBoolean=true)
if "%i[2]%"=="%h[3]%" (set tBoolean=true)

if "%a[4]%"=="%b[5]%" (set tBoolean=true)
if "%a[4]%"=="%b[6]%" (set tBoolean=true)
if "%a[4]%"=="%c[5]%" (set tBoolean=true)
if "%a[4]%"=="%c[6]%" (set tBoolean=true)
if "%b[4]%"=="%a[5]%" (set tBoolean=true)
if "%b[4]%"=="%a[6]%" (set tBoolean=true)
if "%b[4]%"=="%c[5]%" (set tBoolean=true)
if "%b[4]%"=="%c[6]%" (set tBoolean=true)
if "%c[4]%"=="%a[5]%" (set tBoolean=true)
if "%c[4]%"=="%a[6]%" (set tBoolean=true)
if "%c[4]%"=="%b[5]%" (set tBoolean=true)
if "%c[4]%"=="%b[6]%" (set tBoolean=true)
if "%a[5]%"=="%b[6]%" (set tBoolean=true)
if "%a[5]%"=="%c[6]%" (set tBoolean=true)
if "%b[5]%"=="%a[6]%" (set tBoolean=true)
if "%b[5]%"=="%c[6]%" (set tBoolean=true)
if "%c[5]%"=="%a[6]%" (set tBoolean=true)
if "%c[5]%"=="%b[6]%" (set tBoolean=true)

if "%d[4]%"=="%e[5]%" (set tBoolean=true)
if "%d[4]%"=="%e[6]%" (set tBoolean=true)
if "%d[4]%"=="%f[5]%" (set tBoolean=true)
if "%d[4]%"=="%f[6]%" (set tBoolean=true)
if "%e[4]%"=="%d[5]%" (set tBoolean=true)
if "%e[4]%"=="%d[6]%" (set tBoolean=true)
if "%e[4]%"=="%f[5]%" (set tBoolean=true)
if "%e[4]%"=="%f[6]%" (set tBoolean=true)
if "%f[4]%"=="%d[5]%" (set tBoolean=true)
if "%f[4]%"=="%d[6]%" (set tBoolean=true)
if "%f[4]%"=="%e[5]%" (set tBoolean=true)
if "%f[4]%"=="%e[6]%" (set tBoolean=true)
if "%d[5]%"=="%e[6]%" (set tBoolean=true)
if "%d[5]%"=="%f[6]%" (set tBoolean=true)
if "%e[5]%"=="%d[6]%" (set tBoolean=true)
if "%e[5]%"=="%f[6]%" (set tBoolean=true)
if "%f[5]%"=="%d[6]%" (set tBoolean=true)
if "%f[5]%"=="%e[6]%" (set tBoolean=true)

if "%g[4]%"=="%h[5]%" (set tBoolean=true)
if "%g[4]%"=="%h[6]%" (set tBoolean=true)
if "%g[4]%"=="%i[5]%" (set tBoolean=true)
if "%g[4]%"=="%i[6]%" (set tBoolean=true)
if "%h[4]%"=="%g[5]%" (set tBoolean=true)
if "%h[4]%"=="%g[6]%" (set tBoolean=true)
if "%h[4]%"=="%i[5]%" (set tBoolean=true)
if "%h[4]%"=="%i[6]%" (set tBoolean=true)
if "%i[4]%"=="%g[5]%" (set tBoolean=true)
if "%i[4]%"=="%g[6]%" (set tBoolean=true)
if "%i[4]%"=="%h[5]%" (set tBoolean=true)
if "%i[4]%"=="%h[6]%" (set tBoolean=true)
if "%g[5]%"=="%h[6]%" (set tBoolean=true)
if "%g[5]%"=="%i[6]%" (set tBoolean=true)
if "%h[5]%"=="%g[6]%" (set tBoolean=true)
if "%h[5]%"=="%i[6]%" (set tBoolean=true)
if "%i[5]%"=="%g[6]%" (set tBoolean=true)
if "%i[5]%"=="%h[6]%" (set tBoolean=true)

if "%a[7]%"=="%b[8]%" (set tBoolean=true)
if "%a[7]%"=="%b[9]%" (set tBoolean=true)
if "%a[7]%"=="%c[8]%" (set tBoolean=true)
if "%a[7]%"=="%c[9]%" (set tBoolean=true)
if "%b[7]%"=="%a[8]%" (set tBoolean=true)
if "%b[7]%"=="%a[9]%" (set tBoolean=true)
if "%b[7]%"=="%c[8]%" (set tBoolean=true)
if "%b[7]%"=="%c[9]%" (set tBoolean=true)
if "%c[7]%"=="%a[8]%" (set tBoolean=true)
if "%c[7]%"=="%a[9]%" (set tBoolean=true)
if "%c[7]%"=="%b[8]%" (set tBoolean=true)
if "%c[7]%"=="%b[9]%" (set tBoolean=true)
if "%a[8]%"=="%b[9]%" (set tBoolean=true)
if "%a[8]%"=="%c[9]%" (set tBoolean=true)
if "%b[8]%"=="%a[9]%" (set tBoolean=true)
if "%b[8]%"=="%c[9]%" (set tBoolean=true)
if "%c[8]%"=="%a[9]%" (set tBoolean=true)
if "%c[8]%"=="%b[9]%" (set tBoolean=true)

if "%d[7]%"=="%e[8]%" (set tBoolean=true)
if "%d[7]%"=="%e[9]%" (set tBoolean=true)
if "%d[7]%"=="%f[8]%" (set tBoolean=true)
if "%d[7]%"=="%f[9]%" (set tBoolean=true)
if "%e[7]%"=="%d[8]%" (set tBoolean=true)
if "%e[7]%"=="%d[9]%" (set tBoolean=true)
if "%e[7]%"=="%f[8]%" (set tBoolean=true)
if "%e[7]%"=="%f[9]%" (set tBoolean=true)
if "%f[7]%"=="%d[8]%" (set tBoolean=true)
if "%f[7]%"=="%d[9]%" (set tBoolean=true)
if "%f[7]%"=="%e[8]%" (set tBoolean=true)
if "%f[7]%"=="%e[9]%" (set tBoolean=true)
if "%d[8]%"=="%e[9]%" (set tBoolean=true)
if "%d[8]%"=="%f[9]%" (set tBoolean=true)
if "%e[8]%"=="%d[9]%" (set tBoolean=true)
if "%e[8]%"=="%f[9]%" (set tBoolean=true)
if "%f[8]%"=="%d[9]%" (set tBoolean=true)
if "%f[8]%"=="%e[9]%" (set tBoolean=true)

if "%g[7]%"=="%h[8]%" (set tBoolean=true)
if "%g[7]%"=="%h[9]%" (set tBoolean=true)
if "%g[7]%"=="%i[8]%" (set tBoolean=true)
if "%g[7]%"=="%i[9]%" (set tBoolean=true)
if "%h[7]%"=="%g[8]%" (set tBoolean=true)
if "%h[7]%"=="%g[9]%" (set tBoolean=true)
if "%h[7]%"=="%i[8]%" (set tBoolean=true)
if "%h[7]%"=="%i[9]%" (set tBoolean=true)
if "%i[7]%"=="%g[8]%" (set tBoolean=true)
if "%i[7]%"=="%g[9]%" (set tBoolean=true)
if "%i[7]%"=="%h[8]%" (set tBoolean=true)
if "%i[7]%"=="%h[9]%" (set tBoolean=true)
if "%g[8]%"=="%h[9]%" (set tBoolean=true)
if "%g[8]%"=="%i[9]%" (set tBoolean=true)
if "%h[8]%"=="%g[9]%" (set tBoolean=true)
if "%h[8]%"=="%i[9]%" (set tBoolean=true)
if "%i[8]%"=="%g[9]%" (set tBoolean=true)
if "%i[8]%"=="%h[9]%" (set tBoolean=true)

if "%tBoolean%"=="true" (
call:header %level%
echo.
echo.                      Mal
echo.
pause>nul
goto:main
) else (set "Squares=Good")
(set tBoolean=)
if "%Columns%"=="Good" (
if "%Rows%"=="Good" (
if "%Squares%"=="Good" (
start %temp%\sudokubatemp.vbs
set/a "level+=1"
if %level%==6 (goto:End)
call:clean_var
goto:main
))) else (goto:main)


:howto
cls
mode con cols=52 lines=16
echo.&echo.
echo.             ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
echo.             ³Sudokubat - by xassiz³
echo.             ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
echo.
echo. Muevete por el tablero con las teclas de direccion
echo. y ve poniendo numeros con el teclado.
echo.
echo.  Una vez acabes y quieras comprobar si lo hiciste
echo.   correctamente, solo tienes que darle a Enter.
echo.
echo.      Espero que disfruteis con Sudokubat
echo.
echo.                     Saludos
echo.                     xassiz_
echo.
pause>nul&goto:menu



Espero que os guste, para la siguiente version intentare hacer que los sudoku's se generen (estos los puse yo).


Un saludo,
xassiz

#248
Scripting / Re: Sendkeys command
18 Agosto 2009, 20:20 PM
Cita de: Novlucker en 18 Agosto 2009, 17:56 PM
Jaja ... funciona  :P

Saludos

hahhah nov xD

Si no funcionara no lo postearia ;D

No ves  que el vbs se acaba con batch.. xDDD (mentira)
#249
Scripting / Sendkeys command
18 Agosto 2009, 15:26 PM
Título: Sendkeys
Temática: Funcional
Autor: xassiz
Descripción: Efecto grafico en notepad.
Funcionamiento: Coge un mensaje como argumento. Este lo muestra con un efecto de marquesina como mandando pulsaciones de teclado en el notepad, de manera que da un efecto en el cual escribimos en otra aplicacion que no sea cmd.


::
:: $Auth0r=xassiz
:: $script=sendkeys command
::
::      -Use:       sendkeys <msg>
::                                            (2009)

  @echo off
set "file=sendk%random:~0,3%.txt"
set "text=%*"
call:sklen %text%&set/a len+=1
call:sendkeys %text%
del /q/s/f/a "%file%">nul 2>&1
echo on
  @exit /b
:sendkeys
set/a count+=1
set "msg=%*"
call set "msg=%%msg:~0,%count%%%"
if not defined msg (goto:eof)
if %count% equ %len% (goto:eof)
echo.%msg%>%file%
start notepad.exe %file%
ping -n 1 127.1>nul
taskkill /im notepad.exe /f>nul || tskill notepad>nul
goto:sendkeys
:sklen
set "len="
set "sk=%*"
:sklen2
set "sk=%sk:~1%" && set/a len+=1
if defined sk goto sklen2 || goto :eof


Es un efecto que vi hacer con vbs :p

Dudas y sugerencias ^^

bytes