Encontrar maneras de hacer Matrix Digital Rain
setlocal ENABLEDELAYEDEXPANSION
modo con cols=80 líneas=30
clsset backspace=
set redtek=" " set end=0: start set /a end =1 call: calc set /p=!setspaces! lt; nulamp; ping /n 1 127.1gt; nul set /p= backspacelt; nul set /p= redtek: ~1, 79lt; goto: inicio: calc if end==28 ( set /a end= 0 amp; cls amp; set /a cols=!random: ~0,2! echo ... Viento: !cols! ... if !cols! : ~1, cols! !aleatorio: ~0, 1! ir a: eof )@echo off
modo con cols=80
color 02 p>
para /f i en (test.txt) set str_char=i
set str_blank=
setlocal enableelayeexpansion:loop
:: Toma caracteres en posiciones aleatorias
set /a num_char=1random: ~-1random: ~0, 1-100
set char=!str_ char: ~-num_char, 1!::: Set longitud en blanco aleatoria
set /a num_blank=1random:~-1random:~0,1-100
set white=!str_blank:~0,num_blank !
echo.blankchar
ir a loop@echo off
modo con cols=80
establecer a= 1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ~`! @#.*(){}[]_ -=\"'?.,/^amp;^^^^gt;^lt;
set b=
setlocal enableelayeexpansion
:a
set /a num=random92
set caracter=!a:~-num,.1
establecer /a c=random80
establecer espacio=!
espacio de eco^carácter
ir a un
@eco desactivado
modo con cols=80 LÍNEAS=3
0
establecer a= 1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ~`! @#.*(){}[]_ -=\"'?.,/^amp;^^^^gt;^lt;
set b=
setlocal enableelayeexpansion
:a
set /a num=random92
set caracter=!a:~-num,.1
set /a c=random80
set space=!
::echo.space^charactersset/a i =1
rem pointer=i tail pointer=j
set/a j=i-30
establecer líneai=espacio^caracteres
FOR /L v IN (i,-1,j) DO eco .! linev!
:: ping /n 127.1gt; nul
goto a@echo off
:: modo con cols=80
setlocal ENABLEDELAYEDEXPANSION
color 02goto BEGIN
goto :eof::función mt_rand "a" "b"
:mt_rand
: (
establecer a=~1
establecer b=~2
establecer /a _mt_rand= (!aleatorio!(b-a)) a p >
salir /b 0
::):BEGIN
::{--
SET iWidth=80
SET iDensity=6
SET sText="#$amp;.'()* , -./0123456789:;lt;gt;?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
SET sText=!
set /A iText=90-1for /l i in (1, 1, iWidth) do (
set aDowni=0
p>): bucle
for /l I in (1, 1, iWidth) do (
set /a aDownI-=1
si !aDownI! LSS 0 (
llamada: mt_rand "0" "iDensity"amp; establecer aArrowI=!_mt_rand!
llamada: mt_rand "10" "25"amp; establecer aDownI=! _mt_rand !
)
si !aFlechaI! EQU 1 (
llamada: mt_rand "0" "iText"amp; (PARA M IN ("! _mt_rand!") DO SET aa=!sText:~~M, 1!) p>
establecer /p=!aa!lt;nul
>
) else (
set /p= lt; nul
)
)
ir a bucle
): --}:salir
salir /b 0@echo off
setlocal ENABLEDELAYEDEXPANSION
color 02for /l i in (1, 1, 80) hacer (
set Downi=0
): bucle
for /l j in (1, 1, 80) hacer (
establecer /a Abajoj-=1
if ! abajoj LSS 0 (
establecer /a Arrowj=!random!4
establecer /a Abajoj =!random!15 10
)
if "!Arrowj!" == "1" (
set /a chr=!random!2
establecer /p=!chr! nul
) más (
establecer /p= lt; nul
)
)
ir a bucle
ir a: eof@echo off
setlocal ENABLEDELAYEDEXPANSION
for /l i in (1, 1 , 80) hacer (
establecer Downi=0
)para /l i en (0) hacer (
establecer line=
para /l j en (1, 1, 80) do (
set /a Downj-=1
call set x=!downj!
if ! p>
if !x! LSS 0 (
set /a Arrowj=!random!6
set /a Downj=!random!15 10
)
llamar a set x=!
) else (set "line=!line!"
)
conjunto de llamadas /p=!line!lt;nul
)[/code]