特效就不弄了,弄了个雨点左右摆动,雨点下落速度有快有慢的,加上一个男中音:- @echo off
- if not "%1"=="" goto :%1
- start /b %~fs0 sound
- title 按任意键退出...
- set "code=ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFHGIJKLMNOPQ"
- set /a end=19,left=10,right=0,straight=0,delay=550,times=10
- for /l %%a in (2 1 25) do (set line%%a= )
- setlocal enabledelayedexpansion
- :bgn
- for /l %%a in (1 1 !end!) do (
- set /a "pick=!random!%%!end!"
- call set "line1=!line1!%%code:~!pick!,1%% "
- )
- rem 控制字符左右摆动
- if !left! gtr 0 (
- set /a left-=1
- if not !right! gtr 0 (set /a right=!random!%%7+10)
- for /l %%a in (25 -1 2) do (
- set /a "tmp_=%%a-1"
- call set "line%%a=%%line!tmp_!:~1%%%%line!tmp_!:~,1%%"
- )
- ) else (
- if !right! gtr 0 (
- set /a right-=1
- if not !straight! gtr 0 (set /a straight=!random!%%7+7)
- for /l %%a in (25 -1 2) do (
- set /a "tmp_=%%a-1"
- call set "line%%a=%%line!tmp_!:~-1%%%%line!tmp_!:~,-1%%"
- )
- ) else (
- set /a straight-=1
- if !straight! lss 0 (set /a left=!random!%%7+10)
- for /l %%a in (25 -1 2) do (
- set /a "tmp_=%%a-1"
- call set "line%%a=%%line!tmp_!%%"
- )
- )
- )
- set "line1="
- cls
- for /l %%a in (1 1 25) do (set str=!str!!line%%a!)
- echo.!str!
- set "str="
- rem 控制字符落下速度的快慢(也就是摆动的快慢)
- if !times! gtr 1 (
- set /a times-=1
- for /l %%a in (1 1 !delay!) do (
- echo.>nul
- )
- ) else (
- set /a times=!random!%%10+10,delay=!random!%%400+200
- )
- goto :bgn
- :out
- pause>nul
- taskkill /FI "windowtitle eq 按任意键退出... *" >nul
- :sound
- start /b %~fs0 out
- Setlocal Enabledelayedexpansion
- set "n=0"
- for %%a in ("wow wow wow, it is raining" "god, it is raining again" "so bad, the weather" "I love all of you, baby" "we are all batch fan" "get busy living, or get busy dying") do (
- set /a n+=1
- set "voice!n!=%%a"
- )
- :agn
- set /a t=!random!%%!n!+1
- mshta vbscript:CreateObject("SAPI.SpVoice").Speak(!voice%t%!)(Window.close)
- ping -n 6 127.1>nul
- goto :agn
复制代码
[ 本帖最后由 more 于 2009-8-3 10:50 编辑 ] |