|
7#

楼主 |
发表于 2019-6-15 15:34:48
|
只看该作者
.版本 2
.子程序 范围吸附
.参数 吸附距离, 小数型
.参数 正弦, 小数型
.参数 余弦, 小数型
.局部变量 团队基址, 整数型
.局部变量 自己坐标, 坐标型
.局部变量 敌人坐标, 坐标型
.局部变量 差距, 坐标型
.局部变量 A, 整数型
.局部变量 职业, 整数型
团队基址 = 内存读整数 (内存读整数 (人物基址) + 252) + 1152
.判断循环首 (是否自己 () = 1)
.如果真 (内存读整数 (团队基址) < 65536)
跳出循环 ()
.如果真结束
敌人坐标.x = 内存读小数 (内存读整数 (团队基址) + 112)
敌人坐标.y = 内存读小数 (内存读整数 (团队基址) + 116)
敌人坐标.z = 内存读小数 (内存读整数 (团队基址) + 120)
自己坐标.x = 内存读小数 (内存读整数 (人物基址) + 112)
自己坐标.y = 内存读小数 (内存读整数 (人物基址) + 116)
自己坐标.z = 内存读小数 (内存读整数 (人物基址) + 120)
差距.x = 自己坐标.x - 敌人坐标.x
差距.y = 自己坐标.y - 敌人坐标.y
差距.z = 自己坐标.z - 敌人坐标.z
.如果 (求平方根 (差距.x × 差距.x + 差距.y × 差距.y + 差距.z × 差距.z) < 吸附距离)
职业 = 取职业 (团队基址)
.如果 (内存读整数 (内存读整数 (内存读整数 (内存读整数 (人物基址) + 904) + 552) + 532) = 内存读整数 (内存读整数 (内存读整数 (内存读整数 (团队基址) + 904) + 552) + 532) 或 内存读小数 (内存读整数 (团队基址) + 796) = -1 或 职业 = #炮台 或 职业 = #补给 或 职业 = #入口 或 职业 = #出口 或 职业 = #盾 或 职业 = #集体入口 或 职业 = #集体出口 或 职业 = #油罐车 或 内存读整数 (内存读整数 (团队基址) + 1476) = 1)
.否则
.如果 (内存读小数 (内存读整数 (团队基址) + 796) ≤ 0)
内存写小数 (内存读整数 (团队基址) + 120, 自己坐标.z - 500)
.否则
内存写小数 (内存读整数 (团队基址) + 120, 自己坐标.z)
内存写小数 (内存读整数 (团队基址) + 112, 自己坐标.x + 余弦 × 40)
内存写小数 (内存读整数 (团队基址) + 116, 自己坐标.y + 正弦 × 40)
.如果结束
.如果结束
.否则
.如果结束
团队基址 = 内存读整数 (团队基址) + 548
.判断循环尾 ()
|
|