🌟 | 現在、 鉄壁ヘッドショットには対応済みです。 鉄壁HSは通常HSと同じダメージになります。LMG及びDMR、チャージライフル、ハンマーポイント弾を除き、すべてのダメージ値が一致していることを確認しています。 |
「モジュール:LanguageTable」の版間の差分
ナビゲーションに移動
検索に移動
(フルネーム仕様の関数呼び出しに差し替え) |
(強調テキストマークアップの実装) |
||
2行目: | 2行目: | ||
local cfg = mw.loadData('Module:LanguageTable/configuration') | local cfg = mw.loadData('Module:LanguageTable/configuration') | ||
local aw = require('Module:Utility/Library') | |||
local nu = require('Module:Utility/Name') | local nu = require('Module:Utility/Name') | ||
local getArgs -- lazily initialized | local getArgs -- lazily initialized | ||
7行目: | 8行目: | ||
local function renderLanguageTableForWeapons(args) | local function renderLanguageTableForWeapons(args) | ||
local cfglang = cfg[args.lang] | local cfglang = cfg[args.lang] | ||
local getEmphasizableText = aw.getEmphasizableTextFunc('\'\'\'%s\'\'\'') | |||
local tbl = mw.html.create('table') | local tbl = mw.html.create('table') | ||
:addClass('wikitable') | :addClass('wikitable') | ||
14行目: | 16行目: | ||
:done() | :done() | ||
for lang, langname in pairs(cfglang.items) do | for lang, langname in pairs(cfglang.items) do | ||
local shortname = nu.weaponname(args.key, lang) | |||
local longname = nu.weaponfullname(args.key, lang) | |||
local suitablename = getEmphasizableText(shortname, longname) | |||
tbl:tag('tr') | tbl:tag('tr') | ||
:tag('td') | :tag('td') | ||
20行目: | 25行目: | ||
:tag('td') | :tag('td') | ||
:attr('lang', lang) | :attr('lang', lang) | ||
:wikitext( | :wikitext(suitablename) | ||
end | end | ||
return string.format('== %s ==\n', cfglang.title) .. tostring(tbl) | return string.format('== %s ==\n', cfglang.title) .. tostring(tbl) |
2021年5月16日 (日) 18:36時点における版
このモジュールについての説明文ページを モジュール:LanguageTable/doc に作成できます
local p = {} local cfg = mw.loadData('Module:LanguageTable/configuration') local aw = require('Module:Utility/Library') local nu = require('Module:Utility/Name') local getArgs -- lazily initialized local function renderLanguageTableForWeapons(args) local cfglang = cfg[args.lang] local getEmphasizableText = aw.getEmphasizableTextFunc('\'\'\'%s\'\'\'') local tbl = mw.html.create('table') :addClass('wikitable') :tag('tr') :tag('th'):wikitext(cfglang.language):done() :tag('th'):wikitext(cfglang.name):done() :done() for lang, langname in pairs(cfglang.items) do local shortname = nu.weaponname(args.key, lang) local longname = nu.weaponfullname(args.key, lang) local suitablename = getEmphasizableText(shortname, longname) tbl:tag('tr') :tag('td') :wikitext(langname) :done() :tag('td') :attr('lang', lang) :wikitext(suitablename) end return string.format('== %s ==\n', cfglang.title) .. tostring(tbl) end local function preload(frame) if not getArgs then getArgs = require('Module:Arguments').getArgs end local args = getArgs(frame) args.lang = args.lang or 'ja' return args end function p._weapons(args) return renderLanguageTableForWeapons(args) end function p.weapons(frame) local args = preload(frame) return p._weapons(args) end return p