|
马上加入TC
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
研究了几个小时
逻辑思维比较容易混乱无确定方向的
WSAD的通用寻路
功能 判断确认X和Y(下标) \\按下W走1秒种判断走动X和Y那个坐标变动大小来确认那个是X和Y坐标并且确定X或者Y坐标的增大或者缩小和方向
变量 坐标X前,坐标X后,坐标Y前,坐标Y后,效果
超模.画图[下标].UseDict(0)
坐标X前=超模.画图[下标].Ocr(865,1,905,15,"d8cfbe-303030",0.9)
坐标Y前=超模.画图[下标].Ocr(925,1,965,15,"d8cfbe-303030",0.9)
超模.画图[下标].keydownchar("w")
辅助.等待(1000)
超模.画图[下标].keyupchar("w")
坐标X后=超模.画图[下标].Ocr(865,1,905,15,"d8cfbe-303030",0.9)
坐标Y后=超模.画图[下标].Ocr(925,1,965,15,"d8cfbe-303030",0.9)
如果(数学.绝对值(坐标Y前-坐标Y后)>=数学.绝对值(坐标X前-坐标X后))
如果(坐标Y前<坐标Y后)
效果=1
否则
效果=2
如果结束
否则
如果(坐标X前<坐标X后)
效果=3
否则
效果=4
如果结束
如果结束
返回 效果
功能结束
功能 确定X和Y后判断方向(下标,效果) \\ 通过上面的代码X或者Y坐标,然后来确定X或者Y坐标的增大或者缩小和方向
变量 坐标X前,坐标X后,坐标Y前,坐标Y后,方向
超模.画图[下标].UseDict(0)
如果(效果==1||效果==2)
坐标X前=超模.画图[下标].Ocr(865,1,905,15,"d8cfbe-303030",0.9)
超模.画图[下标].keydownchar("A")
辅助.等待(1000)
超模.画图[下标].keyupchar("A")
坐标X后=超模.画图[下标].Ocr(865,1,905,15,"d8cfbe-303030",0.9)
如果(坐标X前<坐标X后)
方向=1
否则
方向=2
如果结束
如果结束
如果(效果==3||效果==4)
坐标Y前=超模.画图[下标].Ocr(925,1,965,15,"d8cfbe-303030",0.9)
超模.画图[下标].keydownchar("a")
辅助.等待(1000)
超模.画图[下标].keyupchar("a")
坐标Y后=超模.画图[下标].Ocr(925,1,965,15,"d8cfbe-303030",0.9)
如果(坐标Y前<坐标Y后)
方向=3
否则
方向=4
如果结束
如果结束
返回 方向
功能结束
功能 试炼寻路到指定坐标(下标,目标x,目标y,方向a,方向b) \\ 以下确定那个是 X或者Y的坐标后和确定方向后寻路的代码并且防止人物打转,坐标误差值设置为1
如果(方向a==1&&方向b==1)
变量 坐标x,坐标y
超模.画图[下标].UseDict(0)
循环(真)
坐标x=超模.画图[下标].Ocr(865,1,905,15,"d8cfbe-303030",0.9)
坐标y=超模.画图[下标].Ocr(925,1,965,15,"d8cfbe-303030",0.9)
如果(坐标x!="")
如果(坐标x<目标x)
超模.画图[下标].keyupchar("d")
超模.画图[下标].keydownchar("a")
如果结束
如果结束
如果(坐标x!="")
如果(坐标x>目标x)
超模.画图[下标].keyupchar("a")
超模.画图[下标].keydownchar("d")
如果结束
如果结束
如果(坐标y!="")
如果(坐标y<目标y)
超模.画图[下标].keyupchar("s")
超模.画图[下标].keydownchar("w")
如果结束
如果结束
如果(坐标y!="")
如果(坐标y>目标y)
超模.画图[下标].keyupchar("w")
超模.画图[下标].keydownchar("s")
如果结束
如果结束
如果(坐标x!=""&&坐标y!="")
如果(数学.绝对值(坐标x-目标x)<=1&&数学.绝对值(坐标y-目标y)<=1)
跳出
如果结束
如果结束
循环结束
超模.画图[下标].keyupchar("s")
超模.画图[下标].keyupchar("w")
超模.画图[下标].keyupchar("a")
超模.画图[下标].keyupchar("d")
如果结束
如果(方向a==1&&方向b==2)
变量 坐标x,坐标y
超模.画图[下标].UseDict(0)
循环(真)
坐标x=超模.画图[下标].Ocr(865,1,905,15,"d8cfbe-303030",0.9)
坐标y=超模.画图[下标].Ocr(925,1,965,15,"d8cfbe-303030",0.9)
如果(坐标x!="")
如果(坐标x<目标x)
超模.画图[下标].keyupchar("A")
超模.画图[下标].keydownchar("D")
如果结束
如果结束
如果(坐标x!="")
如果(坐标x>目标x)
超模.画图[下标].keyupchar("D")
超模.画图[下标].keydownchar("A")
如果结束
如果结束
如果(坐标y!="")
如果(坐标y<目标y)
超模.画图[下标].keyupchar("s")
超模.画图[下标].keydownchar("w")
如果结束
如果结束
如果(坐标y!="")
如果(坐标y>目标y)
超模.画图[下标].keyupchar("w")
超模.画图[下标].keydownchar("s")
如果结束
如果结束
如果(坐标x!=""&&坐标y!="")
如果(数学.绝对值(坐标x-目标x)<=1&&数学.绝对值(坐标y-目标y)<=1)
跳出
如果结束
如果结束
循环结束
超模.画图[下标].keyupchar("s")
超模.画图[下标].keyupchar("w")
超模.画图[下标].keyupchar("a")
超模.画图[下标].keyupchar("d")
如果结束
如果(方向a==2&&方向b==1)
变量 坐标x,坐标y
超模.画图[下标].UseDict(0)
循环(真)
坐标x=超模.画图[下标].Ocr(865,1,905,15,"d8cfbe-303030",0.9)
坐标y=超模.画图[下标].Ocr(925,1,965,15,"d8cfbe-303030",0.9)
如果(坐标x!="")
如果(坐标x<目标x)
超模.画图[下标].keyupchar("D")
超模.画图[下标].keydownchar("A")
如果结束
如果结束
如果(坐标x!="")
如果(坐标x>目标x)
超模.画图[下标].keyupchar("A")
超模.画图[下标].keydownchar("D")
如果结束
如果结束
如果(坐标y!="")
如果(坐标y<目标y)
超模.画图[下标].keyupchar("W")
超模.画图[下标].keydownchar("S")
如果结束
如果结束
如果(坐标y!="")
如果(坐标y>目标y)
超模.画图[下标].keyupchar("S")
超模.画图[下标].keydownchar("W")
如果结束
如果结束
如果(坐标x!=""&&坐标y!="")
如果(数学.绝对值(坐标x-目标x)<=1&&数学.绝对值(坐标y-目标y)<=1)
跳出
如果结束
如果结束
循环结束
超模.画图[下标].keyupchar("s")
超模.画图[下标].keyupchar("w")
超模.画图[下标].keyupchar("a")
超模.画图[下标].keyupchar("d")
如果结束
如果(方向a==2&&方向b==2)
变量 坐标x,坐标y
超模.画图[下标].UseDict(0)
循环(真)
坐标x=超模.画图[下标].Ocr(865,1,905,15,"d8cfbe-303030",0.9)
坐标y=超模.画图[下标].Ocr(925,1,965,15,"d8cfbe-303030",0.9)
如果(坐标x!="")
如果(坐标x<目标x)
超模.画图[下标].keyupchar("A")
超模.画图[下标].keydownchar("D")
如果结束
如果结束
如果(坐标x!="")
如果(坐标x>目标x)
超模.画图[下标].keyupchar("D")
超模.画图[下标].keydownchar("A")
如果结束
如果结束
如果(坐标y!="")
如果(坐标y<目标y)
超模.画图[下标].keyupchar("w")
超模.画图[下标].keydownchar("s")
如果结束
如果结束
如果(坐标y!="")
如果(坐标y>目标y)
超模.画图[下标].keyupchar("s")
超模.画图[下标].keydownchar("w")
如果结束
如果结束
如果(坐标x!=""&&坐标y!="")
如果(数学.绝对值(坐标x-目标x)<=1&&数学.绝对值(坐标y-目标y)<=1)
跳出
如果结束
如果结束
循环结束
超模.画图[下标].keyupchar("s")
超模.画图[下标].keyupchar("w")
超模.画图[下标].keyupchar("a")
超模.画图[下标].keyupchar("d")
如果结束
如果(方向a==3&&方向b==3)
变量 坐标x,坐标y
超模.画图[下标].UseDict(0)
循环(真)
坐标x=超模.画图[下标].Ocr(865,1,905,15,"d8cfbe-303030",0.9)
坐标y=超模.画图[下标].Ocr(925,1,965,15,"d8cfbe-303030",0.9)
如果(坐标x!="")
如果(坐标x<目标x)
超模.画图[下标].keyupchar("S")
超模.画图[下标].keydownchar("W")
如果结束
如果结束
如果(坐标x!="")
如果(坐标x>目标x)
超模.画图[下标].keyupchar("W")
超模.画图[下标].keydownchar("S")
如果结束
如果结束
如果(坐标y!="")
如果(坐标y<目标y)
超模.画图[下标].keyupchar("D")
超模.画图[下标].keydownchar("A")
如果结束
如果结束
如果(坐标y!="")
如果(坐标y>目标y)
超模.画图[下标].keyupchar("A")
超模.画图[下标].keydownchar("D")
如果结束
如果结束
如果(坐标x!=""&&坐标y!="")
如果(数学.绝对值(坐标x-目标x)<=1&&数学.绝对值(坐标y-目标y)<=1)
跳出
如果结束
如果结束
循环结束
超模.画图[下标].keyupchar("s")
超模.画图[下标].keyupchar("w")
超模.画图[下标].keyupchar("a")
超模.画图[下标].keyupchar("d")
如果结束
如果(方向a==3&&方向b==4)
变量 坐标x,坐标y
超模.画图[下标].UseDict(0)
循环(真)
坐标x=超模.画图[下标].Ocr(865,1,905,15,"d8cfbe-303030",0.9)
坐标y=超模.画图[下标].Ocr(925,1,965,15,"d8cfbe-303030",0.9)
如果(坐标x!="")
如果(坐标x<目标x)
超模.画图[下标].keyupchar("S")
超模.画图[下标].keydownchar("W")
如果结束
如果结束
如果(坐标x!="")
如果(坐标x>目标x)
超模.画图[下标].keyupchar("W")
超模.画图[下标].keydownchar("S")
如果结束
如果结束
如果(坐标y!="")
如果(坐标y<目标y)
超模.画图[下标].keyupchar("A")
超模.画图[下标].keydownchar("D")
如果结束
如果结束
如果(坐标y!="")
如果(坐标y>目标y)
超模.画图[下标].keyupchar("D")
超模.画图[下标].keydownchar("A")
如果结束
如果结束
如果(坐标x!=""&&坐标y!="")
如果(数学.绝对值(坐标x-目标x)<=1&&数学.绝对值(坐标y-目标y)<=1)
跳出
如果结束
如果结束
循环结束
超模.画图[下标].keyupchar("s")
超模.画图[下标].keyupchar("w")
超模.画图[下标].keyupchar("a")
超模.画图[下标].keyupchar("d")
如果结束
如果(方向a==4&&方向b==3)
变量 坐标x,坐标y
超模.画图[下标].UseDict(0)
循环(真)
坐标x=超模.画图[下标].Ocr(865,1,905,15,"d8cfbe-303030",0.9)
坐标y=超模.画图[下标].Ocr(925,1,965,15,"d8cfbe-303030",0.9)
如果(坐标x!="")
如果(坐标x<目标x)
超模.画图[下标].keyupchar("w")
超模.画图[下标].keydownchar("s")
如果结束
如果结束
如果(坐标x!="")
如果(坐标x>目标x)
超模.画图[下标].keyupchar("s")
超模.画图[下标].keydownchar("w")
如果结束
如果结束
如果(坐标y!="")
如果(坐标y<目标y)
超模.画图[下标].keyupchar("D")
超模.画图[下标].keydownchar("A")
如果结束
如果结束
如果(坐标y!="")
如果(坐标y>目标y)
超模.画图[下标].keyupchar("A")
超模.画图[下标].keydownchar("D")
如果结束
如果结束
如果(坐标x!=""&&坐标y!="")
如果(数学.绝对值(坐标x-目标x)<=1&&数学.绝对值(坐标y-目标y)<=1)
跳出
如果结束
如果结束
循环结束
超模.画图[下标].keyupchar("s")
超模.画图[下标].keyupchar("w")
超模.画图[下标].keyupchar("a")
超模.画图[下标].keyupchar("d")
如果结束
如果(方向a==4&&方向b==4)
变量 坐标x,坐标y
超模.画图[下标].UseDict(0)
循环(真)
坐标x=超模.画图[下标].Ocr(865,1,905,15,"d8cfbe-303030",0.9)
坐标y=超模.画图[下标].Ocr(925,1,965,15,"d8cfbe-303030",0.9)
如果(坐标x!="")
如果(坐标x<目标x)
超模.画图[下标].keyupchar("W")
超模.画图[下标].keydownchar("S")
如果结束
如果结束
如果(坐标x!="")
如果(坐标x>目标x)
超模.画图[下标].keyupchar("S")
超模.画图[下标].keydownchar("W")
如果结束
如果结束
如果(坐标y!="")
如果(坐标y<目标y)
超模.画图[下标].keyupchar("A")
超模.画图[下标].keydownchar("D")
如果结束
如果结束
如果(坐标y!="")
如果(坐标y>目标y)
超模.画图[下标].keyupchar("D")
超模.画图[下标].keydownchar("A")
如果结束
如果结束
如果(坐标x!=""&&坐标y!="")
如果(数学.绝对值(坐标x-目标x)<=1&&数学.绝对值(坐标y-目标y)<=1)
跳出
如果结束
如果结束
循环结束
超模.画图[下标].keyupchar("s")
超模.画图[下标].keyupchar("w")
超模.画图[下标].keyupchar("a")
超模.画图[下标].keyupchar("d")
如果结束
功能结束
功能 测试寻路(下标,X,Y) \\这就是测试寻路
变量 方向x,方向y
方向a=功能集.判断确认X和Y(下标) \\确定X或者Y坐标和并且确定坐标增大或者缩小的方向
方向b=功能集.确定X和Y后判断方向(下标,方向a) 根据确定X或者Y来确定方向并且确定坐标增大或者缩小的方向
功能集.试炼寻路到指定坐标(下标,X,Y,方向a,方向b)
功能结束
|
|