|
马上加入TC
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
空间 tl
//---------------------------------插件变量---------------------------------//
dm
//---------------------------------数组变量---------------------------------//
窗口句柄数组=数组[],dm数组=数组[],任务线程=数组[]
//---------------------------------开关变量---------------------------------//
是否重定义=真,检测开关=真
//---------------------------------其他变量---------------------------------//
Index=0
//---------------------------------热键开启---------------------------------//
功能 开启_热键()
tl.启动()
功能结束
//---------------------------------程序启动---------------------------------//
功能 启动()
变量 窗口句柄
窗口句柄 = tl.获取窗口句柄()
如果(窗口句柄 > 0)
tl.窗口绑定(窗口句柄)
如果结束
功能结束
//---------------------------------获取窗口---------------------------------//
功能 获取窗口句柄()
变量 窗口句柄, 数组下标
dm=com("dm.dmsoft")
窗口句柄 = dm.GetForegroundWindow()
如果(窗口句柄 > 0)
//对数组进行重定义
如果(是否重定义)
窗口句柄数组 = 数组空间.重定义(窗口句柄数组, 真, Index+1)
dm数组 = 数组空间.重定义(dm数组, 真, Index+1)
任务线程 = 数组空间.重定义(任务线程, 真, Index+1)
如果结束
//查看是否已经已经绑定了
数组下标 = 数组空间.查找(窗口句柄数组,窗口句柄)
如果(数组下标==-1)
//说明没有绑定过
窗口句柄数组[Index] = 窗口句柄
返回 窗口句柄
否则
返回 -1
如果结束
否则
返回 -1
如果结束
功能结束
//---------------------------------窗口绑定---------------------------------//
功能 窗口绑定(窗口句柄)
变量 dm_ret, 错误码, 下标, 长度
//获取传入参数 在窗口句柄数组中的下标
下标 = 数组空间.查找(窗口句柄数组,窗口句柄)
//开始创业大漠对象
dm数组[下标] = com("dm.dmsoft")
dm数组[下标].SetPath(辅助.获取资源路径("rc:")) //设置资源路径
//dm数组[下标].SetDict(0,"dm_soft.txt") //设置字库
//dm数组[下标].SetDict(0,"神鬼坐标字库.txt") //活动字库
//绑定窗口
dm_ret = dm数组[下标].BindWindow(窗口句柄,"gdi","windows","windows",0)
如果(dm_ret == 1)
//绑定成功
tl.系统报警()
//开启线程
任务线程[下标] = 线程.开启("tl.任务线程",下标)
Index = Index + 1
//错误判断机制
数组空间.大小(窗口句柄数组, 长度)
如果(Index != 长度)
Index = 长度
如果结束
是否重定义 = 真
否则
错误码 = dm数组[下标].GetLastError()
辅助.消息框("[主窗口绑定] 失败","提示")
如果结束
功能结束
//---------------------------------任务线程---------------------------------//
功能 任务线程(下标)
变量 延迟,坐标集="85,133|85,133"
延迟 = 辅助.随机数(200,300)
tl.关闭聊天窗口(下标)
辅助.等待(延迟)
tl.是否组队(下标,延迟)
辅助.等待(延迟)
tl.坐标分析(下标,延迟,坐标集)
功能结束
//---------------------------------坐标分析---------------------------------//
功能 坐标分析(下标,延迟,坐标集)
路线数组,c1,坐标
字符串.分割(坐标集,"|",路线数组)
数组空间.大小(路线数组,c1)
遍历(i=0 ; i<c1 ; i++)
字符串.分割(路线数组[i],",",坐标)
tl.移动人物(下标,延迟,坐标[0],坐标[1])
辅助.等待(延迟)
遍历结束
功能结束
//---------------------------------移动人物---------------------------------//
功能 移动人物(下标,延迟,目标x,目标y)
坐标数组, 当前x,当前y,大小
解锁x=1,解锁y=1
dm数组[下标].KeyPress(192)
dm数组[下标].SetDict(0,"神鬼坐标字库.txt") //坐标字库
当前坐标=dm.Ocr(930,15,990,30,"aaa99d-3e3d39",1.0)
字符串.分割(当前坐标,",",坐标数组)
数组空间.大小(坐标数组,大小)
当前x=坐标数组[0]
当前y=坐标数组[1]
如果(当前x>目标x)//往左
dm数组[下标].KeyDown(65)
如果结束
如果(当前x<目标x)//往右
dm数组[下标].KeyDown(68)
如果结束
如果(当前y>目标y)//往上
dm数组[下标].KeyDown(87)
如果结束
如果(当前y<目标y)//往下
dm数组[下标].KeyDown(83)
如果结束
循环(!(当前x==目标x && 当前y==目标y))
当前坐标=dm.Ocr(930,15,990,30,"aaa99d-3e3d39",1.0)
如果(字符串.查找字符串(当前坐标,",")<0)
辅助.等待(延迟)
继续
如果结束
字符串.分割(当前坐标,",",坐标数组)
当前x=坐标数组[0]
当前y=坐标数组[1]
如果(当前x>目标x && 解锁x==0)//往左
dm数组[下标].KeyDown(65)
解锁x=1
如果结束
如果(当前x<目标x && 解锁x==0)//往右
dm数组[下标].KeyDown(68)
解锁x=1
如果结束
如果(当前y>目标y && 解锁y==0)//往上
dm数组[下标].KeyDown(87)
解锁y=1
如果结束
如果(当前y<目标y && 解锁y==0)//往下
dm数组[下标].KeyDown(83)
解锁y=1
如果结束
如果(当前y == 目标y)//松开上下
dm数组[下标].KeyUp(83)
dm数组[下标].KeyUp(87)
解锁x=0
如果结束
如果(当前x == 目标x)//松开左右
dm数组[下标].KeyUp(65)
dm数组[下标].KeyUp(68)
解锁y=0
如果结束
辅助.等待(延迟)
循环结束
功能结束
//----------------------------------初始化----------------------------------//
功能 初始化()
功能结束
//---------------------------------程序退出---------------------------------//
功能 退出_点击()
辅助.退出()
功能结束
//---------------------------------程序关闭---------------------------------//
功能 tl_关闭()
辅助.退出()
功能结束
//-------------------------------关闭聊天窗口-------------------------------//
功能 关闭聊天窗口(下标)
x,y
标记1:
dm数组[下标].FindPic(1,669,121,769,"关闭聊天窗口1.bmp","000000",0.9,0,x,y)
如果(x>0 && y>0)
dm数组[下标].MoveTo(x,y)
辅助.等待(100)
dm数组[下标].LeftClick()
辅助.等待(300)
跳转 标记1
如果结束
功能结束
//---------------------------------关闭窗口---------------------------------//
功能 关闭窗口(下标,延迟)
变量 x, y
dm数组[下标].FindPic(8,9,1022,766,"关闭1.bmp|关闭2.bmp|关闭3.bmp", "000000", 0.9, 0, x, y)
dm数组[下标].MoveTo(x,y)
辅助.等待(延迟)
dm数组[下标].LeftClick()
tl.鼠标归位(下标)
功能结束
//---------------------------------是否组队---------------------------------//
功能 是否组队(下标,延迟)
x,y
dm数组[下标].FindPic(0,0,271,102,"是否组队1.bmp","000000",0.9,0,x,y)
如果(x<1&&y<1)
dm数组[下标].KeyPress(84)
辅助.等待(延迟)
辅助.等待(延迟)
dm数组[下标].MoveTo(237,153)
辅助.等待(延迟)
dm数组[下标].LeftClick()
辅助.等待(延迟)
dm数组[下标].MoveTo(751,438)
辅助.等待(延迟)
dm数组[下标].LeftClick()
辅助.等待(延迟)
dm数组[下标].KeyPress(84)
如果结束
tl.关闭聊天窗口(下标)
tl.关闭窗口(下标,延迟)
功能结束
//---------------------------------鼠标归位---------------------------------//
功能 鼠标归位(下标)
dm数组[下标].MoveTo(23,696)
功能结束
//---------------------------------系统报警---------------------------------//
功能 系统报警()
变量 系统版本
系统版本 = 系统.版本()
如果(系统版本 == 2)
//xp系统
辅助.蜂鸣(800,300)
否则
如果(系统版本 == 5 || 系统版本 == 6)
//win7系统
辅助.播放(辅助.获取资源路径("rc:msg.wav"))
如果结束
如果结束
功能结束
//---------------------------------空间关闭---------------------------------//
空间结束
117行 为什么会数组越界呀?? 奇怪了,, 不懂了,, 请教!!!!
|
|