魔兽编辑器基础技能制作(六)--不重复获得物品

如何让英雄不能同时拥有两件相同的物品?这就是我们这一篇技能制作里需要解决的问题。

工具/原料

YDWE魔兽地图编辑器或其他WE

思路

英雄在捡起物品的时候判断英雄身上是否存在相同类型的物品,如果是,则命令英雄丢掉刚捡起的物品。看,多简单明了的思路啊!

下面开始写触发(捡起物品后以此判断身上的物品栏是否有与该物品相同的物品,如果有则丢弃捡到的物品):

结果发现失败了,英雄居然捡什么就丢什么!

改良

上面的方法不行,原因在于捡起的物品也会符合触发里的条件,即怎么都有一个与其相同的物品在身上。这个物品必须要被排除在外,所以还需要在触发里加一个限制条件。

测试后发现可以实现我们想要的效果了。不过又存在一个小问题,就是当不断快速右键捡起物品时,还是能捡起多个物品的,这又是为什么?

原因在于上面用的是单位--丢弃物品的命令,这个动作是要时间来完成的,当捡起物品的手速快于这个丢弃的命令速度时就能捡起多个物品了。所以还需要再改良!

再次改良

这次不用丢弃物品的命令,改为直接删除重复物品,再创建一个新的物品在英雄位置。完整触发图如下:

再次测试,上面的小问题消失了,同类物品永远都只能有一个,目的达成!

另外的方法

另一种方法是通过用整数记录英雄身上的物品个数,当这个整数=2时,删除捡到的物品创建新物品在英雄位置(即丢弃)。完整触发图如下:

本文内容整理自网络, 文中所有观点看法不代表淘大白的立场