Модуль:FirearmsStats: различия между версиями
Pok (обсуждение | вклад) мНет описания правки |
Pok (обсуждение | вклад) мНет описания правки |
||
| (не показаны 4 промежуточные версии этого же участника) | |||
| Строка 6: | Строка 6: | ||
local itemId = frame.args.itemId or "" -- ID предмета | local itemId = frame.args.itemId or "" -- ID предмета | ||
local damage = frame.args.damage or "" | local damage = frame.args.damage or "" -- Ввод в ячейк урона | ||
local stamina = tonumber(frame.args.stamina) or 0 | local stamina = tonumber(frame.args.stamina) or 0 -- Выносливость | ||
local blunt = tonumber(frame.args.blunt) or 0 | local blunt = tonumber(frame.args.blunt) or 0 -- Ушибы | ||
local slash = tonumber(frame.args.slash) or 0 | local slash = tonumber(frame.args.slash) or 0 -- Режущие | ||
local piercing = tonumber(frame.args.piercing) or 0 | local piercing = tonumber(frame.args.piercing) or 0 -- Уколы | ||
local heat = tonumber(frame.args.heat) or 0 | local heat = tonumber(frame.args.heat) or 0 -- Термические | ||
local radiation = tonumber(frame.args.radiation) or 0 | local radiation = tonumber(frame.args.radiation) or 0 -- Кислотные | ||
local caustic = tonumber(frame.args.caustic) or 0 | local caustic = tonumber(frame.args.caustic) or 0 -- Радиация | ||
local structural = tonumber(frame.args.structural) or 0 | local structural = tonumber(frame.args.structural) or 0 -- Структурные | ||
local fireRate = tonumber(frame.args.fireRate) or 1. | local fireRate = tonumber(frame.args.fireRate) or 1 -- Скорострельность | ||
local ammunition = frame.args.ammunition or "-" | fireRate = string.format("%.1f", fireRate) -- Всегда форматируем с одним знаком после запятой | ||
local caliber = frame.args.caliber or "-" | local ammunition = frame.args.ammunition or "-" -- Обойма | ||
local caliber = frame.args.caliber or "-" -- Калибр | |||
local description = frame.args.description or "Описание отсутствует" | local description = frame.args.description or "Описание отсутствует" -- Описание | ||
local location = frame.args.location or "" | local location = frame.args.location or "" -- Местонахождения | ||
local created = frame.args.created or "" -- Создаётя | |||
-- Если dps и dataSort заданы вручную, используем их, иначе рассчитываем по формуле | -- Если dps и dataSort заданы вручную, используем их, иначе рассчитываем по формуле | ||
local dps = | local dps = frame.args.dps or fireRate * (blunt + slash + piercing + heat + radiation + caustic) -- Значения DPS | ||
local dataSort = tonumber(frame.args.dataSort) or (blunt + slash + piercing + heat + radiation + caustic) | local dataSort = tonumber(frame.args.dataSort) or (blunt + slash + piercing + heat + radiation + caustic) -- Значения data-sort-value | ||
-- Формирование строки таблицы | -- Формирование строки таблицы | ||
| Строка 72: | Строка 74: | ||
out = out .. '|style="color:#77c1d9"|<b>' .. caliber .. '</b>\n' | out = out .. '|style="color:#77c1d9"|<b>' .. caliber .. '</b>\n' | ||
end | end | ||
-- Описание | -- Описание | ||
| Строка 78: | Строка 79: | ||
-- Местоположение | -- Местоположение | ||
out = out .. '|\n' | |||
if location ~= "" then | if location ~= "" then | ||
out = out | out = out .. frame:preprocess('{{SlideMenu|overlay|color=#e1f6ff|title=Список [[File:Examine.svg.192dpi.png|24x24px]]|content=<p></p>\n' .. location .. '}}\n') | ||
end | |||
out = out .. '|\n' .. frame:preprocess('{{FrameText|color=#82d1c4|content=Нет гарантированных мест спавна}}\n') | |||
-- Создаётся | |||
if created ~= "" then | |||
out = out .. frame:preprocess('{{SlideMenu|overlay|color=#e1f6ff|border-color=#4c4c61|title=Создаётся [[File:hammer.svg.192dpi.png|24x24px]]|content=Создаётся в панели строительства<hr>\n' .. created .. '}}\n') | |||
elseif location == "" then | |||
out = out .. frame:preprocess('{{FrameText|color=#82d1c4|content=Нет гарантированных мест спавна}}\n') | |||
end | end | ||