TC官方合作论坛

标题: 脚本里有两个功能,怎么有一个不执行的 [打印本页]

作者: gpqzm5218    时间: 2013-4-18 21:23
标题: 脚本里有两个功能,怎么有一个不执行的
空间 功能调试
//默认空间
//开始按钮_点击操作

功能 求和()
变量 a,b
a=1,b=2
c=a+b
如果(c!=0)
辅助.消息框("不等于")
如果结束

功能结束
功能 求减()
   变量 a,b
a=2,b=2
c=a-b
如果(c!=1)
辅助.消息框("不等于1")
如果结束  
   
   
功能结束
功能 开始_点击()
功能调试.求和()
功能结束
//退出按钮_点击操作
功能 退出_点击()
辅助.退出()
功能结束
空间结束
//空间结束语句

下面这段代码不执行 为什么


功能 求减()
   变量 a,b
a=2,b=2
c=a-b
如果(c!=1)
辅助.消息框("不等于1")
如果结束  



怎么样去让一个脚本里有多个功能存在的时候都同时去执行,请教谢谢


作者: shine宝宝    时间: 2013-4-18 21:37
没开启那段功能啊

功能 开始_点击()
功能调试.求和()
功能结束

这里只开启了求和

你再弄个按钮把求和改成求减
作者: 冷月无痕    时间: 2013-4-18 21:44
没开启那段功能啊

功能 开始_点击()
功能调试.求和()
功能结束

这里只开启了求和

你再弄个按钮把求和改成求减
shine宝宝 发表于 2013-4-18 21:37:20
宝宝
作者: gpqzm5218    时间: 2013-4-18 21:44
哦, 谢谢
如果在
功能 开始_点击()
功能调试.求和()
功能结束
改成
功能 开始_点击()
功能调试.求和().
功能调试.求减()
功能结束
这样的话是可以同时执行

不过我看别人的脚本不是这样子加上去的。也可以执行

比如

空间 DNF自动捡物
dm=com("dm.dmsoft")
纵向,横向
功能 找窗口()
    物品,intX,intY
   系统.设置路径(辅助.获取资源路径("rc:"))
    dm.SetDict(0,"左框.txt")
//设置字库
窗口句柄 = dm.FindWindow("地下城与勇士","")
//辅助.消息框(窗口句柄)
dm.SetWindowState(窗口句柄,12)
辅助.等待(50)
dm.BindWindow(窗口句柄,"normal","normal","normal",0)
辅助.等待(50)
//前台绑定
// 下面我们要写的功能
while(true)
dm.FindStr(0,60,2000,600,"左框","b4a588-404040",1.0,intX,intY)
if(intX>0)
    //找一次左框物品
物坐X=intX+33
物坐Y=intY+33
//物品中心位置
DNF自动捡物.人物中心坐标(物坐X,物坐Y)
help.sleep(500)
else
   辅助.消息框("捡完")
break
如果结束
endwhile
功能结束

功能 人物中心坐标(物X,物Y)
    x,y,x2,y2
dm.FindStr(0,82,2000,502,"LV|L|V","ffffff-050505",1.0,x,y)
//找左边的坐标
dm.FindColor(x,y-10,x+95,y+8,"ffffff-050505",1.0,2,x2,y2)
//找色用右向左.确定右边坐标
if(x>0&&x2>0)
   
人物X=x+(x2-x-8)/2
//确定人物中心点X坐标
//****************
人物枪Y
编号=下拉框.得到选项("下拉框0")
选择(编号)
     条件 0:
人物枪Y=y+152-4
    条件  1:
人物枪Y=y+131-4   
选择结束
//人物Y的中心坐标
//注意职业有高低
//***************
距离X=物X-人物X
如果(距离X<0)
距离X=-(距离X)
如果结束
距离Y=物Y-人物枪Y
如果(距离Y<0)
距离Y=-(距离Y)
如果结束
横向=距离X/7
纵向=距离Y/5
//辅助.消息框(横向)
//每50毫秒移动的单位
差Y=物Y-人物枪Y
线程.开启("DNF自动捡物.上下移动",差Y)
//DNF自动捡物.上下移动(差Y)
辅助.等待(60)
DNF自动捡物.左右移动(物X,人物X)

//  把人物移动到物品上面
//开始捡取
intX,intY
for(20)
dm.FindStr(0,60,2000,502,"左框","edef05-404040",1.0,intX,intY)
如果(intX>0)  
  dm.KeyPress(88)  
  //拿一下捡物.跳出循环
    break
否则
  横向=1
DNF自动捡物.左右移动(物X,人物X)
辅助.等待(200)
如果结束
endfor
   //差=辅助.随机数(-10,10)
  //纵向=辅助.随机数(-5,5)
   
   //DNF自动捡物.上下移动(差)

    //辅助.消息框("没找到")
endif
功能结束
//开始按钮_点击操作

功能 上下移动(差)
   
如果(差>0)
     //物品在下面 人物在上面 人物要向下走动
  dm.KeyDown(40)
辅助.等待(50*纵向)
  dm.KeyUp(40)
如果结束

如果(差<0)
     //物品在上面 人物在下面 人物要向上走动
  dm.KeyDown(38)
辅助.等待(50*纵向)
  dm.KeyUp(38)
如果结束

功能结束



功能 左右移动(物X,人X)
如果(物X>人X)
     // 物品 在右 人物在左边 人物要向右走动
  dm.KeyDown(39)
辅助.等待(50*横向)
  dm.KeyUp(39)
如果结束

如果(物X<人X)
     //物品在左 人物在右 人物要向左走动
  dm.KeyDown(37)
辅助.等待(50*横向)
  dm.KeyUp(37)
如果结束
功能结束



   
功能 开始_点击()

线程.开启("DNF自动捡物.找窗口","")


功能结束

//退出按钮_点击操作
功能 退出_点击()

辅助.退出()
功能结束

功能 初始化()
//这里添加你要执行的代码
辅助.注册插件("rc:\\dm.dll",真)
下拉框.设置选项("下拉框0",0)

功能结束


空间结束
//空间结束语句
作者: 幼园留级老油条    时间: 2013-4-18 21:45
冷月
作者: gpqzm5218    时间: 2013-4-18 21:47
例子 唉, 搞不懂啊
作者: gpqzm5218    时间: 2013-4-18 21:50
冷月哥, 快快 为什么你的脚本不用再加个开启的
作者: shine宝宝    时间: 2013-4-18 21:57
DNF自动捡物.人物中心坐标(物坐X,物坐Y)
也是这个开的 只是加了参数
或者用线程啥的
你看帮助文档。。
作者: gpqzm5218    时间: 2013-4-18 21:59
嗯。 看看 感谢




欢迎光临 TC官方合作论坛 (http://bbs.52tc.co/) Powered by Discuz! X3.1