Модуль:Prototypes/Машина/Станок: различия между версиями

мНет описания правки
мНет описания правки
Строка 9: Строка 9:
local materialData = mw.loadData("Модуль:IanComradeBot/prototypes/materials.json/data")
local materialData = mw.loadData("Модуль:IanComradeBot/prototypes/materials.json/data")
local chemData    = mw.loadData("Модуль:IanComradeBot/chem prototypes.json/data")
local chemData    = mw.loadData("Модуль:IanComradeBot/chem prototypes.json/data")
-----------------------------------------------------------
-- Функция для форматирования времени
-----------------------------------------------------------
local function format_seconds_to_short_string(input_seconds)
    local minutes = math.floor(input_seconds / 60)
    local seconds = input_seconds % 60
    local minutes_part = minutes > 0 and (minutes .. " мин.") or nil
    local seconds_part = seconds > 0 and (seconds .. " сек.") or nil
    if minutes_part and seconds_part then
        return minutes_part .. " " .. seconds_part
    elseif seconds_part then
        return seconds_part
    elseif minutes_part then
        return minutes_part
    else
        return '0 сек.'
    end
end


-----------------------------------------------------------
-----------------------------------------------------------
Строка 226: Строка 205:


     for _, recipe in ipairs(recipes) do
     for _, recipe in ipairs(recipes) do
         local scaledTime = format_seconds_to_short_string(recipe.completetime * timeMultiplier)
         local scaledTime = recipe.completetime * timeMultiplier
         out = out .. '{{Шаблон:Prototypes/Машина/Станок|product=' .. recipe.result
         out = out .. '{{Шаблон:Prototypes/Машина/Станок|product=' .. recipe.result
         out = out .. '|complete-time=' .. scaledTime
         out = out .. '|complete-time={{#invoke:Code/Формат/Время|main|seconds|' .. scaledTime
         out = out .. '|materials='
         out = out .. '}}|materials='


if recipe.materials then
if recipe.materials then