TC官方合作论坛

 找回密码
 立即注册
查看: 3663|回复: 11

[问题] 【新手求助】大漠后台读取坐标问题,还请大家不吝赐教~(未解决,等待大神中)

[复制链接]
发表于 2012-2-23 22:55:10 | 显示全部楼层 |阅读模式

马上加入TC

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
我想在程序中加入一个不停读游戏坐标的功能,用于判断人物是在运动过程中还是已经到目的地了。
因为代码较多就没有全部贴上来,下面只贴了读坐标的功能。
以下代码可以正常运行2-3次,也就是正确读出坐标2-3次,能读出坐标说明语句没问题哦..........之后TC程序就没有响应了(就是死掉了,鼠标放在程序界面上呈漏斗状)。刚开始以为延时太短,可是下面代码中的延时之和已经达到3秒了,延时再长也就失去意义了。还请高手指点到底哪里出现问题了,谢谢~~~~~~~~

工具版本信息:
TC:2.1
大漠:3.1208B

以下为代码:
-----------------------------------------------------------------------------------------------
功能 逻辑型 读坐标()
//这里添加你要执行的代码
字符型 坐标
标签.设置文本("标签0","开始找坐标!")  
dm.SetDict(0,"坐标.txt")
     循环(真)
            坐标 = dm.Ocr(1321,6,1382,15,"0.0.85-0.0.20",1.0)
            辅助.等待 (1000)
            标签.设置文本("标签2",坐标)
            辅助.等待 (2000)
            标签.设置文本("标签2","开始找坐标!")  
    循环结束
返回 真
//函数返回语句   
功能结束           
------------------------------------------------------------------------------------------------

经测试,上述代码中,将    坐标 = dm.Ocr(1321,6,1382,15,"0.0.85-0.0.20",1.0)              替换为            坐标 = ”123456“     可以正常运行,并在标签中循环显示 ”123456“ 。

是不是TC的循环语句,和大漠的OCR函数之间,有些什么问题呀??

郁闷了.........                                                                                                                                                                                                                                                                                            








回复

使用道具 举报

 楼主| 发表于 2012-2-23 23:28:47 | 显示全部楼层
是不是太晚了,大家都去呼呼了?...................
或者谁能给我一个不读坐标来判断人物是运动或者静止的思路?相同点找色判断容易错误判断,就不用了。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-2-24 00:08:18 | 显示全部楼层
:-|  编程序卡在这里了  好痛苦呀
回复 支持 反对

使用道具 举报

发表于 2012-2-24 00:39:33 | 显示全部楼层
没必要挂一死循环吧,
写个判断?

回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-2-24 00:45:14 | 显示全部楼层
这个功能循环正常了,我就会加判断语句,如果某段时间内坐标相同就跳出循环,执行其他功能。问题是现正常在循环2次后,就死掉了。按道理应该一直循环下去的,感觉好像是什么没释放,循环2次后就不行了.....
回复 支持 反对

使用道具 举报

发表于 2012-2-24 01:03:36 | 显示全部楼层
回复 5楼sunfield的帖子

你有没有试过把其他代码先注释掉,单独运行这个序列呢?
着重调试下,如果还是不行,可以去了循环加上判断在测试呢?
循环正常了加判断和现在加判断没所谓,即使稳定后加判断,那也得调试吧?
只要稳定就好。
回复 支持 反对

使用道具 举报

发表于 2012-2-24 01:07:09 | 显示全部楼层
建议不要死循环,先把跳出循环条件写好。。。TC主线程死循环就会这样
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-2-24 01:22:36 | 显示全部楼层
改成循环3次或以上,效果一样,都是前两次正常,第三次开始死 。如下面:
----------------------------------------------------------------------
功能 逻辑型 读坐标()
//这里添加你要执行的代码
字符型 坐标
字符型 a
a=5
标签.设置文本("标签0","开始找坐标!")  
dm.SetDict(0,"坐标.txt")
     循环(a>0)
            坐标 = dm.Ocr(1321,6,1382,15,"0.0.85-0.0.20",1.0)
            辅助.等待 (1000)
            标签.设置文本("标签2",坐标)
            辅助.等待 (2000)
a=a-1
            标签.设置文本("标签2","开始找坐标!")  
    循环结束
返回 真
//函数返回语句
功能结束
回复 支持 反对

使用道具 举报

发表于 2012-2-24 01:59:30 | 显示全部楼层
回复 8楼sunfield的帖子

还在呢没?帮我看组代码?
<script type="text/javascript">
var total=0;
function check(mon){
  var mo=Number(mon);
  document.getElementById("sum").value=total+=mo;
}  
</script>
<input type="text" onBlur="check(this.value);">
<input type="text" onBlur="check(this.value);">
<input type="text" onBlur="check(this.value);">
<input type="text" onBlur="check(this.value);">
结果:<input type="text" id="sum" size="12" >

能用TC解释下?
回复 支持 反对

使用道具 举报

发表于 2012-2-24 09:15:32 | 显示全部楼层
这个很有用处,可惜还没人能解决这个问题
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条

关闭

小黑屋|TC官方合作论坛 (苏ICP备18045623号)

GMT+8, 2024-9-29 05:53 , Processed in 0.042088 second(s), 23 queries .

Powered by 海安简单软件服务部

© 2008-2019 版权所有 保留所有权利

快速回复 返回顶部 返回列表