[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[特效代码] 如何解决bet写的动画不用cls,解决屏闪的问题

本帖最后由 明月清风 于 2020-11-2 06:45 编辑

现在的bet写的动画大多都是用cl s代码来实现清屏的效果,但是这样cmd窗口会
产生振动(屏闪),让人难以接受,所以有什么好的解决方案吗?
比如说像游戏-老虎机里的跑龙套
还有XP系统模仿开机启动条都用到了cls实现清屏的效果
以下是老虎机:
  1. ::Code By wankoilz 2011/5/28 @Win7 QQ375913828
  2. ::From bbs.bathome.net 批处理之家
  3. @echo off&setlocal enabledelayedexpansion
  4. mode con lines=20 cols=40&title 老虎机—批处理之家&color 8e
  5. echo;
  6. echo;
  7. echo      行赌生涯,老虎机玩法说明:
  8. echo     ┏━━━━━━━━━━━━━━┓
  9. echo     ┃初始金钱:1000 元           ┃
  10. echo     ┃中奖几率:7〈★〈 ■=◆=● ┃
  11. echo     ┃中奖情况:777=2000       ┃
  12. echo     ┃          ★★★=800        ┃
  13. echo     ┃            77=500        ┃
  14. echo     ┃            ★★=300        ┃
  15. echo     ┃   ■■■=◆◆◆=●●●=500 ┃
  16. echo     ┃       ■■=◆◆=●●=100   ┃
  17. echo     ┗━━━━━━━━━━━━━━┛
  18. echo      随着RMB的增加,头衔会升级哦
  19. echo;
  20. echo      准备好开始你的行赌生涯了吗?
  21. echo      那么...按任意键开始吧!
  22. pause>nul
  23. set ta=●●●◆◆◆■■■★★7
  24. for /l %%i in (1,1,7) do (set @%%i= &set $%%i= &set #%%i= )
  25. for %%i in (赌棍 赌鬼 赌侠 赌王 赌圣 赌神 赌城老板 赌城老板娘) do set/a txph+=1&set tx!txph!=%%i
  26. 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^!))"
  27. set jq=1000&set txph=1
  28. :start
  29. set @4= &set $4= &set #4= &set zs=0
  30. set/a @tmp=%random%%%7+1,$tmp=%random%%%7+1,#tmp=%random%%%7+1
  31. set/a @rnd=%random%%%12,$rnd=%random%%%12,#rnd=%random%%%12
  32. set @ta=!ta:~%@rnd%,1!&set $ta=!ta:~%$rnd%,1!&set #ta=!ta:~%#rnd%,1!
  33. :lp
  34.     cls&echo;&setlocal&set/a zs+=1
  35.     %if%&%if:@=$%&%if:@=#%
  36.     set @!@tmp!=!@ta!&set $!$tmp!=!$ta!&set #!#tmp!=!#ta!
  37.     echo      头衔:!tx%txph%! Lv%txph%
  38.     echo      现有RMB %jq% 元
  39.     echo     ┏━━━━┳━━━━┳━━━━┓
  40.     for /l %%j in (1,1,7) do echo     ┃   !@%%j!   ┃   !$%%j!   ┃   !#%%j!   ┃
  41.     echo     ┗━━━━┻━━━━┻━━━━┛
  42.     if %zs% gtr 20 if %@tmp% equ 4 set/a @tmp=%@tmp%-1
  43.     if %zs% gtr 40 if %$tmp% equ 4 set/a $tmp=%$tmp%-1
  44.     if %zs% gtr 60 if %#tmp% equ 4 endlocal&set @4=%@4%&set $4=%$4%&set #4=%#4%&goto :js
  45.     endlocal&set/a @tmp=%@tmp%+1,$tmp=%$tmp%+1,#tmp=%#tmp%+1&set @ta=%@ta%&set $ta=%$ta%&set #ta=%#ta%&set zs=%zs%
  46.     for /l %%i in (1,1,50) do echo;>nul
  47. goto :lp
  48. :js
  49. setlocal&set zjsm=1&echo;
  50. for %%i in (!@4! !$4! !#4!) do (
  51.     if defined %%i (set/a zjsm+=1&set zjta=%%i)
  52.     set %%i=ok
  53. )
  54. if %zjsm% equ 1 echo      郁闷,貌似啥都没中...赔了50元&set/a jq-=50
  55. if %jq% leq 0 echo;&echo      输得个精光,行赌生涯到此为止了!&pause>nul&exit
  56. if %zjsm% equ 2 (
  57.     if "%zjta%"=="7" (echo      很好很好,中了%zjsm%个%zjta%...赚得500元&set/a jq+=500
  58.     ) else (
  59.     if "%zjta%"=="★" (echo      运气不错,中了%zjsm%个%zjta%...赢了300元&set/a jq+=300
  60.     ) else (
  61.     echo      还过得去,中了%zjsm%个%zjta%...赚了100元&set/a jq+=100
  62. )))
  63. if %zjsm% equ 3 (
  64.     if "%zjta%"=="7" (echo      老天开眼,你中了大奖%zjsm%个%zjta%
  65.                        echo      一次赚取2000元,赶紧娶媳妇去吧&set/a jq+=2000
  66.     ) else (
  67.     if "%zjta%"=="★" (echo     不可思议,你中了%zjsm%个%zjta%...赢了800元&set/a jq+=800
  68.     ) else (
  69.     echo      财神保佑,你中了%zjsm%个%zjta%...进账500元&set/a jq+=500
  70. )))
  71. for %%i in (0 1300 1600 1900 2300 2800 3200 4000) do (if %jq% geq %%i set/a jqph+=1)
  72. if %jqph% gtr %txph% set txph=%jqph%&echo;&echo      等级提升为→!tx%jqph%! Lv%jqph%
  73. if %jqph% lss %txph% set txph=%jqph%&echo;&echo      等级降低为→!tx%jqph%! Lv%jqph%
  74. echo;&echo      按任意键,再试试运气吧
  75. pause>nul&endlocal&set jq=%jq%&set txph=%txph%&goto :start
复制代码
这是xp启动条:
  1. @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
复制代码

什么是bet。
https://pc.woozooo.com/mydisk.php

TOP

返回列表