• 正在查找将来过去时的官方设定集?不如看看万界大百科吧!
  • 《将来过去时》第一部分 现在 魔科纪元的少年少女 即将正式发布!
  • 让我偷偷看一眼小鱼君的博客……
  • 服务器已成功迁移到 阿里云(杭州)

模块:Jobs

来自小鱼君和他的朋友们
机智的小鱼君讨论 | 贡献2020年4月3日 (五) 02:27的版本 ([InPageEdit] 没有编辑摘要)

Module:Jobs/doc (编辑)

[red]<nor>弓箭手 Archer (远程物理) [red]<nor>弓箭手 Archer (远程物理)

[red]<adv>游吟诗人 Bard (远程物理) [red]<adv>游吟诗人 Bard (远程物理)

Lua错误 在第44行:attempt to index field '?' (a nil value) Lua错误 在第44行:attempt to index field '?' (a nil value)

[unknown]<nor>未知职业 Unknown ()


Module:Jobs/alias (编辑) • Module:Jobs/colorInfo (编辑) • Module:Jobs/details (编辑) • Module:Jobs/levels (编辑)


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

-- 职业别名
local alias = require('Module:Jobs/alias')
function jobCode(frame)
  local args = getArgs(frame)
  local job = args['job'] or args[1] or 'unknown'
  job = mw.ustring.lower(job)
  return alias[job] or 'unknown'
end

-- 职业具体参数
local jobDetail = {
  ['unknown'] = {
    ['name'] = '未知职业', --中文名
    ['en'] = 'Unknown', --英文名
    ['short'] = 'null', --简称
    ['color'] = 'unknown', --red/green/blue/yellow/purple
    ['prop'] = '', --战斗职业的类型
    ['level'] = 'nor' --nor/adv/spe
  },
  ['archer'] =  {
    ['name'] = '弓箭手',
    ['en'] = 'Archer',
    ['short'] = 'arc',
    ['color'] = 'red',
    ['prop'] = '远程物理',
    ['level'] = 'nor'
  },
  ['bard'] =  {
    ['name'] = '游吟诗人',
    ['en'] = 'Bard',
    ['short'] = 'brd',
    ['color'] = 'red',
    ['prop'] = '远程物理',
    ['level'] = 'adv'
  }
}

-- 职业色谱
function p.jobColor(frame)
  local code = jobCode(frame)
  return jobDetail[code]['color']
end

-- 返回最完整的格式
function p.main(frame)
  local code = jobCode(frame)
  local icon = p.jobColor(frame)
  local level = jobDetail[code]['level'] or ''
  local name = jobDetail[code]['name']
  local en = jobDetail[code]['en'] or ''
  local prop = jobDetail[code]['prop'] or ''
  local des = jobDetail[code]['des'] or ''
  return '[' .. icon .. ']' .. '<' .. level .. '>' .. name .. ' ' .. en .. ' (' .. prop .. ')'
end

return p