TC官方合作论坛
标题:
魔域自动寻路源码
[打印本页]
作者:
312120292
时间:
2018-3-31 13:27
标题:
魔域自动寻路源码
好久没上过论坛了,丢个源码上来。好坏我就不评价了,我读书少,写的差勿喷
功能 自动寻路到(序号,当前X,当前Y,到达X,到达Y)
调试输出("执行移动到:"&到达X&","&到达Y)
变量 游戏距离X,屏幕距离X,比例,BP,OB,角COA,角OBP,OP,角BOP,角POD,OD,DP,点击距离X,点击距离Y,点击X,点击Y,角OPB
变量 角COB,角OAP,原OB,原BP,处理结果,角BOD,pi
pi=4*数学反正切值(1)
游戏距离X=16
屏幕距离X=数学开方(512*512+256*256)
比例=屏幕距离X/游戏距离X
原BP=到达X-当前X
原OB=到达Y-当前Y
OB=数学绝对值(原OB)
BP=数学绝对值(原BP)
处理结果=处理(原OB,原BP)
如果(原BP==0&&原OB==0)
调试输出("人物就在目的地!")
OD=0
DP=0
否则
如果(原BP*原OB>=0)
角COA=数学反正切值(0.5)
角OBP=2*角COA
OP=数学开方(OB*OB+BP*BP-2*BP*OB*数学余弦值(角OBP))
如果(OB>=BP)
角BOP=数学反余弦值((OB*OB+OP*OP-BP*BP)/(2*OB*OP))
角POD=角COA+角BOP
OD=-OP*数学余弦值(角POD)*处理结果
DP=OP*数学正弦值(角POD)*处理结果
否则
角OPB=数学反余弦值((OP*OP+BP*BP-OB*OB)/(2*OP*BP))
角POD=角COA+角OPB
OD=OP*数学余弦值(角POD)*处理结果
DP=OP*数学正弦值(角POD)*处理结果
结束
否则
如果(原BP*原OB<=0)
角BOD=数学反正切值(0.5)
角OBP=pi-2*角BOD
OP=数学开方(OB*OB+BP*BP-2*BP*OB*数学余弦值(角OBP))
如果(OB>=BP)
角BOP=数学反余弦值((OB*OB+OP*OP-BP*BP)/(2*OB*OP))
角POD=角BOD-角BOP
如果(原OB>=0&&原BP<=0)
OD=-OP*数学余弦值(角POD)
DP=OP*数学正弦值(角POD)
否则
OD=OP*数学余弦值(角POD)
DP=-OP*数学正弦值(角POD)
结束
否则
角BOP=数学反余弦值((OP*OP+OB*OB-BP*BP)/(2*OB*OP))
角POD=角BOP-角BOD
如果(原OB>=0&&原BP<=0)
OD=-OP*数学余弦值(角POD)
DP=-OP*数学正弦值(角POD)
否则
OD=OP*数学余弦值(角POD)
DP=OP*数学正弦值(角POD)
结束
结束
结束
结束
点击距离X=取整(OD*比例)
点击距离Y=取整(DP*比例)
点击X=512+点击距离X
点击Y=384+点击距离Y
调试输出("执行点击坐标:"&点击X&","&点击Y)
大漠[序号].MoveTo(点击X,点击Y)
等待(30,50)
大漠[序号].LeftClick()
等待(随机数(300,500))
结束
结束
作者:
312120292
时间:
2018-3-31 20:20
功能 处理(参数1,参数2)
变量 得到=参数1+参数2
如果(得到<0)
返回 -1
否则
如果(得到==0)
返回 0
否则
如果(得到>0)
返回 1
结束
结束
结束
结束
作者:
q979033318
时间:
2018-4-21 01:00
本帖最后由 q979033318 于 2018-4-21 01:07 编辑
我来帮楼上补充一下!有兴趣可以加群:199975725 一起玩玩哟!
我来帮楼上补充一下!有兴趣可以加群:199975725 一起玩玩哟!
最完美的方法是读句柄,这里我就不写了!
紫狼留字____
欢迎光临 TC官方合作论坛 (http://bbs.52tc.co/)
Powered by Discuz! X3.1