舰R百科是靠无数志愿编辑者持续地建设更新完善的。编辑非常简单,无需代码知识,请勇于更新页面!
编辑入门 | 资助百科 | 留言讨论页 | 微博@舰R百科 | 百科编辑讨论Q群:366818861
战舰少女R走过第10年啦!快来看看大家的祝福吧!→十周年贺图集

模块:装备

来自舰R百科
跳转到导航 跳转到搜索

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

local equipts = mw.loadData("模块:特殊数据/装备").equipts

local p = { }

p['属性'] = function(frame)
    local equip = equipts[frame.args[2]]
    local default = frame.args[3]
    if default == nil then default = '' end
    if equip == nil then return default end
    local ret = equip[frame.args[1]]
    if ret == nil then return default end
    return ret
end

p['可否装备'] = function(frame)
    local equip = equipts[frame.args[2]]
    local default = frame.args[3]
    if default == nil then default = '' end
    if equip == nil then return default end
    local typenum = frame.args[1] + 1
    local ret = equip.canEquip[typenum]
    if ret == nil then return default end
    return ret
end

local rangeName = { '短', '中', '长', '超长' }
local typeName = { '中型主炮(潜)', '副炮', '鱼雷(通用)', '鱼雷机', '战斗机', '轰炸机', '侦察机', '雷达(通用)', '强化部件', '炮弹', '防空炮', '特殊潜艇', '修理员', '反潜装备', '大型主炮', '中型主炮(重)', '中型主炮(轻)', '小型主炮', '鱼雷(潜艇)', '雷达(声纳)', '发射器(反舰)', '发射器(防空)', '导弹(反舰)', '导弹(防空)', '导弹(远程反舰)', '战斗机(VTOL)', '轰炸机(VTOL)', '鱼雷机(VTOL)' }

p['射程'] = function(frame)
    if equipts[frame.args[1]].range ~= nil then
        return rangeName[equipts[frame.args[1]].range]
    end
end

p['类型'] = function(frame)
    if equipts[frame.args[1]].range ~= 0 then
        return typeName[equipts[frame.args[1]].type]
    end
end

p['稀有度'] = function(frame)
    return equipts[frame.args[1]].rarity
end

p['编号'] = function(frame)
    return equipts[frame.args[1]].index
end

local attrList = { 'atk', 'def', 'tpd', 'aa', 'bomb', 'rec', 'as', 'acc', 'eva', 'luck', 'mTmd', 'mHit' }
local attrName = { '火力', '装甲', '鱼雷', '对空', '轰炸', '索敌', '对潜', '命中', '回避', '幸运', '干扰', '突防' }

p['属性列表'] = function(frame)
    local equipt = equipts[frame.args[1]]
    if equipt == nil then return '' end
    local ret = ''
    for i, attr in pairs(attrList) do
        local val = equipt[attr]
        if val ~= nil then
            ret = ret .. '<br>' .. attrName[i]
            if val > 0 then ret = ret .. '+' end
            ret = ret .. val
        end
    end
    if equipt.range ~= nil then
        ret = ret .. '<br>射程:<wbr>' .. rangeName[equipt.range]
    end
--[[
    if equipt.aac ~= nil then
        ret = ret .. '<br>对空补正:<wbr>' .. equipt.aac .. '%'
    end
    if equipt.aa ~= nil then
        ret = ret .. '<br>防空效率:<wbr>' .. equipt.aaRate
    end
    if equipt.baux ~= nil then
        ret = ret .. '<br>铝耗:<wbr>' .. equipt.baux
    end 
]]--
    if equipt.desc ~= nil then
        ret = ret .. '<br>' .. equipt.desc
    end
    return ret:sub(5)
end

return p