检测BUG与逻辑打印出来问题修复代码-- 附加抗爆率function CalcAdditionalResistCriticalRateEntType ResistCritical Lvl BuffResistCriticalRate local fAdditionalResistCirticalRate = BuffResistCriticalRate 100; if EntType == 0
问题:
- 变量名拼写错误,应为 fAdditionalResistCriticalRate。
- 函数名拼写错误,应为 CalcAdditionalResistCriticalRate。
- 函数参数未进行类型检查,可能导致传入参数类型错误。
- EntType 只能为 0 或 5,否则会导致逻辑错误。
- 对于 EntType 不为 0 或 5 的情况,ResistCritical 的加成比例应为 0.01 而不是 0.005。
- 返回值类型应为浮点数,而不是整数。
修复后代码: function CalcAdditionalResistCriticalRate(entType, resistCritical, lvl, buffResistCriticalRate) local additionalResistCriticalRate = buffResistCriticalRate / 100 if entType ~= 0 and entType ~= 5 then additionalResistCriticalRate = additionalResistCriticalRate + resistCritical * 0.01 else additionalResistCriticalRate = additionalResistCriticalRate + resistCritical * 0.005 end return additionalResistCriticalRate end
原文地址: https://www.cveoy.top/t/topic/b0IG 著作权归作者所有。请勿转载和采集!