模块:TigerTiger

来自乐园数据管理室

此模块的文档可以在模块:TigerTiger/doc创建

local p = {}

function p.tboxDrop(frame)
  local args = frame.args

  local dropTable = {}
  for i, v in pairs(args) do
    if i ~= "宝箱" then
      table.insert(dropTable, {i, v})
    end
  end
  table.sort(
    dropTable,
    function(a, b)
      return tonumber(a[2]) > tonumber(b[2])
    end
  )

  local output = [[{| class="wikitable sortable" style="width: 95%"
|-
! 零件名称 !! 概率
]]

  for i, v in ipairs(dropTable) do
    local t1 = mw.title.new(v[1], "花的零件")
    local t2 = mw.title.new(v[1], "物品")
    local title, titleFullText

    if t1.exists then
      title = "[[" .. t1.fullText .. "|" .. t1.text .. "]]"
      titleFullText = t1.fullText
    elseif t2.exists then
      title = "[[" .. t2.fullText .. "|" .. t2.text .. "]]"
      titleFullText = t2.fullText
    else
      title = v[1]
    end

    mw.smw.set {["TT宝箱"] = titleFullText, [v[1] .. args["宝箱"] .. "宝箱出率"] = v[2] .. "%"}
    output = output .. mw.ustring.format([[|-
| %s || %s%%
]], title, v[2])
  end

  output = output .. "|}"

  return output
end

return p