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

模組: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:指定該參數可以控制該網格的寬度,注意,我們這裡只允許網格長寬等比例,因此只能指定一個維度的值。