假设有一数值组件字段攻击力attack,它应该存在一个角色裸装时的基础攻击AttackBase,这个也是正常存入数据库的。那么装备增加的攻击力应该是AttackAdd。再存数据库时,这两个NumericType都在NumericDic里,因此都会保存进去。下一次反序列化后,字典里直接有AttackAdd的值了,就不能再走一遍遍历每个装备计算AttackAdd的逻辑了。包括被动技能如果增加AttackAdd也是一样的问题。
请问数值组件的正确使用方式是什么,对于NumericType中所有Add字段,是否需要保存到数据库里?若要保存,反序列化后是否应该把所有Add值清零然后再走一遍计算Add的逻辑?