模块:数据:修订间差异
舰R百科,玩家自由编辑的战舰少女R百科
更多操作
无编辑摘要 |
无编辑摘要 |
||
| (未显示1个用户的11个中间版本) | |||
| 第1行: | 第1行: | ||
local tr = mw.loadData("模块:对照表") | local tr = mw.loadData("模块:对照表") | ||
local | local equipts = mw.loadData("模块:特殊数据/装备").equipts | ||
local ships = mw.loadData("模块:特殊数据/舰娘").ships | |||
local ships = | local byIndex = mw.loadData("模块:特殊数据/舰娘").byIndex | ||
local byIndex = | |||
local enemy = mw.loadData("模块:敌舰数据") | local enemy = mw.loadData("模块:敌舰数据") | ||
local enemyShips = enemy.ships | local enemyShips = enemy.ships | ||
| 第75行: | 第74行: | ||
local shipName = frame.args[1] | local shipName = frame.args[1] | ||
return replaceCountryName(ships[shipName]['简介']) | return replaceCountryName(ships[shipName]['简介']) | ||
end | |||
p['改造'] = function(frame) | |||
local shipName = frame.args[1] | |||
local mod = ships[shipName].mod | |||
if mod == nil then mod = '' end | |||
return mod | |||
end | end | ||
| 第80行: | 第86行: | ||
local shipName = frame.args[1] | local shipName = frame.args[1] | ||
local dialogue = frame.args[2] | local dialogue = frame.args[2] | ||
local force = frame.args[3] | |||
if force ~= nil and force ~= '' then return force end | |||
if shipName == '' then return '' end | if shipName == '' then return '' end | ||
local ret = ships[shipName][dialogue] | local ret = ships[shipName][dialogue] | ||
| 第93行: | 第101行: | ||
local idx = ships[frame.args[1]].index | local idx = ships[frame.args[1]].index | ||
return byIndex[idx % 1000] | return byIndex[idx % 1000] | ||
end | |||
local typeCode = { } | |||
typeCode['航空母舰'] = 'cv' | |||
typeCode['轻型航空母舰'] = 'cvl' | |||
typeCode['装甲航母'] = 'av' | |||
typeCode['战列舰'] = 'bb' | |||
typeCode['航空战列舰'] = 'bbv' | |||
typeCode['战列巡洋舰'] = 'bc' | |||
typeCode['重巡洋舰'] = 'ca' | |||
typeCode['轻巡洋舰'] = 'cl' | |||
typeCode['浅水重炮舰'] = 'bm' | |||
typeCode['驱逐舰'] = 'dd' | |||
typeCode['重炮潜艇'] = 'sc' | |||
typeCode['潜艇'] = 'ss' | |||
typeCode['补给舰'] = 'ap' | |||
local curFrame = nil | |||
local function expand(idx) | |||
local name = byIndex[idx] | |||
local link = byIndex[idx % 1000] | |||
local ship = ships[name] | |||
local moe = ship['萌王'] | |||
if moe == nil then moe = '' end | |||
local args = { idx, name:gsub('·改', ''), link, ship.rarity, typeCode[ship.type], moe } | |||
return curFrame:expandTemplate{ title = '图鉴立绘2', args = args } | |||
end | |||
local function genShipList(idx) | |||
local part1 = '' | |||
local part2 = '' | |||
local empty1 = true | |||
local empty2 = true | |||
local prefix = '\n|width="200px"|' | |||
for i = idx + 1, idx + 5 do | |||
part1 = part1 .. prefix | |||
if byIndex[i] ~= nil then | |||
part1 = part1 .. expand(i) | |||
empty1 = false | |||
end | |||
end | |||
if not empty1 then prefix = '\n|' end | |||
for i = idx + 6, idx + 10 do | |||
part2 = part2 .. prefix | |||
if byIndex[i] ~= nil then | |||
part2 = part2 .. expand(i) | |||
empty2 = false | |||
end | |||
end | |||
if empty1 and empty2 then | |||
return nil | |||
elseif empty1 then | |||
return '{|\n|- valign="bottom"' .. part2 .. '\n|}\n' | |||
elseif empty2 then | |||
return '{|\n|- valign="bottom"' .. part1 .. '\n|}\n' | |||
else | |||
return '{|\n|- valign="bottom"' .. part1 .. '\n|-' .. part2 .. '\n|}\n' | |||
end | |||
end | |||
p['图鉴'] = function(frame) | |||
curFrame = frame | |||
local l = math.floor((tonumber(frame.args[1]) - 1) / 10) * 10 | |||
local r = math.floor((tonumber(frame.args[2]) - 1) / 10) * 10 | |||
local ret = '' | |||
local buf = '' | |||
for i = l, r, 10 do | |||
local title = '===No.' .. (i + 1) .. '~' .. (i + 10) .. '===\n' | |||
local list = genShipList(i) | |||
if list ~= nil then | |||
ret = ret .. buf .. title .. list | |||
buf = '' | |||
else | |||
buf = buf .. title | |||
end | |||
end | |||
return ret | |||
end | end | ||
| 第211行: | 第296行: | ||
p.debug = function() | p.debug = function() | ||
f = { } | f = { } | ||
f.args = { ' | f.args = {'1', '400' } | ||
return p[' | return p['图鉴'](f) | ||
end | end | ||
return p | return p | ||