中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 动画特效:画圆、弹球、进度条、起落等
« [1] [2] [3] »
作者:
标题: 动画特效:画圆、弹球、进度条、起落等 上一主题 | 下一主题
skywhite0
新手上路





积分 8
发帖 7
注册 2009-2-13
状态 离线
『第 16 楼』:  

先学习。。哪天会了,再回来。。。

2009-3-15 12:25
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
DwD
新手上路





积分 12
发帖 15
注册 2009-2-17
状态 离线
『第 17 楼』:  

我把空格换成了#,set h=!h:####=#####!这句话就是每次加一个#吧,为什么它变化的时候每循环两次后,就加了两个##呢?谁能解释下。

@echo off
setlocal enabledelayedexpansion
set "kong=                            "
rem set h=     o
set h=#####o
for /l %%a in (1,1,10) do (
ping -n>nul &ping -n>nul
rem set h=!h:    =     !
set h=!h:####=#####!
echo !h!
)
for /l %%a in (1,1,9) do (
ping -n>nul &ping -n>nul
set h=!h:#####=####!
echo !h!
)
pause

为什么换空格换成*后,得出了结果不正常了,谁再能帮解释下。
@echo off
setlocal enabledelayedexpansion
set "kong=                            "
rem set h=     o
set h=*****o
for /l %%a in (1,1,10) do (
ping -n>nul &ping -n>nul
rem set h=!h:    =     !
set h=!h:****=*****!
echo !h!
)
for /l %%a in (1,1,9) do (
ping -n>nul &ping -n>nul
set h=!h:*****=****!
echo !h!
)
pause

2009-3-16 06:24
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
logottfb
新手上路





积分 8
发帖 4
注册 2009-2-27
状态 离线
『第 18 楼』:  

本人技术不高
随便改个
群星乱闪给大家
@echo off
setlocal enabledelayedexpansion
mode con cols=102 lines=25
:loop
for /l %%a in (1,1,100) do (set k= !k!)
for /l %%a in (-10,1,10) do (set h%%a=%k%)
set la=-11
:la
set /a la+=1,lb=la*la,tlb=100-lb
set h%la%=!h%la%:~%tlb%!.
ping -n 1 127.1>nul
cls
for /l %%a in (-10,1,10) do echo,!h%%a!
if %la% lss 10 goto :la
goto loop

2009-3-16 07:01
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
netbenton
银牌会员

批处理编程迷


积分 1916
发帖 752
注册 2008-12-28
来自 广西
状态 离线
『第 19 楼』:  

学18楼的,
楼主原来的,球靠近后出现拖尾,并且到行尾后有时越界,
改善一下。
@echo off &setlocal enabledelayedexpansion
title made by hi.baidu.com/523066680
color 17 &mode con cols=60 lines=30
for /l %%a in (1,1,60) do (set space= !space!)
set /a La=14,Lb=30,Ca=29,Cb=57,r=5
:loop
if %La% lss 29 (set /a La+=2,line=La) else (set /a Lb-=2,line=Lb)
if %Lb% leq -1 (set /a La=-1,Lb=30,r=%random%%%3+2)
set/a nnn=ca+r
if %nnn% lss 59 (set /a Ca+=r,col=Ca) else (set /a Cb-=r,col=Cb)
if %Cb% leq 4 (set /a Ca=-1,Cb=59,r=%random%%%3+1)

if %line% lss 15 (
    for /l %%a in (1,1,29) do echo,
    for /l %%a in (1,1,%line%) do echo,
    echo,!space:~0,%col%!●
)
    for /l %%a in (1,1,%line%) do echo,
    echo,!space:~0,%col%!●
    ping -n 1 127.1>nul

goto :loop




精简
[你的+我的+他的]=>[大家的]    个人网志   
2009-3-16 20:40
查看资料  发送邮件  发短消息 网志  OICQ (37659560)  编辑帖子  回复  引用回复
523066680
银牌会员

SuperCleaner


积分 2362
发帖 1133
注册 2008-2-2
状态 离线
『第 20 楼』:  

嘿嘿 ~   模仿 随风 的弹球 的时候  繁衍出来的错误效果,netbenton改的不错撒。

另外17楼
     set h=!h:####=#####!  如果只有4个 则是加一个
但是当有8个的时候,这句话会把它分开,每4个加一个  也就是加两个了
所以。。。。



综合型编程论坛

我的作品索引
  
2009-3-17 01:44
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (523066680)  编辑帖子  回复  引用回复
523066680
银牌会员

SuperCleaner


积分 2362
发帖 1133
注册 2008-2-2
状态 离线
『第 21 楼』:  旋进的曲线哦


@echo off
setlocal enabledelayedexpansion
set /a a=7,b=-6
for /l %%a in (1,1,80) do (set space= !space!)

:loop
if %a% gtr -6 (set /a a-=1,k=a*a) else (set /a b+=1,k=72-b*b)
if %b% equ 6 (set /a a=6,b=-6)
echo, !space:~0,%k%!*
for %%a in (a b) do ping -n 1 127.1>nul
goto :loop




综合型编程论坛

我的作品索引
  
2009-5-1 21:40
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (523066680)  编辑帖子  回复  引用回复
hjh700913
新手上路





积分 2
发帖 29
注册 2009-4-1
状态 离线
『第 22 楼』:  

