gamemaker studiostudio2回合制战斗怎么制作

可选中1个或多个下面的关键词搜索相关资料。也可直接点“搜索资料”搜索整个问题

你对这个回答的评价是?

}

[求教]请问基于回合制的buff和debuff的实现是否有比较便捷的方式?

如题个人在尝试做一款基于回合制的游戏,因为会涉及到大量的buff和debuff按照我目前粗略的想法,是在player和enemy的parent的create event中創建个名为buff的ds_map并在step event中检测ds_map是否包含某项buff,如atk_updef_up等,当然某些角色特有的buff会放在具体的obj的step里然后具体呈现在角色上的特效,就在draw事件里判断并绘制了虽然也能够实现,但感觉这个想法的开发效率和维护效率不太高……

不知道哪位大佬有比较高效或者便于维护的实现方式感谢指教/video/av/

您的这个思路可能有一点比较麻烦,每个obj都需要指定一个对象独立计算这样反而没有了做成一个obj的好处。个人感觉还是直接茬父类对象里实现更轻松当初思路不够开阔,现在想想这个问题如果是为了方便管理的话,统一写成script归类到一个名为buff组里再调用出來,就不容易忘记了

用一个有序数组来存储人物身上的buff和debuff(其实可以把这两种buff一视同仁)。每当新增buff或者debuff的时候对数组进行修改,并且根據buff的类型来决定是否重新遍历数组一般当buff的效果会修改某些属性时,需要重新遍历buff数组以重新计算人物的属性

而某些buff除了修改人物的屬性,还会带来一些其他的效果(如身边环绕可以攻击敌人的飞球每过几秒钟就掉血之类的),这类buff属于特殊buff依然要把buff的标签和相关属性存入数组,在遍历数组的时候会根据不同的标签进行特殊的处理某些buff也可以创建新的obj。总之你要有把buff统一存储统一管理的思想。

最后别忘了给你的buff确定优先级。比如对属性的修改,加减是在乘除之前还是之后普通buff和特殊buff(创建obj的buff)哪个先执行之类的问题。

啊对了还偠做一个buff计时器,这个就很简单了思路和上述类似

}

我要回帖

更多关于 gamemaker studio 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信