[特效] 游戏物体被攻击特效击中,怎样判断特效类型?

查看:970 |回复:6 | 2021-10-8 10:58:36

您需要 登录 才可以下载或查看,没有账号?注册

x
比如我有两个技能“闪电”和“火球”,人物受到攻击以后,怎样判断是受到哪种攻击?

怎样在特效和物体之间传递消息比较好?给特效附加触发器还是使用粒子碰撞?

2021-10-8 10:58:36  
 赞 赞 0

使用道具 登录

6个回答,把该问题分享到群,邀请大神一起回答。
2#
最简单的方法用 if else。
我用过的方法,命令模式和状态机来解决:1.抽象出特效类或者接口,然后运用命令模式(把一个特效看做一个命令),把特效的显示逻辑放在子类中(闪电类、火球类)实现。2.把所有特效作用于角色的逻辑放在一个模型类中实现(EffectModel),该类同时也是单例。该类负责接收和处理特效类发来的消息,同时存储特效作用于角色的状态(可以注册一个状态机),根据状态执行特效作用于角色的逻辑。3.当任何特效和角色发生碰撞时,直接用命令的指针执行特效逻辑就好。然后特效逻辑执行的同时给EffectModel发送消息,EffectModel处理消息,然后将逻辑作用于角色。

回复 收起回复
2021-10-8 11:00:48   回复
 赞 赞 3

使用道具 登录

3#
感谢分享
回复 收起回复
2021-10-8 14:46:09   回复
 赞 赞 1

使用道具 登录

4#
学习了
回复 收起回复
2021-10-9 10:17:15   回复
 赞 赞 0

使用道具 登录

5#
具体看策划需求  
回复 收起回复
2022-1-10 15:57:50   回复
 赞 赞 0

使用道具 登录

6#
学习了,感谢分享
回复 收起回复
2024-11-2 02:21:47   回复
 赞 赞 0

使用道具 登录

7#
元素帖子强,满满正能量
回复 收起回复
2024-11-2 02:21:50   回复
 赞 赞 0

使用道具 登录

CG 游戏行业专业问题

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表