Red de conocimiento informático - Conocimiento sistemático - Encontrar maneras de hacer Matrix Digital Rain

Encontrar maneras de hacer Matrix Digital Rain

Copie lo siguiente en el Bloc de notas, guárdelo como "Matrix Digital Rain.bat" y ejecútelo, o presione Alt Enter para ejecutarlo en pantalla completa. @echo dbg off

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

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

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!)

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]