Как вызывать
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