如何检测任意城镇被攻占?
我想弄一张图,一个族是地狱,只有3个BOSS型英雄。它的城全在地下,别人进不去,它可以通过单向门出来。当它在地面攻占一座城时,如果城镇类型不是地狱,那么会自动把城分配给它的手下玩家。
但是昨天晚上翻了一遍ERM帮助V2.06 没找到任何检测该事件。
于是我另一种方法,就是每回合检测玩家所有城镇,如果不是地狱就改变所属,但是又有问题。
!#TM99:S1/999/1/255;
!?TM99&1000;
!!OW:W0/?y1; 获得红色的城镇总数
!!DO644/0/y1/1:P; 遍历所有城镇
!?FU644;
!!OW:W0/x16/?y2;获得红色城镇在地图上的编号
!!CA0/y2:T?y3; 获得该编号城镇的类型
!!CA0/y2&y3<>3:O2;如果不是地狱,那么改变所属为褐色
结果进游戏报错,说范围超了。
所以我最终想问的是:
1.如何检测任意城镇被占事件
2.如果上面的无法检测,那么如何循环检测某玩家的城镇? 战斗后触发
检查战斗地点目标类型(用v998、v999、v1000)
不是城镇终止
检查城镇类型
做你爱做的事。
[ 本帖最后由 fastarrow 于 2012-12-20 13:32 编辑 ] 原帖由 fastarrow 于 2012-12-20 13:28 发表 http://www.h3wog.com/images/common/back.gif
战斗后出发
检查战斗地点目标类型(用v998、v999、v1000)
不是城镇终止
检查城镇类型
做你爱做的事。
哦耶谢谢! 原帖由 fastarrow 于 2012-12-20 13:28 发表 http://www.h3wog.com/images/common/back.gif
战斗后触发
检查战斗地点目标类型(用v998、v999、v1000)
不是城镇终止
检查城镇类型
做你爱做的事。 还是有问题,如果不发生战斗那就检测不到了。
所以感觉还是应该用循环城镇来做。但是我之前写的有错误……
回复 4# 的帖子
你可以让它必须发生战斗。或者试试!?OB触发,但!?OB触发对人类玩家来说,容易造成自己访问自己,AI不知道,没试过。再给你个遍历城堡脚本做参考
!?FU28998&x1=1000;!!UN:U98/-1/?y10; 计算城堡数量
!!DO28998/1/y10/1:P1001;循环调用函数
!?FU28998&x1=1001;
!!VRv51:C-1/-1/-1; 变量初始化
!!UN:U98/-1/x16/51; 获取城镇坐标
!!CA51:O?y10;
!!FU&y10<>0:E;
!!CA51:B3/43; 检查是否建造
!!CA51&1:B2/43; 建造则拆毁
!!CA51:B5/43; 禁止建造
!!CA51:B3/36; 检查是否建造
!!CA51&1:B2/36; 建造则拆毁
!!CA51:B5/36; 禁止建造
***其他城镇*** 原帖由 fastarrow 于 2012-12-20 14:12 发表 http://www.h3wog.com/images/common/back.gif
你可以让它必须发生战斗。或者试试!?OB触发,但!?OB触发对人类玩家来说,容易造成自己访问自己,AI不知道,没试过。
这样看来也不需要设定发生战斗了。只要红色方位了一个红色非低于城镇,直接改变所属。
但是如何检测访问的物体是城镇呢?手册里,OB类型只有随机城镇这个类型啊。
原帖由 fastarrow 于 2012-12-20 14:21 发表 http://www.h3wog.com/images/common/back.gif
!?FU28998&x1=1000;
!!UN:U98/-1/?y10; 计算城堡数量
!!DO28998/1/y10/1:P1001;循环调用函数
!?FU28998&x1=1001;
!!VRv51:C-1/-1/-1; 变量初始化
!!UN:U98/-1/x16/51; 获取城 ...
还是用这个吧,感觉这个方便;hap;
[ 本帖最后由 异界行者 于 2012-12-20 14:24 编辑 ]
回复 7# 的帖子
!?OB98&-1000;AI访问城堡时触发。连检查是否城镇都省了。 原来帮助手册里
98 塔楼
这个翻译错误……
我说怎么找不到城镇,只找到 77 随机城镇
回复 9# 的帖子
但是AI要是不访问城堡呢?打下来之后直接跑了,根本没进城。 原帖由 fastarrow 于 2012-12-20 14:29 发表 http://www.h3wog.com/images/common/back.gif但是AI要是不访问城堡呢?打下来之后直接跑了,根本没进城。
所以两个都检测。战斗检测+访问检测
页:
[1]