像宝可梦游戏,精灵有不同属性,java该怎么实现每个属性的克制问题?
其实就是一大堆条件分支,一方发起攻击,就开始各种计算
攻击力,防御力,攻击属性,防御属性,再根据暴击率随机个数,最终算出伤害值
属性一共就那么多种,你可以把相克关系写成数组,或者直接switch,反正是有限的。
就算相克,也分强相克弱相克,到底乘以2还是乘以1.5,自己定义
没开发过游戏,但我的想法是属性克制一般出现在攻击的过程中,在攻击之前判断两个对象的属性,如果存在克制,就使攻击数值变大,或者降低被攻击者的防御
没搞过游戏,就像楼上说的,属性克制 就是一方增强,一方减弱;计算的时候根据双方属性 给定一个系数就能实现。不克制的时候 系数就是1,