本帖最后由 明月清风 于 2020-11-2 06:45 编辑
现在的bet写的动画大多都是用cl s代码来实现清屏的效果,但是这样cmd窗口会
产生振动(屏闪),让人难以接受,所以有什么好的解决方案吗?
比如说像游戏-老虎机里的跑龙套
还有XP系统模仿开机启动条都用到了cls实现清屏的效果
以下是老虎机:- ::Code By wankoilz 2011/5/28 @Win7 QQ375913828
- ::From bbs.bathome.net 批处理之家
-
- @echo off&setlocal enabledelayedexpansion
- mode con lines=20 cols=40&title 老虎机—批处理之家&color 8e
- echo;
- echo;
- echo 行赌生涯,老虎机玩法说明:
- echo ┏━━━━━━━━━━━━━━┓
- echo ┃初始金钱:1000 元 ┃
- echo ┃中奖几率:7〈★〈 ■=◆=● ┃
- echo ┃中奖情况:777=2000 ┃
- echo ┃ ★★★=800 ┃
- echo ┃ 77=500 ┃
- echo ┃ ★★=300 ┃
- echo ┃ ■■■=◆◆◆=●●●=500 ┃
- echo ┃ ■■=◆◆=●●=100 ┃
- echo ┗━━━━━━━━━━━━━━┛
- echo 随着RMB的增加,头衔会升级哦
- echo;
- echo 准备好开始你的行赌生涯了吗?
- echo 那么...按任意键开始吧!
- pause>nul
-
- set ta=●●●◆◆◆■■■★★7
- for /l %%i in (1,1,7) do (set @%%i= &set $%%i= &set #%%i= )
- for %%i in (赌棍 赌鬼 赌侠 赌王 赌圣 赌神 赌城老板 赌城老板娘) do set/a txph+=1&set tx!txph!=%%i
- set "if=(if ^!@tmp^! gtr 7 (set/a @tmp=@tmp-7^&set/a rnd=^!random^!%%12^&for %%x in (^!rnd^!) do set @ta=^!ta:~%%x,1^!))"
- set jq=1000&set txph=1
-
- :start
- set @4= &set $4= &set #4= &set zs=0
- set/a @tmp=%random%%%7+1,$tmp=%random%%%7+1,#tmp=%random%%%7+1
- set/a @rnd=%random%%%12,$rnd=%random%%%12,#rnd=%random%%%12
- set @ta=!ta:~%@rnd%,1!&set $ta=!ta:~%$rnd%,1!&set #ta=!ta:~%#rnd%,1!
- :lp
- cls&echo;&setlocal&set/a zs+=1
- %if%&%if:@=$%&%if:@=#%
- set @!@tmp!=!@ta!&set $!$tmp!=!$ta!&set #!#tmp!=!#ta!
- echo 头衔:!tx%txph%! Lv%txph%
- echo 现有RMB %jq% 元
- echo ┏━━━━┳━━━━┳━━━━┓
- for /l %%j in (1,1,7) do echo ┃ !@%%j! ┃ !$%%j! ┃ !#%%j! ┃
- echo ┗━━━━┻━━━━┻━━━━┛
- if %zs% gtr 20 if %@tmp% equ 4 set/a @tmp=%@tmp%-1
- if %zs% gtr 40 if %$tmp% equ 4 set/a $tmp=%$tmp%-1
- if %zs% gtr 60 if %#tmp% equ 4 endlocal&set @4=%@4%&set $4=%$4%&set #4=%#4%&goto :js
- endlocal&set/a @tmp=%@tmp%+1,$tmp=%$tmp%+1,#tmp=%#tmp%+1&set @ta=%@ta%&set $ta=%$ta%&set #ta=%#ta%&set zs=%zs%
- for /l %%i in (1,1,50) do echo;>nul
- goto :lp
-
- :js
- setlocal&set zjsm=1&echo;
- for %%i in (!@4! !$4! !#4!) do (
- if defined %%i (set/a zjsm+=1&set zjta=%%i)
- set %%i=ok
- )
- if %zjsm% equ 1 echo 郁闷,貌似啥都没中...赔了50元&set/a jq-=50
- if %jq% leq 0 echo;&echo 输得个精光,行赌生涯到此为止了!&pause>nul&exit
- if %zjsm% equ 2 (
- if "%zjta%"=="7" (echo 很好很好,中了%zjsm%个%zjta%...赚得500元&set/a jq+=500
- ) else (
- if "%zjta%"=="★" (echo 运气不错,中了%zjsm%个%zjta%...赢了300元&set/a jq+=300
- ) else (
- echo 还过得去,中了%zjsm%个%zjta%...赚了100元&set/a jq+=100
- )))
- if %zjsm% equ 3 (
- if "%zjta%"=="7" (echo 老天开眼,你中了大奖%zjsm%个%zjta%
- echo 一次赚取2000元,赶紧娶媳妇去吧&set/a jq+=2000
- ) else (
- if "%zjta%"=="★" (echo 不可思议,你中了%zjsm%个%zjta%...赢了800元&set/a jq+=800
- ) else (
- echo 财神保佑,你中了%zjsm%个%zjta%...进账500元&set/a jq+=500
- )))
-
- for %%i in (0 1300 1600 1900 2300 2800 3200 4000) do (if %jq% geq %%i set/a jqph+=1)
- if %jqph% gtr %txph% set txph=%jqph%&echo;&echo 等级提升为→!tx%jqph%! Lv%jqph%
- if %jqph% lss %txph% set txph=%jqph%&echo;&echo 等级降低为→!tx%jqph%! Lv%jqph%
-
- echo;&echo 按任意键,再试试运气吧
- pause>nul&endlocal&set jq=%jq%&set txph=%txph%&goto :start
复制代码 这是xp启动条:- @echo offsetlocal enabledelayedexpansionmode con cols=62 lines=15 &color 07set "a= "for /L %%i in (1 1 27) do ( cls echo.&echo.&echo. echo Windows XP echo.&echo.&echo. echo ┌────────────────────────────┐ for /l %%j in (1 1 %%i) do (set /p= <nul) echo ■■■ echo └────────────────────────────┘ for /L %%j in (1 1 1000) do echo %%j>nul)pause
复制代码
|