TC官方合作论坛

标题: 循环打怪 必须和绑定窗口写在一起? [打印本页]

作者: dy喳    时间: 2013-8-21 21:56
标题: 循环打怪 必须和绑定窗口写在一起?
科普一下啊,就几个问题,明白我就采纳,很快的。
写了一个循环打怪的脚本,但是问题很多。游戏窗口绑定了gdi DX DX 后
1.绑定窗口和循环找图打怪 必须写在一个功能中吗? 说白了就是绑定后加上无限死循环,
要在绑定后加死循环,为什么??
2.如果把绑定 和 循环找图打怪写在一起就能正常打怪了,
3.分开写的情况下,窗口应该一直是高亮的,但是“会变灰”,根本无法操作打怪,奇怪了。


作者: sugar987009    时间: 2013-8-21 22:06
不用非得写在一个功能里  只要你用好线程调用 让他们执行顺序不乱就可以了 至于怎么写 条条大路通罗马 全凭借个人习惯了 至于你说的加死循环 基本上很少会是真正的写成死循环的 一般都因为一些条件的判断 来跳出循环 执行下一个功能 当然 如果你只想无限的打怪 那想写死循环也没错  回答你2 3问题 一般情况下 你绑定窗口使用后台  根本不用考虑焦点是否在窗口上 遮挡 捣乱 都不会影响脚本的正常运行
作者: dy喳    时间: 2013-8-21 22:17
回复 2楼sugar987009的帖子

你说的这些我都知道啊,奇怪的是只有在 绑定内写上死循环, 才能执行正常的后台打怪,
不写就是不执行了。 还会有其他的原因吗。
作者: sugar987009    时间: 2013-8-21 22:21
我真不想说 你连个代码都没有 你让我用猜的么
作者: dy喳    时间: 2013-8-21 22:32
回复 4楼sugar987009的帖子

代码都要发烂了。。。
去掉(红字)窗口绑定后就是残废,加上就能正常后台打怪。
空间 打怪
绑定句柄,打怪句柄,
    功能 绑定()
    dm.SetPath(help.getrcpath("rc:"))
    窗口句柄=窗口.找到窗口("","xxx")
    辅助.等待(200)
    窗口.设置位置(窗口句柄,-1,-1)      
     判断=dm.BindWindow(窗口句柄,"gdi","windows","dx",0)
    辅助.等待(50)
循环(真)
XXXXXXXXXXX
循环结束
    功能结束

作者: sugar987009    时间: 2013-8-21 22:41
最后一次回你  你那循环里边写的肯定是找图打怪命令 你真心在这调戏人玩呢  你不写找图打怪的代码 也就是你说那红字  那脚本会自动给你打怪? 我从没听说绑定上窗口以后 就可以坐着喝茶 看脚本给你打怪的 你做梦呢吧
作者: dy喳    时间: 2013-8-21 22:48
回复 6楼sugar987009的帖子

里面是找图打怪的脚本,我的意思你还是没明白,
如果我把 红字去掉。
在下面新建一个功能,然后在红字地方加上开启自动打怪线程,。。这个时候脚本不执行打怪的,
我没要写空代码

就是说绑定和打怪不能分开写,分开就不打怪看, 虽然分开写了,但是还调用了,也不是没写啊 差点被你说晕了

作者: jianqiumy    时间: 2013-8-22 04:59
回复 7楼dy喳的帖子

本想说几句
看你解决了就不说了~~
作者: dy喳    时间: 2013-8-22 08:10
回复 8楼jianqiumy的帖子

请说吧,我昨天被搞晕了才 点了 采纳,最近感冒了。
现在新手就缺人点化一下啊
作者: wyn0918    时间: 2013-8-22 10:46
回复 9楼dy喳的帖子

绑定和打怪不必在一个功能里面,但是必须在一个空间里面。我用TS是这样
作者: jianqiumy    时间: 2013-8-22 10:52
你要是绑定后能正常打怪,反而用线程开启调.用涵数不行,应该你没有传对象过去!
其实楼上的意思是想看看打怪的代码,方便帮你分析。
你发那点代码本来就没头没尾!至少我没看到你在那创建对象,是局部还是全局对象?
这样别人回你的问题就有难道了
作者: dy喳    时间: 2013-8-22 13:06
回复 11楼jianqiumy的帖子

代码就是这么少啊,红色部分是循环找图打怪的操作。 不会错的,
1.写在一起能执行。 分开写就不行了,
2.还有一个问题是,分开写后,如果在加上一个按钮“停止打怪”,游戏窗口就会无辜解绑了。
线程.关闭(打怪句柄)  愁人

空间 自动打怪
绑定,打怪句柄,
    功能 绑定()
    dm.SetPath(help.getrcpath("rc:"))
    窗口句柄=窗口.找到窗口("","xxx")
    辅助.等待(200)
    窗口.设置位置(窗口句柄,-1,-1)      
     判断=dm.BindWindow(窗口句柄,"gdi","windows","dx",0)
    辅助.等待(50)
循环(真)
XXXXXXXXXXX
循环结束


功能 开始_点击()
    打怪句柄=线程.开启("绑定.自动打怪","")

功能结束
功能结束
空间结束
===============================
这是分开写的代码
空间 自动打怪
绑定,打怪句柄,
    功能 绑定()
    dm.SetPath(help.getrcpath("rc:"))
    窗口句柄=窗口.找到窗口("","xxx")
    辅助.等待(200)
    窗口.设置位置(窗口句柄,-1,-1)      
     判断=dm.BindWindow(窗口句柄,"gdi","windows","dx",0)
    辅助.等待(50)
打怪句柄=线程.开启("打怪.自动打怪","")
功能结束

功能 打怪()
循环(真)
XXXXXXXXXXX
循环结束
功能结束


功能 开始_点击()
    绑定=线程.开启("绑定.自动打怪","")

功能结束
空间结束


作者: jianqiumy    时间: 2013-8-22 16:04
回复 12楼dy喳的帖子

你不创建对象吗?
你对象是全局还是局部?dm=com("dm.dmsoft")


作者: dy喳    时间: 2013-8-22 18:59
回复 13楼jianqiumy的帖子

被我简化了,写的我没贴出来
看代码有问题吗
作者: jianqiumy    时间: 2013-8-22 21:12
回复 13楼jianqiumy的帖子

被我简化了,写的我没贴出来
看代码有问题吗
dy喳 发表于 2013-8-22 18:59:17

当然是你代码有问题了~~只是你不放出来,还真没人帮到你!!基本的代码都没看到,只有你自己知道了





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