调用方式
Functions.values.round(num, numDecimalPlaces)
将其记录为名为 Functions.values.round 的依赖项(接受自动补全即可完成),然后按该名称调用。
作用
使用现有的 floor(num * 10^places + 0.5) / 10^places 公式进行舍入。places 默认为零,可以为负。处于一半的负值会向正无穷方向舍入;不会添加有限数字验证或其他舍入策略。
参数
| 名称 | 类型 | 作用 |
|---|---|---|
num | number | 传给原始算术公式的值。 |
numDecimalPlaces | number | nil | 小数位数,默认为零;负值会舍入到十或更大的十的幂。 |
返回值
| 1 | number | 来自原始公式的一个舍入后的数字结果。 |
|---|
版本
内置辅助函数在每个版本上都会注册。不同的是它们读取的游戏 API;某个 API 缺失时,辅助函数会改用后备方案,或返回 nil 并附上原因。
它不直接读取任何游戏 API。
示例
local maximum = UnitHealthMax("target")
if not maximum or maximum == 0 then return nil, "no-target" end
local percent = Functions.values.round(UnitHealth("target") / maximum * 100, 1)
return percent <= 20依赖项
floor(builtin:Functions/values.lua:floor)
源码
Functions/values.lua,第 54 行。在游戏中为只读;“复制”会生成一份可编辑的副本。
Functions.values.round(num, numDecimalPlaces)
local mult = 10^(numDecimalPlaces or 0)
return floor(num * mult + 0.5) / mult