守望先锋地图工坊零基础入门教程 守望先锋地图工坊( 三 )


官方文档中有这样的解释:“当首次检查就满足条件时,则会执行行动 。当未满足条件列表,但之后又满足时,则会尝试再次执行行动” 。
因此,我们上面的规则,实际上就是:当玩家阵亡的时候,游戏就会等——等到玩家复活,然后做相应的动作 。之后玩家又阵亡了,游戏又会继续等 。不断重复上述的过程 。
类似的,我们现在要编写一个规则,能响应不在地板上的玩家按互动键(F),那么我们就可以这样写
事件:持续 - 每名玩家
条件:
在地面上(事件玩家) == 假
按钮被按下(事件玩家, 互动) == 真
动手做一个模式 。
通过上面的文章,我们已经知道了如何编写规则 。但相信你还不知道如何编写一个简单的玩法 。不知道大家是否玩过有“守望传火”之称的“烫手山芋”模式?这里,我们就以此模式为例子 。
注意:因为本文是一篇教程文章,所以不会完整覆盖整个游戏模式 。

守望先锋地图工坊零基础入门教程 守望先锋地图工坊

文章插图
守望先锋地图工坊零基础入门教程 守望先锋地图工坊

文章插图
传火
我们想想这个模式是怎么玩的?带着“火”的玩家通过攻击别的玩家(不论是何种方式),就可以把“火”传给别人 。
那么,这个过程用规则怎么描述?我们可以这样说:当一名玩家受到伤害,并且他自己没有火,但是攻击他的玩家有火的时候,就把火传给这名玩家 。
从上面的描述不难看出,我们应该选择“玩家受到伤害”事件 。但是,我们如何知道玩家有没有“火”呢?不知道大家是否记得艾什的“延时雷管”——我们可以用点燃状态来表示火 。通过翻阅手册,我们可以找到“具有状态”和“设置状态”、“清除状态”几个东西 。这样,我们就可以把条件组合出来 。
条件是受伤的玩家没有火,而攻击方有火 。因为我们使用了“玩家受到伤害”事件,因此,我们使用“事件玩家”表示前者,“攻击方”表示后者 。条件便是:
具有状态(事件玩家, 点燃) == 假
具有状态(攻击方, 点燃) == 真
动作是把火“传给”另一名玩家 。“传”的过程,又分为一名玩家“失去”火,和一名玩家“得到”火 。因此,规则有两条:
设置状态(事件玩家, 无, 点燃, 9999)
清除状态(攻击方, 点燃)
另外,“点燃”只是效果——能看不能用,所以,我们还得再加上一个“伤害”的动作:
开始持续伤害(事件玩家, 无, 9999, 50)
设置玩家变量(事件玩家, A, 上一个持续伤害效果ID)
停止持续伤害(玩家变量(攻击方, A))
这里我们用到了变量 。大家可以结合上面的变量小节,想一想为什么要这样做 。(PS:你可以把变量想象成一个“盒子”,设置就是往“盒子”里放东西)
最终的规则如图所示:
守望先锋地图工坊零基础入门教程 守望先锋地图工坊

文章插图
加分
俗话说“万事开头难” 。既然我们已经把最基本的东西做出来了,那么我们就可以做下一个东西了:胜利判断 。我们的逻辑是:剩下一名玩家的时候,就给这名玩家加一分 。
我们不知道什么时候会剩下一名玩家——可能是某位玩家死亡后,但也可能是某位玩家退出游戏后 。我们没办法确定到底是什么时候,但我们条件非常清楚:只剩下一名活着的玩家 。因此,我们使用持续事件+条件来做这件事 。我们翻阅手册,可以找到一个叫做“存活玩家数量”的值 。我们直接使用它:

相关经验推荐