模块:Collection:修订间差异

来自乐园数据管理室
ヒカリ​(留言 | 贡献)
无编辑摘要
ヒカリ​(留言 | 贡献)
无编辑摘要
第70行: 第70行:
   end
   end


   return [[{| class="wikitable sortable"
  local parentPage = "采集点"
  local currentTitle = mw.title.getCurrentTitle()
  if "黄金之国" == mw.ustring.sub(tostring(currentTitle), 1, 4) then
    parentPage = "黄金之国采集点"
  end
 
   return mw.ustring.format([[<div><small><span style="color:#666"><</span> \[\[%s\]\]</small></div>
  {| class="wikitable sortable"
   |-
   |-
   ! 采集点类型 !! 数量 !! 道具 !! 概率 !! 道具 !! 概率 !! 道具 !! 概率 !! 道具 !! 概率
   ! 采集点类型 !! 数量 !! 道具 !! 概率 !! 道具 !! 概率 !! 道具 !! 概率 !! 道具 !! 概率
   ]] ..
   %s
    body .. [[
   |}]], parentPage, body)
   |}]]
end
end


return p
return p

2019年3月17日 (日) 23:39的版本

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

local p = {}
local getArgs = require("Module:Arguments").getArgs

function p.craftMaterials(frame)
  local args = getArgs(frame)

  local items = {}
  local i = 1
  while (args[i] and args[i + 1]) do
    table.insert(items, {name = args[i], amount = args[i + 1]})
    i = i + 2
  end

  local itemNamespace = "物品"
  local currentTitle = mw.title.getCurrentTitle()
  if "黄金之国" == mw.ustring.sub(tostring(currentTitle), 1, 4) then
    itemNamespace = "黄金之国物品"
  end

  local wikitext = ""
  for i, v in ipairs(items) do
    local div = mw.html.create("div")
    local itemTitle = mw.title.new(v["name"], itemNamespace)
    itemTitle = "[[" .. tostring(itemTitle) .. "|" .. v["name"] ..  "]]"
    div:wikitext(itemTitle .. " ×" .. v["amount"])
    wikitext = wikitext .. tostring(div)
  end

  return wikitext
end

function p.popList()
  local title = mw.title.getCurrentTitle()
  local result =
    mw.smw.ask {
    "[[采集地域::" .. tostring(title) .. "]]",
    "?单次采集数量",
    "?采集道具1",
    "?采集概率1",
    "?采集道具2",
    "?采集概率2",
    "?采集道具3",
    "?采集概率3",
    "?采集道具4",
    "?采集概率4",
    "limit=200",
    "sort=CollectionTableId"
  }

  local body = ""
  for i, v in ipairs(result) do
    local page = mw.ustring.gsub(v[1], "|.+/", "|")
    body =
      body ..
      mw.ustring.format(
        [[|-
          | %s || %s || %s || %s || %s || %s || %s || %s || %s || %s
          ]],
        page,
        v["单次采集数量"],
        v["采集道具1"] or "",
        v["采集概率1"] or "",
        v["采集道具2"] or "",
        v["采集概率2"] or "",
        v["采集道具3"] or "",
        v["采集概率3"] or "",
        v["采集道具4"] or "",
        v["采集概率4"] or ""
      )
  end

  local parentPage = "采集点"
  local currentTitle = mw.title.getCurrentTitle()
  if "黄金之国" == mw.ustring.sub(tostring(currentTitle), 1, 4) then
    parentPage = "黄金之国采集点"
  end

  return  mw.ustring.format([[<div><small><span style="color:#666"><</span> \[\[%s\]\]</small></div>
  {| class="wikitable sortable"
  |-
  ! 采集点类型 !! 数量 !! 道具 !! 概率 !! 道具 !! 概率 !! 道具 !! 概率 !! 道具 !! 概率
  %s
  |}]], parentPage, body)
end

return p