模块:深海栖舰函数改/doc

来自舰娘百科
跳转至: 导航搜索

这是模块:深海栖舰函数改的文档页面

写在前面

若您在其他页面调用了本模块函数,请将调用页面更新于此

若您修改了本模块的代码逻辑,请确认上述页面工作正常

概述

本模块(module)基于模块:深海栖舰数据改模块:深海装备数据提供了以下2个API

  • 查询深海栖舰信息
  • 查询深海栖舰名,不含后缀(改,elite,后期型,flagship)

查询栖舰信息

调用方法

在其他页面中调用API时,使用如下格式:

{{#invoke: 深海栖舰函数改|getShipDataById|栖舰ID|参数1}}
{{#invoke: 深海栖舰函数改|getShipDataById|栖舰ID|参数1|参数2}}
{{#invoke: 深海栖舰函数改|getShipDataById|栖舰ID|参数1|参数2|参数3}}
  • 栖舰ID:舰队收藏游戏中,api_start2定义的深海装备ID
  • 参数:需要获得的参数信息

当前支持查询的参数信息如下:

参数1 参数2 参数3 调用示例 返回结果 备注/注意点
中文名 {{#invoke: 深海栖舰函数改|getShipDataById|1542|中文名}} 战舰TA级elite
日文名 {{lang|ja|{{#invoke: 深海栖舰函数改|getShipDataById|1542|日文名}}}} 戦艦タ級elite 需要再次调用日语处理模板{{lang|ja}}模板来处理返回结果
属性 耐久
对空
对潜
回避
索敌
速力
装甲

射程
{{#invoke: 深海栖舰函数改|getShipDataById|1542|属性|耐久}}
{{#invoke: 深海栖舰函数改|getShipDataById|1542|属性|对空}}
{{#invoke: 深海栖舰函数改|getShipDataById|1542|属性|对潜}}
{{#invoke: 深海栖舰函数改|getShipDataById|1542|属性|回避}}
{{#invoke: 深海栖舰函数改|getShipDataById|1542|属性|索敌}}
{{#invoke: 深海栖舰函数改|getShipDataById|1542|属性|速力}}
{{#invoke: 深海栖舰函数改|getShipDataById|1542|属性|装甲}}
{{#invoke: 深海栖舰函数改|getShipDataById|1542|属性|运}}
{{#invoke: 深海栖舰函数改|getShipDataById|1542|属性|射程}}
88
65
0
40
30

88
20
属性 火力
雷装
1:裸装值
2:栖装值
{{#invoke: 深海栖舰函数改|getShipDataById|1542|属性|火力|1}}
{{#invoke: 深海栖舰函数改|getShipDataById|1542|属性|雷装|2}}
75
0
装备 搭载 <整数值> {{#invoke: 深海栖舰函数改|getShipDataById|1542|装备|搭载|4}} 4 参数3对应的装备槽的理论搭载量
装备 装备 <整数值> {{#invoke: 深海栖舰函数改|getShipDataById|1542|装备|装备|4}} 参数3对应的装备槽的装备中文名
在本示例中,TA级的第4装备槽的搭载量是4,但装备却是水上雷达 Mark.I
搭载量 {{#invoke: 深海栖舰函数改|getShipDataById|1542|搭载量}} 16 所有装备槽的理论搭载量总和
装备列表 {{#invoke: 深海栖舰函数改|getShipDataById|1604|装备列表}}

(6)

以<p></p>分隔的装备列表中文名,如果是飞机类装备,带有搭载数
这个接口只供模板:深海栖舰改调用,请参考:该接口实现细节
后缀 {{#invoke: 深海栖舰函数改|getShipDataById|1542|后缀}} elite 所有可能的中文后缀,包括:
elite/flagship
后期型/后期型elite/后期型flagship
改/改elite/改flagship
kcwiki分类 {{#invoke: 深海栖舰函数改|getShipDataById|1542|kcwiki分类}} 深海常规舰队 战列舰

模块:深海栖舰数据中,

  • 日文名/中文名/kcwiki分类/属性数据/装备格数/单个装备槽搭载/单个装备槽装备,所有的整型-1和字符串型"-1"都会返回字符'?',空白字符(串)""或" "则原样返回
  • 计算总搭载量时(如{{#invoke: 深海栖舰函数改|getShipDataById|shipID|搭载量}}),搭载数为-1的装备槽视为搭载数0
  • 获得装备列表(如{{#invoke: 深海栖舰函数改|getShipDataById|shipID|装备列表}}),如果某一个装备槽装备了飞机类,但对应的搭载数为-1,则返回的字符串中,只有该飞机装备的中文名,不带搭载数

出错返回

错误调用示例 返回结果
{{#invoke: 深海栖舰函数改|getShipDataById|1542|a}} 第二个参数不正确: 1542, a
{{#invoke: 深海栖舰函数改|getShipDataById|1542|日文名|1}} 模块:深海栖舰函数改:79: 参数个数过多: 1542, 日文名, 1
{{#invoke: 深海栖舰函数改|getShipDataById|1542|属性}} 模块:深海栖舰函数改:130: 参数个数小于3: 1542, 属性
{{#invoke: 深海栖舰函数改|getShipDataById|1542|属性|火力}} 模块:深海栖舰函数改:70: 最后一个参数不是整数: 1542, 属性, 火力
{{#invoke: 深海栖舰函数改|getShipDataById|1542|属性|火力|a}} 模块:深海栖舰函数改:70: 最后一个参数不是整数: 1542, 属性, 火力, a
{{#invoke: 深海栖舰函数改|getShipDataById|11542|属性|火力|1}} ship ID不存在: 11542
{{#invoke: 深海栖舰函数改|getShipDataById|1542|装备}} 模块:深海栖舰函数改:215: 参数个数小于3: 1542, 装备
{{#invoke: 深海栖舰函数改|getShipDataById|1542|装备|a}} 模块:深海栖舰函数改:231: 第三个参数不正确: 1542, 装备, a
{{#invoke: 深海栖舰函数改|getShipDataById|1542|装备|搭载|5}} 模块:深海栖舰函数改:83: 索引越界: 1542, 装备, 搭载, 5

查询不带后缀的栖舰名

调用方法

主要是为了模板:深海栖舰改设计的API,暂无其他用途,使用方法如下:

{{#invoke: 深海栖舰函数改|getShipBasicNameById|栖舰ID|zh}}
{{lang|ja|{{#invoke: 深海栖舰函数改|getShipBasicNameById|栖舰ID|ja}}}}

第一个参数zh/ja分别表示中文名和英文名,例如ID 1744的深海栖舰驱逐NA级后期型flagship,调用该接口的结果为:
驱逐NA级
駆逐ナ級

出错返回

错误调用示例 返回结果
{{#invoke: 深海栖舰函数改|getShipBasicNameById|11744|zh}} ship ID不存在: 11744
{{#invoke: 深海栖舰函数改|getShipBasicNameById|1744|z}} 第二个参数不正确("zh" or "ja"): 1744, z
{{#invoke: 深海栖舰函数改|getShipBasicNameById|1744}} 第二个参数不正确("zh" or "ja"): 1744

实现细节

装备列表

仅供模板:深海栖舰改调用的函数API:

{{#invoke: 深海栖舰函数改|getShipDataById|1604|装备列表}}

实际返回的结果应该是:

<p>20英寸连装炮</p><p>20英寸连装炮</p><p>水上雷达 Mark.II</p><p>深海栖舰侦察机(6)</p>

因为<p></p>会被wiki直接解析,所以不能看到
模板:深海栖舰改中,函数返回值被赋值给变量data2,作为模板:InfoboxKai的参数使用

遗留问题

出现海域

虽然在模块:深海栖舰数据中记录了出现海域数据,但并没有被使用
具体要返回什么样的格式的数据,还需要在今后的使用场景中再讨论/设计
现在调用

{{#invoke: 深海栖舰函数改|getShipDataById|1745|出现海域}}

都会返回
模块:深海栖舰函数改:296: 还不支持出现海域查询