先学习。。哪天会了,再回来。。。

2009-5-6 21:04
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
hjh700913
新手上路





积分 2
发帖 29
注册 2009-4-1
状态 离线
『第 23 楼』:  

先学习。。哪天会了,再回来。。。
先学习。。哪天会了,再回来。。。
先学习。。哪天会了,再回来。。。
先学习。。哪天会了,再回来。。。
先学习。。哪天会了,再回来。。。
先学习。。哪天会了,再回来。。。
先学习。。哪天会了,再回来。。。
先学习。。哪天会了,再回来。。。
先学习。。哪天会了,再回来。。。
先学习。。哪天会了,再回来。。。

2009-5-6 21:05
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
523066680
银牌会员

SuperCleaner


积分 2362
发帖 1133
注册 2008-2-2
状态 离线
『第 24 楼』:  彩色蜿蜒曲线


@echo off
::code by 523066680 / if_exist
setlocal enabledelayedexpansion
for /l %%a in (1,1,80) do (set k= !k!)
set /a a=7,b=-6,color=0
set /p= <nul>OO
:a
  set /a color+=1
  if %a% gtr -6 (set /a a-=1,x=a*a) else (set /a b+=1,x=72-b*b)
  if %b% equ 6 (set /a a=6,b=-6)
  for %%a in (a b) do (
     set /p a=!k:~0,%x%!<nul
     findstr /a:%color%  "OO*"
     echo,
  )
  ping -n 1 127.1>nul
if %color% leq 200 goto :a
pause




综合型编程论坛

我的作品索引
  
2009-5-16 05:07
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (523066680)  编辑帖子  回复  引用回复
hongzhi14
新手上路





积分 6
发帖 4
注册 2009-6-26
状态 离线
『第 25 楼』:  

很有意思,都收藏了,呵呵

2009-6-28 03:26
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
jianny
新手上路




积分 4
发帖 4
注册 2008-3-11
状态 离线
『第 26 楼』:  

动画效果很帅!更令人有兴趣学习bat

2009-7-1 14:23
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
523066680
银牌会员

SuperCleaner


积分 2362
发帖 1133
注册 2008-2-2
状态 离线
『第 27 楼』:  

快过年了 偷偷来一个: 幽灵出没
@echo off
setlocal enabledelayedexpansion
title  幽灵:我在这里待很久了,你没发现吗?
rem Author: if_exist / 523066680
for /l %%a in (1,1,80) do (set spc= !spc!)
set /a x=1,tmpy=-10
set /a xadd=1,yadd=1,xaddadd=1

:a
  cls
  for /l %%a in (1,1,%y%) do (echo,)
  echo,!spc:~0,%x%!*
  set /a i=0,x+=xadd,tmpy+=yadd*(%random%%%2+1),y=tmpy+10,xadd+=xaddadd,yadd+=0
  if %xadd:-=% gtr 7 (set /a xaddadd=-xaddadd)
  if %tmpy:-=% gtr 10 (set /a yadd=-yadd)
  ping -n 1 127.0.0.1>nul
goto :a




综合型编程论坛

我的作品索引
  
2010-1-26 21:47
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (523066680)  编辑帖子  回复  引用回复
523066680
银牌会员

SuperCleaner


积分 2362
发帖 1133
注册 2008-2-2
状态 离线
『第 28 楼』:  飞虫


@echo off
setlocal enabledelayedexpansion
title  幽灵:我在批处理之家待很久了,你没发现吗?
rem Author: if_exist / 523066680
for /l %%a in (1,1,79) do (set spc= !spc!)
for /l %%a in (1,1,21) do (set line%%a=%spc%)
set /a x=1,tmpy=-10,xb=x+1,a=1
set /a xadd=1,yadd=1,xaddadd=1

:a
if defined do[%a%] (!do[%a%]!)
if defined do[%a%] (
    set line%cuty%=!line%cuty%:~0,%cutx%! !line%cuty%:~%cutxb%!
)
set line%y%=!line%y%:~0,%x%!*!line%y%:~%xb%!
cls
for /l %%a in (1,1,21) do (echo,!line%%a!)
set /a i=0,x+=xadd,tmpy+=yadd,y=tmpy+10,xadd+=xaddadd,xb=x+1
set "do[%a%]=set /a cutx=%x%,cuty=%y%,cutxb=%xb%"
if %a% leq 10 (set /a a+=1) else (set /a a=1)
if %xadd:-=% gtr 7 (set /a xaddadd=-xaddadd)
if %tmpy:-=% gtr 10 (set /a yadd=-yadd)
ping -n 1 127.0.0.1>nul
goto :a
pause




综合型编程论坛

我的作品索引
  
2010-1-26 22:45
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (523066680)  编辑帖子  回复  引用回复
acaigg
初级用户





积分 115
发帖 92
注册 2010-12-24
状态 离线
『第 29 楼』:  

好玩呀

2010-12-28 15:35
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
gudou
初级用户





积分 43
发帖 29
注册 2008-3-31
状态 离线
『第 30 楼』:  

强悍的帖子,强悍的技术,强悍的LZ……PFPF

2011-1-4 12:11
查看资料  发短消息 网志   编辑帖子  回复  引用回复
« [1] [2] [3] »
请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: