伤害计算放到武器类上好还是对象身上好?
如题,在arpg游戏中,会有武器攻击并判定,然后对目标造成伤害的一个过程。这个时候伤害、技能效果的触发,我能想到的,有两种:
1、将对象的类作为参数传给武器类,调用武器类的一个函数,在武器类的函数中对对象进行伤害计算等处理。
2、将武器的类作为参数,传给对象,调用对象类的一个函数,在对象类的函数中进行伤害计算处理。
问题:
1、这两种方式,各自的优点和缺点是什么?主要从性能、逻辑以及可能的bug上求教。
2、这两种方式各自适用于哪些情况?
3、有没有更好的解决方案?