Module:表格/液温调节器冷却剂

来自缺氧 Wiki
跳转到导航 跳转到搜索

可在Module:表格/液温调节器冷却剂/doc创建此模块的帮助文档

-- Module:表格
local p = {}
local fstr = mw.ustring.format -- shortcut for formattig a string
local getArgs = require('Dev:Arguments').getArgs
local tb = require([[Module:表格]])
local po = require([[Module:Po]]).po
local utils = require([[Module:Utils]])
local elData = mw.loadData([[Module:Data/Elements]])

-- test by: = p._main({"Water", "CrudeOil"})
function p._main(args)
    local out = {}
    for _, e in ipairs(args) do
        local currE = elData[e]
        local shcSteel = elData['Steel'].specificHeatCapacity
        if currE and currE.state == "Liquid" then
            local name = fstr("{{物品|%s}}", po(currE.localizationID))
            if currE.dlcId == "EXPANSION1_ID" then
                name = name .. " {{眼冒金星图标}}"
            end
            local shc = utils.float2str(currE.specificHeatCapacity, 3)
            local heatTrans = fstr("%d", currE.specificHeatCapacity * 14 * 10 * 1000)
            local selfHeat = utils.float2str(
                                 currE.specificHeatCapacity * 14 * 10 / 1200 / shcSteel / 0.2,
                                 3)
            local lowTemp = utils.float2str(currE.lowTemp + utils.K0)
            local highTemp = utils.float2str(currE.highTemp + utils.K0)
            table.insert(out,
                         {name, shc, heatTrans, selfHeat, lowTemp, highTemp})
        end
    end
    return tb.table(out, args)
end

function p.main(frame) return p._main(getArgs(frame)) end

return p