🌟現在、鉄壁 鉄壁ヘッドショットには対応済みです。
鉄壁HSは通常HSと同じダメージになります。LMG及びDMR、チャージライフル、ハンマーポイント弾を除き、すべてのダメージ値が一致していることを確認しています。

「モジュール:LanguageTable」の版間の差分

提供:Apex Data
ナビゲーションに移動 検索に移動
(強調テキストマークアップの不具合を修正)
(武器以外の表示に対応)
 
(同じ利用者による、間の1版が非表示)
6行目: 6行目:
local getArgs -- lazily initialized
local getArgs -- lazily initialized


local function renderLanguageTableForWeapons(args)
local function renderLanguageTable(args)
local cfglang = cfg[args.lang]
local cfglang = cfg[args.lang]
local getEmphasizableText = aw.getEmphasizableTextFunc('\'\'\'%s\'\'\'')
local mode = args.mode or 'weapon'
local tbl = mw.html.create('table')
local tbl = mw.html.create('table')
:addClass('wikitable')
:addClass('wikitable')
:addClass('langtable')
:tag('tr')
:tag('tr')
:tag('th'):wikitext(cfglang.language):done()
:tag('th'):wikitext(cfglang.language):done()
:tag('th'):wikitext(cfglang.name):done()
:tag('th'):wikitext(cfglang.name):done()
:done()
:done()
for lang, langname in pairs(cfglang.items) do
if mode == 'weapon' then
local shortname    = nu.weaponname(args.key, lang)
local getEmphasizableText = aw.getEmphasizableTextFunc('\'\'\'%s\'\'\'')
local longname    = nu.weaponfullname(args.key, lang)
for lang, langname in pairs(cfglang.items) do
local suitablename = getEmphasizableText(longname, shortname)
local shortname    = nu.weaponname(args.key, lang)
tbl:tag('tr')
local longname    = nu.weaponfullname(args.key, lang)
:tag('td')
local suitablename = getEmphasizableText(longname, shortname)
:wikitext(langname)
tbl:tag('tr')
:done()
:tag('td')
:tag('td')
:wikitext(langname)
:attr('lang', lang)
:done()
:wikitext(suitablename)
:tag('td')
:attr('lang', lang)
:wikitext(suitablename)
end
else
for lang, langname in pairs(cfglang.items) do
local name = nu[mode](args.key, lang)
tbl:tag('tr')
:tag('td')
:wikitext(langname)
:done()
:tag('td')
:attr('lang', lang)
:wikitext(name)
end
end
end
return string.format('== %s ==\n', cfglang.title) .. tostring(tbl)
return string.format('== %s ==\n', cfglang.title) .. tostring(tbl)
40行目: 55行目:
end
end


function p._weapons(args)
function p._main(args)
return renderLanguageTableForWeapons(args)
return renderLanguageTable(args)
end
end


function p.weapons(frame)
function p.main(frame)
local args = preload(frame)
local args = preload(frame)
return p._weapons(args)
return p._main(args)
end
end


return p
return p

2021年5月17日 (月) 16:46時点における最新版

このモジュールについての説明文ページを モジュール: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 renderLanguageTable(args)
	local cfglang = cfg[args.lang]
	local mode = args.mode or 'weapon'
	local tbl = mw.html.create('table')
		:addClass('wikitable')
		:addClass('langtable')
		:tag('tr')
			:tag('th'):wikitext(cfglang.language):done()
			:tag('th'):wikitext(cfglang.name):done()
			:done()
	if mode == 'weapon' then
		local getEmphasizableText = aw.getEmphasizableTextFunc('\'\'\'%s\'\'\'')
		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(longname, shortname)
			tbl:tag('tr')
				:tag('td')
					:wikitext(langname)
					:done()
				:tag('td')
					:attr('lang', lang)
					:wikitext(suitablename)
		end
	else
		for lang, langname in pairs(cfglang.items) do
			local name = nu[mode](args.key, lang)
			tbl:tag('tr')
				:tag('td')
					:wikitext(langname)
					:done()
				:tag('td')
					:attr('lang', lang)
					:wikitext(name)
		end
	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._main(args)
	return renderLanguageTable(args)
end

function p.main(frame)
	local args = preload(frame)
	return p._main(args)
end

return p