马上加入TC
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
本帖最后由 剑仙十号 于 2023-9-9 05:18 编辑
流程控制。if分支超三个,执行速度会变慢
群主,这种判断耗时有点长,有没有什么好的办法?
.
功能 边缘判断(下标)
变量 地图名, X, Y, 边缘X, 边缘Y
人物坐标(下标, 地图名, X, Y)
//调试输出(X & "," & Y)
地图边缘(下标, 地图名, X, Y, 边缘X, 边缘Y)
//调试输出(Y & "," & 边缘Y)
遍历(变量 i = 0; i < 9; i++)
如果(X < 20 && Y < 15)
调试输出(1)
鼠标移动左击(下标, (X - 20) * 20, (Y - 15) * 20, 真, 400, 250)
跳出
结束
//
如果(X > 边缘X && Y > 边缘Y)
调试输出(2)
鼠标移动左击(下标, (X - 边缘X) * 20, (Y - 边缘Y) * 20, 真, 400, 250)
跳出
结束
如果(X < 20 && Y > 边缘Y)
调试输出(3)
鼠标移动左击(下标, (X - 20) * 20, (Y - 边缘Y) * 20, 真, 400, 250)
跳出
结束
如果(X > 边缘X && Y < 15)
调试输出(4)
鼠标移动左击(下标, (X - 边缘X) * 20, (Y - 15) * 20, 真, 400, 250)
跳出
结束
如果(X < 20)
调试输出(5)
鼠标移动左击(下标, (X - 20) * 20, 0, 真, 400, 250)
跳出
结束
如果(Y < 15)
调试输出(6)
调试输出((Y - 15) * 20)
鼠标移动左击(下标, 0, (Y - 15) * 20, 真, 400, 250)
跳出
结束
如果(X > 边缘X)
调试输出(7)
鼠标移动左击(下标, (X - 边缘X) * 20, 0, 真, 400, 250)
跳出
结束
如果(Y > 边缘Y)
调试输出(8)
鼠标移动左击(下标, 0, (Y - 边缘Y) * 20, 真, 400, 250)
跳出
否则
调试输出(9)
鼠标移动左击(下标, 0, 0, 真, 400, 250)
跳出
结束
结束
//
结束
厚德载物。 20:02:55
if分支,超过三个执行速度会变慢。
箬横4组 20:03:19
那需要用到这么多判断怎么办
厚德载物。 20:04:36
建议分开写,或者用 select( )
厚德载物。 20:10:03
建议分开写
for(var i=0;i<1;i++)
if()
执行
break
end
if()
执行
break
end
if()
执行
break
end
if()
执行
break
end
if()
执行
break
end
if()
执行
break
end
end//for_end
|