随机传火
现在大体框架已经有了,但是,我们还没处理一些特别的情况:例如,当玩家死亡时,或者玩家退出游戏,导致“火”不见了的时候,我们需要将“火”随机给一名玩家。和上面一样,我们使用持续事件+条件。
我们的条件应该是,当所有玩家都没有火的时候。换句话说,就是有火的玩家数量=0的时候。游戏并不能直接获取到有火的玩家,但我们可以利用“已过滤的数组”来做到这一点:我们从所有存活玩家里,筛选出有火的玩家,不就可以了?
换成条件,就应该这样写:数量(已过滤的数组(所有存活玩家, 具有状态(当前数组元素, 被点燃))) == 0。(如果这条规则你不太看得懂,请尝试把括号拆开,从里到外,结合手册,一点一点看)
动作则是从存活玩家里面,随机选择一个玩家,让他有“火”。同样的,我们又要用到“数组”了:
设置全局变量(A, 数组随机取值(所有存活玩家(所有队伍)))
设置状态(全局变量(A), 点燃)
开始持续伤害(全局变量(A), 无, 9999, 50)
设置玩家变量(全局变量(A), A, 上一个持续伤害效果ID)
最终规则如下:
修复问题:死亡掉火
现在邀请几个好友,或者多开账号进入游戏。开始一局游戏。你们愉快的传火中,有一名玩家阵亡了。但是,你们发现,“火”并没有传给下一个人。房主打开“地图工坊查看器”一看,哎?随机传火的规则怎么没有运行呢?
原来,死亡是不会自动掉火的,我们还需要手动处理它:
事件:玩家阵亡
具有状态(事件玩家, 点燃) == 真
“掉火”其实就是把状态去掉,所以动作也很简单,基本上就是上面的规则复制粘贴:
清除状态(事件玩家, 点燃)
停止持续伤害(玩家变量(事件玩家, A))
最终规则如下:
总结
通过几条规则,我们就写出了一个简单的“烫手山芋”模式。相信你也发现了,这并不是什么难事。你需要的,只是把一件事变成一件件小事,然后用规则来完成它。
以上就是为大家带来的守望先锋地图工坊的新手使用教程,大家可以去游戏中试试哦。