模块:Weapon

来自乐园数据管理室
ヒカリ​(留言 | 贡献)2018年12月17日 (一) 14:45的版本

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

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

local weaponInfo = {
  ["圣杯之剑"] = {
    ["Role"] = {"攻击"},
    ["JustRangeMin"] = 3,
    ["JustRangeMax"] = 7
  },
  ["弯刀"] = {
    ["Role"] = {"回复"},
    ["JustRangeMin"] = 3,
    ["JustRangeMax"] = 7
  },
  ["双环刃"] = {
    ["Role"] = {"回复"},
    ["JustRangeMin"] = 2,
    ["JustRangeMax"] = 8
  },
  ["花之盾"] = {
    ["Role"] = {"防御", "回复"},
    ["JustRangeMin"] = 0,
    ["JustRangeMax"] = 4
  },
  ["花之臂"] = {
    ["Role"] = {"攻击", "防御"},
    ["JustRangeMin"] = 0,
    ["JustRangeMax"] = 4
  },
  ["花之佩剑"] = {
    ["Role"] = {"攻击", "防御", "回复"},
    ["JustRangeMin"] = 0,
    ["JustRangeMax"] = 6
  },
  ["军刀"] = {
    ["Role"] = {"防御"},
    ["JustRangeMin"] = 0,
    ["JustRangeMax"] = 6
  },
  ["大剑"] = {
    ["Role"] = {"攻击"},
    ["JustRangeMin"] = 4,
    ["JustRangeMax"] = 8
  },
  ["双镰刀"] = {
    ["Role"] = {"攻击"},
    ["JustRangeMin"] = 2,
    ["JustRangeMax"] = 6
  },
  ["战斧"] = {
    ["Role"] = {"攻击"},
    ["JustRangeMin"] = 3,
    ["JustRangeMax"] = 7
  },
  ["长枪"] = {
    ["Role"] = {"攻击"},
    ["JustRangeMin"] = 5,
    ["JustRangeMax"] = 10
  },
  ["以太巨炮"] = {
    ["Role"] = {"攻击"},
    ["JustRangeMin"] = 10,
    ["JustRangeMax"] = 20
  },
  ["战锤"] = {
    ["Role"] = {"防御"},
    ["JustRangeMin"] = 0,
    ["JustRangeMax"] = 4
  },
  ["刀"] = {
    ["Role"] = {"防御"},
    ["JustRangeMin"] = 0,
    ["JustRangeMax"] = 6
  },
  ["弹击球"] = {
    ["Role"] = {"回复"},
    ["JustRangeMin"] = 5,
    ["JustRangeMax"] = 15
  },
  ["钩爪拳套"] = {
    ["Role"] = {"回复"},
    ["JustRangeMin"] = 0,
    ["JustRangeMax"] = 4
  },
  ["自制剑"] = {
    ["Role"] = {"攻击"},
    ["JustRangeMin"] = 3,
    ["JustRangeMax"] = 7
  },
  ["太刀"] = {
    ["Role"] = {"攻击"},
    ["JustRangeMin"] = 2,
    ["JustRangeMax"] = 8
  },
  ["大镰"] = {
    ["Role"] = {"回复"},
    ["JustRangeMin"] = 3,
    ["JustRangeMax"] = 7
  },
  ["长刀"] = {
    ["Role"] = {"攻击"},
    ["JustRangeMin"] = 5,
    ["JustRangeMax"] = 10
  },
  ["扇"] = {
    ["Role"] = {"防御"},
    ["JustRangeMin"] = 0,
    ["JustRangeMax"] = 8
  },
  ["小太刀"] = {
    ["Role"] = {"攻击"},
    ["JustRangeMin"] = 2,
    ["JustRangeMax"] = 8
  },
  ["大炮"] = {
    ["Role"] = {"攻击"},
    ["JustRangeMin"] = 10,
    ["JustRangeMax"] = 20
  },
  ["手甲"] = {
    ["Role"] = {"防御"},
    ["JustRangeMin"] = 0,
    ["JustRangeMax"] = 4
  },
  ["旋棍"] = {
    ["Role"] = {"防御"},
    ["JustRangeMin"] = 0,
    ["JustRangeMax"] = 4
  },
  ["结绳"] = {
    ["Role"] = {"攻击"},
    ["JustRangeMin"] = 0,
    ["JustRangeMax"] = 4
  },
  ["长剑"] = {
    ["Role"] = {"防御"},
    ["JustRangeMin"] = 0,
    ["JustRangeMax"] = 4
  },
  ["锡杖"] = {
    ["Role"] = {"回复"},
    ["JustRangeMin"] = 2,
    ["JustRangeMax"] = 6
  },
  ["枪刀"] = {
    ["Role"] = {"攻击"},
    ["JustRangeMin"] = 0,
    ["JustRangeMax"] = 8
  },
  ["莫纳德"] = {
    ["Role"] = {"攻击"},
    ["JustRangeMin"] = 2,
    ["JustRangeMax"] = 6
  },
  ["小刀"] = {
    ["Role"] = {"回复"},
    ["JustRangeMin"] = 0,
    ["JustRangeMax"] = 4
  },
  ["双剑"] = {
    ["Role"] = {"攻击"},
    ["JustRangeMin"] = 0,
    ["JustRangeMax"] = 4
  },
  ["打刀"] = {
    ["Role"] = {"防御"},
    ["JustRangeMin"] = 0,
    ["JustRangeMax"] = 6
  }
}

function p.weaponTypePageHeader()
  local title = mw.title.getCurrentTitle()
  title = tostring(title)

  local justRange = mw.ustring.format("%d ~ %d", weaponInfo[title]["JustRangeMin"], weaponInfo[title]["JustRangeMax"])

  mw.smw.set {
    ["JustRange"] = {justRange},
    ["战斗类别"] = weaponInfo[title]["Role"]
  }

  return mw.ustring.format(
    [[{| class="wikitable"
    |-
    ! 战斗类别 !! JustRange
    |-
    | %s || %s
    |}]],
    table.concat(weaponInfo[title]["Role"], "、"),
    justRange
  )
end

return p