◆少前百科是非盈利性、非官方的少女前线维基百科。 ◆如果您发现某些内容错误/空缺,请勇于修正/添加!参与进来其实很容易!点这里 加入少前百科。 ◆有任何意见、建议、纠错,欢迎在 GFwiki:反馈与建议 提出和讨论。编辑事务讨论QQ群:597764980,微博@GFwiki少前百科 ◆To foreigners,You can use twitter to contact us. |
“模块:Skin class info”的版本间的差异
(未显示同一用户的1个中间版本) | |||
第10行: | 第10行: | ||
local stypes = {'Live2D', 'Animated'} | local stypes = {'Live2D', 'Animated'} | ||
local hd = false | local hd = false | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
local function nameMiddle(name, gtype, rank) | local function nameMiddle(name, gtype, rank) | ||
第31行: | 第25行: | ||
local illucv = sdata.illustrator_cv | local illucv = sdata.illustrator_cv | ||
local addp = { | local addp = { | ||
+ | ['编号' .. num] = id, | ||
+ | ['英文' .. num] = gd.code, | ||
['名称' .. num] = sdata.name, | ['名称' .. num] = sdata.name, | ||
['人形' .. num] = gd.name, | ['人形' .. num] = gd.name, | ||
第40行: | 第36行: | ||
['台词' .. num] = sdata.dialog | ['台词' .. num] = sdata.dialog | ||
} | } | ||
− | if hd then | + | if not hd then |
− | |||
− | |||
− | |||
local picf = string.format('Pic_%s_%d', gd.code, id) | local picf = string.format('Pic_%s_%d', gd.code, id) | ||
addp['正常立绘' .. num] = picf .. '.png' | addp['正常立绘' .. num] = picf .. '.png' | ||
第60行: | 第53行: | ||
['主题类型'] = cdata[cid].theme_type | ['主题类型'] = cdata[cid].theme_type | ||
} | } | ||
− | |||
local ks = {} | local ks = {} | ||
for i,v in pairs(data) do if v.class_id == cid then ks[#ks+1] = i end end | for i,v in pairs(data) do if v.class_id == cid then ks[#ks+1] = i end end | ||
第76行: | 第68行: | ||
args = frame | args = frame | ||
end | end | ||
+ | if args.hd then hd = true end | ||
return _skinClassInfo() | return _skinClassInfo() | ||
end | end | ||
return p | return p |
2023年6月15日 (四) 22:38的版本
此模块的文档可以在模块:Skin class info/doc创建
local p = {} local args local root local data = mw.loadData('Module:Gun info/skin data') local gdata = mw.loadData('Module:Gun info/data') local params local rcolors = {'dfb6ff', 'ddd', '6bdfce', 'd6e35a', 'ffcd4a'} local scolors = {'cae', 'ccc', '6bdfce', 'd6e35a', 'ffbd0d'} local gtypes = {'HG', 'SMG', 'RF', 'AR', 'MG', 'SG'} local stypes = {'Live2D', 'Animated'} local hd = false local function nameMiddle(name, gtype, rank) return string.format('[[%s|<span style="color:#%s;text-shadow:0 0 2px #%s;display:inline-block"><span style="vertical-align:middle;">%s</span> <small>[%s]</small></span>]]', name, rcolors[rank], scolors[rank], name, gtypes[gtype]) end local function addParams(id, num) local sdata = data[id] local gd = gdata[sdata.fit_gun] local illucv = sdata.illustrator_cv local addp = { ['编号' .. num] = id, ['英文' .. num] = gd.code, ['名称' .. num] = sdata.name, ['人形' .. num] = gd.name, ['人形编号' .. num] = sdata.fit_gun, ['人形代码' .. num] = nameMiddle(gd.name, gd.guntype, gd.rank), ['动态' .. num] = sdata['type'] and stypes[sdata['type']] or '', ['画师' .. num] = illucv and illucv[1] or (gd.illu or ''), ['声优' .. num] = illucv and illucv[2] or (gd.cv or ''), ['台词' .. num] = sdata.dialog } if not hd then local picf = string.format('Pic_%s_%d', gd.code, id) addp['正常立绘' .. num] = picf .. '.png' addp['重创立绘' .. num] = picf .. '_D.png' end for k, v in pairs(addp) do params[k] = v end end local function _skinClassInfo() local cid = tonumber(args[1]) assert(cid) local cdata = mw.loadData('Module:Gun info/skinclass data') params = { ['编号'] = cid, ['实装时间'] = args.launch, ['主题类型'] = cdata[cid].theme_type } local ks = {} for i,v in pairs(data) do if v.class_id == cid then ks[#ks+1] = i end end table.sort(ks) for n,i in ipairs(ks) do addParams(i, tostring(n)) end for k,v in pairs(args) do params[k] = v end local f = mw.getCurrentFrame() return f:expandTemplate{title = '装扮展示', args=params} end function p.skinClassInfo(frame) if frame == mw.getCurrentFrame() then args = frame:getParent().args else args = frame end if args.hd then hd = true end return _skinClassInfo() end return p