置顶公告:【置顶】关于临时开启评论区所有功能的公告(2022.10.22) | 【置顶】关于本站Widget恢复使用的公告
  • 你好~!欢迎来到萌娘百科镜像站!如需查看或编辑,请联系本站管理员注册账号。
  • 本镜像站和其他萌娘百科的镜像站无关,请注意分别。

Module:Housamo/doc

猛汉♂百科,万男皆可猛的百科全书!转载请标注来源页面的网页链接,并声明引自猛汉百科。内容不可商用。
跳到导航 跳到搜索

这是Module:Housamo的文档页面

简介

这个模块主要用于东京放课后召唤师的数据处理,这个模块包含了一些实用的功能函数。

使用本模块的方法:{{#invoke:Housamo|<func_name>|<arg1>|<arg2>|...}}

在本文档中,所有已定义(和即将定义的)的函数名均使用housamo.<func_name>的格式说明原型,然而在上面的使用范例中,<func_name>部分不需要添加任何的housamo.*的前缀,例如,使用时应当遵循如下范例:

{{#invoke:Housamo|Stars|3}}

在本文档中该函数被描述为housamo.Stars,但使用时只需要且只能写Stars否则模块调用失败

在本文档中,参数表会被展开成具体的参数个体(而模块源码中直接使用frame接收一个table),其中,标有[]的参数表示是可选的参数,这类参数在不指定时会被提供默认值,例如,对于定义为housamo.SomeFunc(arg1,[arg2=0],[arg3=0]),如果您只想指定arg1arg3,那么您可以考虑如下几种写法:


{{#invoke:Housamo|SomeFunc|a||b}}  <!-- arg2的位置留空 -->
{{#invoke:Housamo|SomeFunc|a|arg3=b}}  <!-- 除给定的arg1之外直接指定arg3 -->

在上述两种情况中,arg2因未被指定而具有默认值0。这等价于:


{{#invoke:Housamo|SomeFunc|a|0|b}}

函数列表

数据表示

housamo.Stars(num, [compact = false], [extend = false])

输出稀有度的星级表示。

返回
以重复的“★”或“数字+★”构成的字符串。
参数
num:int:表示五角星的数量,注意在此函数中num应当不小于0且不大于5,否则会输出错误的字符串
compact:bool:若为false则稀有度显示是以展开的方式(直接平铺的五角星文本),否则以折叠的方式(数字+★)的模式显现
extend:bool:由于该函数默认限制了星级只能在0~5之间,额外指定该参数为true可打破这一限制,允许超过5的数字输出正确的结果

housamo.TypeColor(type,[sharp])
housamo.tc(type,[sharp])

输出对应于属性type的颜色,函数名可简写为tc,该函数输出的颜色表与参数对照如下:

  • 英雄
  • 世界
返回
HTML颜色代码
参数
type:str:目标的属性名,可以是火|水|木|天|冥|英雄|魔|世界|全
sharp:bool:指定返回结果是否包含#,默认不包含,在某些场合例如表格的style里我们有必要关闭#

housamo.ValueMap([rarity=3], values)
housamo.vm([rarity=3],values)

基于给定的稀有度输出等级数据列,亦可作vm。例如,使用{{#invoke:Housamo|vm|4|100,200,300,400,500,600}},会得到:

100 (LV1)
200 (LV35)
300 (LV45)
400 (LV55)
500 (LV65)
600 (LV75)

若某一项数据不知道,推荐使用?占位,像这样{{#invoke:Housamo|vm|4|100,?,300,?,500,600}},会得到:

100 (LV1)
? (LV35)
300 (LV45)
? (LV55)
500 (LV65)
600 (LV75)

此外,如果提供的数据数量不足,则后面的数据列会自动填充为?{{#invoke:Housamo|vm|4|100,200,300}},会得到:

100 (LV1)
200 (LV35)
300 (LV45)
? (LV55)
? (LV65)
? (LV75)

注意:请不要使用连续的逗号(,)来跳过数据,因为Lua的匹配模式机制,在本函数中连续的逗号会被视为1个逗号。

返回
数据列wikitext
参数
rarity:int:给定的稀有度,控制输出的等级节点,该参数可省略但不可跳过。
values:numberlist(6):数值列,注意,这里所谓的numberlist类型是用逗号,分隔的数列,例如10,5,6,24,7,8这种的,而numberlist(6)指该数列有6个元素,多余元素不予采纳,若列中某个元素不是数字,则在该函数中会被输出为?,关于这个参数的具体用法看看上面的范例就知道了。

资源获取

housamo.CharLink(name, [display = ""])
housamo.cl(name, [display = ""])

输出对应于角色的链接文本。即输入{{#invoke:Housamo|CharLink|戍孝}}则可返回[[东京放课后召唤师:戍孝|戍孝]]的wikitext,由于魔术字解析后于模板展开,而链接解析后于魔术字解析,因此在页面中执行该调用会直接获得一个链接文本,也就是戍孝。该调用的<func_name>可简写为cl

返回
链接文本
参数
name:str:待编订链接文本的名称(通常是角色名),该参数必须指定,否则报错!
display:str:指定该参数可以使用该参数文本覆写原有的链接文本,若指定为空字符串则保持与name相同。

housamo.TypeImage(name, [scale = 30], [full=false])
housamo.typi(name, [scale = 30], [full=false])

输出对应于属性的图片文件名。该调用的<func_name>可简写为typi

返回
文件名/置入文件
参数
name:str:目标的属性名,可以是火|水|木|天|冥|英雄|魔|世界|全,该参数必须指定,否则报错!此外,指定的值不在允许的取值范围内也会报错!
scale:int该参数仅在full=true时生效,指定该参数可以控制该图片的宽度,注意,我们这里只允许图片等比例放大,因此只能指定一个维度的值。
full:bool:指定该参数为true时该功能直接返回置入该图片的wiki文本,否则只返回带有后缀的文件名。

housamo.WeaponImage(name, [scale = 30], [full=false])
housamo.wpi(name, [scale = 30], [full=false])

输出对应于武器的图片文件名,用法与housamo.TypeImage基本相同。该调用的<func_name>可简写为wpi

返回
文件名/置入文件
参数
name:str:目标的武器名,可以是打击|突击|刺击|射击|斩击|魔法|横一文字|狙击|全域|无|未知,该参数必须指定,否则报错!此外,指定的值不在允许的取值范围内也会报错!
scale:int该参数仅在full=true时生效,指定该参数可以控制该图片的宽度,注意,我们这里只允许图片等比例放大,因此只能指定一个维度的值。
full:bool:指定该参数为true时该功能直接返回置入该图片的wiki文本,否则只返回带有后缀的文件名。

housamo.WeaponRangeImage(name, [scale = 30], [full=false])
housamo.wpri(name, [scale = 30], [full=false])

输出对应于武器其攻击范围的图片文件名,用法与housamo.WeaponImage相同,不过这个函数返回的是武器攻击范围的图片而非武器图片。该调用的<func_name>可简写为wpri

返回
文件名/置入文件
参数
name:str:目标的武器名,可以是打击|突击|刺击|射击|斩击|魔法|横一文字|狙击|全域|无|未知,该参数必须指定,否则报错!此外,指定的值不在允许的取值范围内也会报错!
scale:int该参数仅在full=true时生效,指定该参数可以控制该图片的宽度,注意,我们这里只允许图片等比例放大,因此只能指定一个维度的值。
full:bool:指定该参数为true时该功能直接返回置入该图片的wiki文本,否则只返回带有后缀的文件名。

Icon-info.png
此函数尚待改进,如非测试目的请不要大量使用
housamo.WeaponRangeGrid(name, [scale = 30])
housamo.wprg(name, [scale = 30])

输出对应于武器其攻击范围的图示,用法与housamo.WeaponImage类似,但不完全相同,这个函数返回的是武器攻击范围的网格图示,完全通过HTML实现而不借助图片。该调用的<func_name>可简写为wprg

注意:使用此函数之前请务必使用<templatestyles src="User:あの太/沙箱/custom.css" />引用CSS文件,否则您只会获得个寂寞。 不过应该是有办法不需要引入这个东西的,回头我再看看Scribunto怎么调用templatestyles 例如:

<templatestyles src="User:あの太/沙箱/custom.css" />
{{#invoke:Housamo|wprg|斩击}}

会得到:

此函数目前尚未实现自定义功能,预计日后能够实现,此外,基于其图示高清晰度和可定制性,此函数有望替代housamo.WeaponRangeImage

返回
HTML网格
参数
name:str:目标的武器名,可以是打击|突击|刺击|射击|斩击|魔法|横一文字|狙击|全域|无,该参数必须指定,否则报错!此外,指定的值不在允许的取值范围内也会报错!
scale:int:指定该参数可以控制该网格的宽度,注意,我们这里只允许网格长宽等比例,因此只能指定一个维度的值。