| 🌟 | 現在、 鉄壁HSは通常HSと同じダメージになります。LMG及びDMR、チャージライフル、ハンマーポイント弾を除き、すべてのダメージ値が一致していることを確認しています。 |
「モジュール:Utility/Image」の版間の差分
ナビゲーションに移動
検索に移動
(戦術アビリティ画像に対応) |
(戦術アビリティの参照方法を「名前」から「ID」に変更) |
||
| 20行目: | 20行目: | ||
end | end | ||
local function imagecore(cfg2, name, opts) | local function imagecore(cfg2, name, opts, altname) | ||
if opts.link and opts.link ~= '' then | if opts.link and opts.link ~= '' then | ||
opts.link = string.format(opts.link, name) | opts.link = string.format(opts.link, name) | ||
| 29行目: | 29行目: | ||
return string.format( | return string.format( | ||
'[[File:%s|%dpx|link=%s|alt=%s|class=%s]]', | '[[File:%s|%dpx|link=%s|alt=%s|class=%s]]', | ||
filename, opts.size, opts.link, name, classtext) | filename, opts.size, opts.link, altname or name, classtext) | ||
end | end | ||
| 56行目: | 56行目: | ||
end | end | ||
local function image(cfg2, name, opts) | local function image(cfg2, name, opts, altname) | ||
opts = opts and aw.shallowCopy(opts) or {} | opts = opts and aw.shallowCopy(opts) or {} | ||
opts.link = opts.link or cfg2.items and cfg2.items[name].default_link or cfg2.default_link or cfg.default_link | opts.link = opts.link or cfg2.items and cfg2.items[name].default_link or cfg2.default_link or cfg.default_link | ||
opts.rarity = opts.rarity or cfg2.items and cfg2.items[name].default_rarity or cfg2.default_rarity or cfg.default_rarity | opts.rarity = opts.rarity or cfg2.items and cfg2.items[name].default_rarity or cfg2.default_rarity or cfg.default_rarity | ||
opts.size = opts.size or cfg2.items and cfg2.items[name].default_size or cfg2.default_size or cfg.default_size | opts.size = opts.size or cfg2.items and cfg2.items[name].default_size or cfg2.default_size or cfg.default_size | ||
return imagecore(cfg2, name, opts) | return imagecore(cfg2, name, opts, altname) | ||
end | end | ||
| 76行目: | 76行目: | ||
end | end | ||
function p.tactical(name, | function p.tactical(id, opts) | ||
return image(cfg.tactical, name, opts) | local name = nu.tactical(id, 'ja') | ||
local altname = nu.tactical(id) | |||
return image(cfg.tactical, name, opts, altname) | |||
end | end | ||
return p | return p | ||
2021年3月28日 (日) 10:30時点における版
このモジュールについての説明文ページを モジュール:Utility/Image/doc に作成できます
local p = {}
local cfg = mw.loadData('Module:Utility/Image/configuration')
local aw = require('Module:Utility/Library')
local nu = require('Module:Utility/Name')
local function buildClasses(base, params)
local classes = {}
for _, value in ipairs({ 'body', 'rarity', 'size' }) do
local baseClassName = base[value]
local param = params[value]
if param ~= nil then
local classname = string.format(baseClassName, param)
table.insert(classes, classname)
else
table.insert(classes, baseClassName)
end
end
return table.concat(classes, ' ')
end
local function imagecore(cfg2, name, opts, altname)
if opts.link and opts.link ~= '' then
opts.link = string.format(opts.link, name)
end
local filename = string.format(cfg2.filename, name)
local classtext = buildClasses(cfg2.classes or cfg.classes, opts)
return string.format(
'[[File:%s|%dpx|link=%s|alt=%s|class=%s]]',
filename, opts.size, opts.link, altname or name, classtext)
end
function p.attachment(name, level, opts)
local newopts = opts and aw.shallowCopy(opts) or {}
newopts.link = newopts.link or cfg.attachment.default_link or cfg.default_link
newopts.rarity = newopts.rarity or cfg.attachment.levels[math.min(5, 1 + level)]
newopts.size = newopts.size or cfg.attachment.default_size or cfg.default_size
return imagecore(cfg.attachment, name, newopts)
end
function p.ammo(id, opts)
local name = nu.ammo(id)
local newopts = opts and aw.shallowCopy(opts) or {}
newopts.link = newopts.link or cfg.ammo.default_link or cfg.default_link
newopts.size = newopts.size or cfg.ammo.default_size or cfg.default_size
if newopts.link and newopts.link ~= '' then
newopts.link = string.format(newopts.link, name)
end
local filename = string.format(cfg.ammo.filename, name)
return string.format(
'[[File:%s|x%dpx|link=%s|alt=%s]]',
filename, newopts.size, newopts.link, name)
end
local function image(cfg2, name, opts, altname)
opts = opts and aw.shallowCopy(opts) or {}
opts.link = opts.link or cfg2.items and cfg2.items[name].default_link or cfg2.default_link or cfg.default_link
opts.rarity = opts.rarity or cfg2.items and cfg2.items[name].default_rarity or cfg2.default_rarity or cfg.default_rarity
opts.size = opts.size or cfg2.items and cfg2.items[name].default_size or cfg2.default_size or cfg.default_size
return imagecore(cfg2, name, opts, altname)
end
function p.hopup(name, opts)
return image(cfg.hopup, name, opts)
end
function p.item(name, opts)
return image(cfg.item, name, opts)
end
function p.scope(name, opts)
return image(cfg.scope, name, opts)
end
function p.tactical(id, opts)
local name = nu.tactical(id, 'ja')
local altname = nu.tactical(id)
return image(cfg.tactical, name, opts, altname)
end
return p