Module:ItemEffect: Difference between revisions
From He is Coming Official Wiki
Benjiminio (talk | contribs) Created page with "local p = {} function p.main(frame) local item = frame.args[1] or "" if item == "" then return "No item specified" end -- Normalize item name (replace spaces with underscores) local safeItem = item:gsub(" ", "_") -- Build effect page title local effectPage = mw.title.new("He_is_Coming/" .. safeItem .. "/effect") if not effectPage or not effectPage.exists then return "Effect page not found" end -- Get the raw wik..." |
Benjiminio (talk | contribs) mNo edit summary |
||
| (6 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
local p = {} | local p = {} | ||
-- Require the ColorText module using full path | |||
local color = require("Module:He_is_Coming/ColorText") | |||
-- Fetch the 'effect' parameter from the item's infobox template | |||
function p.main(frame) | function p.main(frame) | ||
local | local itemName = frame.args[1] or "" | ||
if | if itemName == "" then | ||
return " | return "Error: no item specified" | ||
end | end | ||
-- | -- Attempt to get the content of the item's template | ||
local | local templateName = "Template:" .. itemName | ||
local templateFrame = mw.getContentFrame(templateName) | |||
if not templateFrame then | |||
local | return "Error: item page or template not found" | ||
if not | |||
return " | |||
end | end | ||
-- | -- Get the 'effect' parameter | ||
local effectText = templateFrame:getParameter("effect") or "" | |||
if effectText == "" then | |||
return "Effect not found on item page" | |||
end | end | ||
return effectText | -- Pass effect text to ColorText module for keyword highlighting | ||
-- ColorText expects a table with args[1] containing the text | |||
return color.main({ args = { effectText } }) | |||
end | end | ||
return p | return p | ||
Latest revision as of 11:41, 14 November 2025
Documentation for this module may be created at Module:ItemEffect/doc
local p = {}
-- Require the ColorText module using full path
local color = require("Module:He_is_Coming/ColorText")
-- Fetch the 'effect' parameter from the item's infobox template
function p.main(frame)
local itemName = frame.args[1] or ""
if itemName == "" then
return "Error: no item specified"
end
-- Attempt to get the content of the item's template
local templateName = "Template:" .. itemName
local templateFrame = mw.getContentFrame(templateName)
if not templateFrame then
return "Error: item page or template not found"
end
-- Get the 'effect' parameter
local effectText = templateFrame:getParameter("effect") or ""
if effectText == "" then
return "Effect not found on item page"
end
-- Pass effect text to ColorText module for keyword highlighting
-- ColorText expects a table with args[1] containing the text
return color.main({ args = { effectText } })
end
return p


