Module:Sandbox/Aurelain/Patch: Difference between revisions
From Heroes of Might and Magic: Olden Era Official Wiki
No edit summary |
No edit summary |
||
| Line 11: | Line 11: | ||
------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | ||
local function renderSkillLink(id, lang, field, frame) | local function renderSkillLink(id, lang, field, frame) | ||
local level = field:match("level_(%d+)") or '' | local template = '{{Skill' | ||
.. '| id=' .. id | |||
.. '| level=' .. field:match("level_(%d+)") or '' | |||
.. '| filename=1' | |||
.. '| lang=' .. lang | |||
.. '}}' | |||
return frame:preprocess(template) | |||
end | end | ||
Revision as of 07:14, 7 October 2026
This module provides helpful functions for the rendering of a Template:Patch/row.
1. renderLink():
| Input: | Output: |
|---|---|
{{#invoke:Sandbox/Aurelain/Patch|renderLink
| id = skill_sorcery
| lang = en
| field = foo
}} |
Lua error at line 15: attempt to concatenate a nil value. |
{{#invoke:Sandbox/Aurelain/Patch|renderLink
| id = skill_sorcery
| lang = en
| field = skill_level_2_description
}} |
{{Skill| id=skill_sorcery| level=2 |
{{#invoke:Sandbox/Aurelain/Patch|renderLink
| id = dungeon_hero_11
| lang = en
}} |
2. renderText():
| Input: | Output: |
|---|---|
{{#invoke:Sandbox/Aurelain/Patch|renderLink
| field = skill_description
| summary = +❮10▸20❯% Magic Damage dealt.
}} |
+❮10▸20❯% Magic Damage dealt. |
-- Usage: see Module:Patch/doc
local p = {}
-- Displays a variable
------------------------------------------------------------------------------------------------------------------------
local function dump(target)
return '<pre>' .. mw.dumpObject(target) .. '</pre>'
end
--
------------------------------------------------------------------------------------------------------------------------
local function renderSkillLink(id, lang, field, frame)
local template = '{{Skill'
.. '| id=' .. id
.. '| level=' .. field:match("level_(%d+)") or ''
.. '| filename=1'
.. '| lang=' .. lang
.. '}}'
return frame:preprocess(template)
end
--
------------------------------------------------------------------------------------------------------------------------
local function renderHeroLink(id, lang, frame)
local template = '{{LinkIcon'
.. '| id=' .. id
.. '| type=hero'
.. '| filename=1'
.. '| lang=' .. lang
.. '}}'
return frame:preprocess(template)
end
--
------------------------------------------------------------------------------------------------------------------------
function p.renderLink(frame)
local args = frame.args
local id = args.id or ''
local lang = args.lang or ''
local field = args.field or ''
if id:match('skill_') then
return renderSkillLink(id, lang, field, frame)
end
if id:match('_hero_') then
return renderHeroLink(id, lang, frame)
end
return id
end
--
------------------------------------------------------------------------------------------------------------------------
function p.renderText(frame)
local args = frame.args
local field = args.field or ''
local summary = args.summary or ''
return summary
end
return p


