14,906
个编辑
◆少前百科是非盈利性、非官方的少女前线维基百科。 ◆如果您发现某些内容错误/空缺,请勇于修正/添加!参与进来其实很容易!点这里 加入少前百科。 ◆有任何意见、建议、纠错,欢迎在 GFwiki:反馈与建议 提出和讨论。编辑事务讨论QQ群:597764980,微博@GFwiki少前百科 ◆To foreigners,You can use twitter to contact us. |
更改
无编辑摘要
local super
local gundata
local mid
local data
local bdata = {}
local etdata = mw.loadData('Module:Equip info/type data')
local infobox odata = requiremw.loadData('Module:InfoboxGun info/obtain data')local skindata = mw.infoboxloadData('Module:Gun info/skin data')
local guntype = { {'手枪', '冲锋枪', '步枪', '突击步枪', '机枪', '霰弹枪', [0] = '所有枪种'},
{'HG', 'SMG', 'RF', 'AR', 'MG', 'SG'} }
local equips = {
}
local defaults = equips[gundata.guntype]
end
skilldata = bdata[group][id]
local skill = root:tag('table'):addClass('skill' .. order):attr{ class = 'skill-table',
['data-cd'] = skilldata.cd_time,
['data-cd-start'] = skilldata.start_cd_time }:addClass('skill' .. order)
if skilldata.vals then skill:attr('data-val', skilldata.vals) end
local signature = skill:tag('tr'):attr('class', 'skill-signature')
local icon = signature:tag('td')
icon:attr('rowspan', 2)
:wikitext('[[fileFile:icon Skill IconSkill ' .. skilldata.code .. '.png|48px|link=]]')
local skillname = signature:tag('td')
skillname:wikitext(skilldata.name)
if order == '2' then skillname:tag('span'):wikitext('改型1强化改型2解锁') elseif ismod then skillname:tag('span'):wikitext('改型2解锁改型1强化')
end
local lvcd = skill:tag('tr'):tag('td'):attr('class', 'skill-lvcd')
root:wikitext(serveSkillInfo('2', true))
end
end
local function addChibi()
local root = mw.html.create()
root:newline():wikitext('== 战斗形象 =='):newline()
local div = root:tag('div'):addClass('dollSpineBox')
local argTable = {'ChibiCostumeSwitcher', target = 'TDollChibiAnimation'}
local guncode = string.gsub(gundata.code, ' ', '_')
if moddata then argTable['costumes.mod'] = '心智升级' end
for _, v in ipairs(gundata.skins) do
local skin = skindata[v]
if skin then
local skincode = guncode .. '_' .. tostring(v)
argTable['costumes.' .. skincode] = skin.name
end
end
local frame = mw.getCurrentFrame()
div:wikitext(frame:callParserFunction('#widget', argTable))
div:tag('div'):addClass('tdoll_chibi'):attr{ id = 'TDollChibiAnimation',
['data-tdoll-id'] = guncode }
return tostring(root)
end
root:newline():wikitext('== 人形外观 =='):newline()
local guncode = string.gsub(gundata.code, ' ', '_')
local classdata = mw.loadData('Module:Gun info/skinclass_data')
local control = root:tag('div'):attr('id', 'unit-showcase-control')
if moddata then
local moditem = menu:tag('li')
:attr('data-skincode', guncode .. 'Mod'):wikitext('心智升级')
local l2dmod = {[55] = 1, [56] = 1, [57] = 1, [65] = 1, [101] = 1,
[103] = 1, [122] = 1, [143] = 1}
if l2dmod[gundata.id] then moditem:addClass('live2d1') :wikitext( '<div></div><div><span>心智升级</span></div><div class="live2d1"></div>') else moditem:wikitext('心智升级') end
end
for _, v in ipairs(gundata.skins) do
local skin = skindata[v]
if skin then
local skincode = guncode .. '_' .. tostring(v)
local skinclass = classdata[skin.classclass_id] local item = menu:tag('li'):attr('data-skincode', skincode) local tdiv = item:tag('div') if skinclass then tdiv:addClass('theme' .. tostring(skinclass.theme_type)) end local scdiv = item:tag('div') scdiv:tag('span'):wikitext(skin.name) itemif skinclass then scdiv:tag('span'):wikitext(skinclass.name)end local ldiv = item:addClasstag('themediv' .. tostring(skinclass.theme_type)) local skintype = tostring(skin['type'] item:attr('data-skincode', skincode) if skintype ~= 0 'nil' then item:addClass('live2d' .. tostringskintype) ldiv:addClass('live2d' .. skintype))
end
end
effect_text:wikitext('<br>')
effect_text:wikitext(concatEffects(anames, avals, i)) end end
end
local function r2fs(r)
local f = math.floor(1500/r)
return f, string.format('%.2g', f/30)
end
['data-type'] = gtype,
['data-growing'] = table.concat(ratios, ','),
['data-growth'] = gundata.growth, ['data-max-rate'] = gundata.max_rate
}
if moddata then
attrdataset:attr{
['data-growing-mod'] = table.concat(ratios, ','),
['data-growth-mod'] = moddata.growth, ['data-max-rate-mod'] = moddata.max_rate
}
end
local attrtable = root:tag('div'):attr('id', 'attr-table')
attrtable:newline():wikitext([[
{|
|+生命
|-
!×1!!×2!!×3!!×4!!×5
|-id="hp-tr"
| || || || ||
|}]]):newline()
local gtable = attrtable:tag('table'):attr('id', 'growing2')
gtable:tag('tr'):tag('th'):attr{id = 'growth', colspan = 5}:wikitext'成长'
gtable:tag('tr'):tag('td'):attr{id = 'grow-td', colspan = 5}
local gaid1 = {1, 2, 3, 5, 9}
local gaid2 = {1, 3, 4, 2, 8}
local gthr = gtable:tag('tr')
for i = 1, 5 do
local gth = gthr:tag('th'):attr('id', bonuses[gaid1[i]]):wikitext(attrs[gaid2[i]])
if i == 4 and gundata.max_rate then
local f = mw.getCurrentFrame()
gth:tag('span'):addClass('max-rate'):wikitext(f:expandTemplate{
title='popup', args={['内容']=string.format(
'射速上限:%d(攻击间隔%d帧/%s秒)',
gundata.max_rate, r2fs(gundata.max_rate))
}})
end
if i == 4 and moddata and moddata.max_rate then
local f = mw.getCurrentFrame()
gth:tag('span'):addClass('max-rate-mod'):wikitext(
f:expandTemplate{title='popup', args={['内容']=string.format(
'射速上限:%d(攻击间隔%d帧/%s秒)',
moddata.max_rate, r2fs(moddata.max_rate))
}
}) end
end
local gtdr = gtable:tag('tr')
for i = 1, 5 do gtdr:tag('td'):attr('id', bonuses[gaid1[i]] .. '-td') end
attrtable:newline():wikitext(string.format([[
{|
!id="ap"|穿甲!!id="round"|弹量!!id="speed"|移速!!id="crit"|暴击!!id="critpow"|暴伤
|-
|15||data-attr="%d" data-mod="%d"|%s||%s||data-attr="%d" data-mod="%d"|%s%%||150%%
|}]],
gundata.round or 0,
local function addInfobox()
end
local function _gunInfo()
data = mw.loadData('Module:Gun info/data')
else
data = mw.loadData('Module:Gun info/data extra')
end
gundata = data[tonumber(args[1])mid]
if gundata == nil then
return '<p style="color:red">未找到编号对应的战术人形信息,请检查编号是否正确及' ..
'<a href="/w/Module:Gun_info/data">Module:Gun info/data</a>的数据是否为最新。</p>'
end
if gundata.['mod '] == 1 then
local moddataOrig = mw.loadData('Module:Gun info/data mod')[tonumber(args[1])+20000]
moddata = {skill2 } for k,v in pairs(moddataOrig) do moddata[k] = moddataOrig.skill2}v end for k,v in pairs(gundata) do moddata[k] = moddataOrigmoddata[k] or v end if gundata.max_rate and not moddata.max_rate then moddata.max_rate = gundata.max_rate end
end
local root = mw.html.create()
root:wikitext(addInfobox())
super = root:tag('div'):attr('id', 'doll-container')
addImages()
addCombatInfo()
putSkills()
putEquipments()
root:wikitext(addChibi())
local templatestyles = mw.getCurrentFrame():extensionTag{