Board logo

标题: [原创]********cn-dos动画******** [打印本页]

作者: s11ss     时间: 2007-12-11 17:30    标题: [原创]********cn-dos动画********


::CN-DOS Animation {s11ss 2007-12-11}

@echo off
setlocal enabledelayedexpansion
mode con cols=112 lines=15

::setVar
for /f "delims=" %%a in ('findstr "○" "%~f0"') do (
        set/a n+=1
        set "row!n!=%%a"
)

call :up2down 1 0
call :delay 2
call :up2down 2 1
call :delay 2
call :left2right 1 1 0
call :delay 2
call :left2right 8 10 1

pause>nul
goto :eof











:up2down
cls
echo.
echo.
for /l %%a in (2,1,%n%) do (
        echo.!row%%a!
        set/a t=%%a%%%1
        if !t! equ 0 call :delay %2
)
goto :eof

:left2right
set/a m=%1
        :lc
if %m% gtr 58 goto :eof
        cls
        echo.
        echo.
        for /l %%a in (2,1,%n%) do (
                ::It'll be more dynamic to print indirectly.
                set t=!row%%a:~0,%m%!
                echo.!t!
        )
        set/a m+=%2
        call :delay %3
goto :lc

:delay
for /l %%a in (1,1,%1) do ping -n 1 0 >nul
goto :eof

   ○○○○   ○○    ○○          ○○○○○○      ○○○○     ○○○○○
  ○○  ○○  ○○○   ○○          ○○   ○○    ○○  ○○   ○○   ○○
 ○○    ○  ○○○○  ○○          ○○    ○○  ○○    ○○  ○○   ○○
 ○○       ○○○○  ○○          ○○    ○○  ○○    ○○  ○○
 ○○       ○○ ○○ ○○          ○○    ○○  ○○    ○○   ○○○
 ○○       ○○ ○○ ○○ ○○○○○○○○ ○○    ○○  ○○    ○○     ○○○
 ○○       ○○  ○○○○          ○○    ○○  ○○    ○○       ○○
 ○○    ○  ○○  ○○○○          ○○    ○○  ○○    ○○  ○○   ○○
  ○○  ○○  ○○   ○○○          ○○   ○○    ○○  ○○   ○○   ○○
   ○○○○   ○○    ○○          ○○○○○○      ○○○○     ○○○○○