Mudanças entre as edições de "Módulo:TesteBossYawn"
Ir para navegação
Ir para pesquisar
| (19 revisões intermediárias pelo mesmo usuário não estão sendo mostradas) | |||
| Linha 1: | Linha 1: | ||
local p = {} | local p = {} | ||
function p.loadBossData(bossName) | function p.loadBossData(bossName) | ||
local normalizedName = bossName:gsub("^%l", string.upper) | |||
local success, bossData = pcall(function() | local success, bossData = pcall(function() | ||
return require(" | return require("Módulo:"..normalizedName.."/data") | ||
end) | end) | ||
if not success then | if not success then | ||
return | return normalizedName .. " nao encontrado" | ||
end | end | ||
| Linha 22: | Linha 15: | ||
function p.render(frame) | function p.render(frame) | ||
local bossName = frame.args.boss | local bossName = frame.args.boss | ||
if not bossName or bossName == "" then | if not bossName or bossName == "" then | ||
return "<b>Erro:</b> Parâmetro 'boss' não especificado." | return "<b>Erro:</b> Parâmetro 'boss' não especificado." | ||
| Linha 33: | Linha 26: | ||
end | end | ||
local skillsWikiText = "{{Reward|t|itens=14;1}}" | |||
local | |||
bossData. | -- Usa o parser completo | ||
local skillsHTML = frame:preprocess(skillsWikiText) | |||
bossData.recompensasHTML = skillsHTML; | |||
local jsonData = mw.text.jsonEncode(bossData) | |||
jsonData = mw.text.encode(jsonData) | |||
return frame:preprocess([[ | return frame:preprocess([[ | ||
<div class="boss-component" data-json="]] .. jsonData .. [["> | <div class="boss-component" data-json="]] .. jsonData .. [["> | ||
{{#widget: | {{#widget:TesteBossYawnv3}} | ||
</div> | </div> | ||
]]) | ]]) | ||
Edição atual tal como às 23h11min de 9 de abril de 2026
A documentação para este módulo pode ser criada em Módulo:TesteBossYawn/doc
local p = {}
function p.loadBossData(bossName)
local normalizedName = bossName:gsub("^%l", string.upper)
local success, bossData = pcall(function()
return require("Módulo:"..normalizedName.."/data")
end)
if not success then
return normalizedName .. " nao encontrado"
end
return bossData
end
function p.render(frame)
local bossName = frame.args.boss
if not bossName or bossName == "" then
return "<b>Erro:</b> Parâmetro 'boss' não especificado."
end
local bossData = p.loadBossData(bossName)
if not bossData then
return "<b>Erro:</b> Boss '" .. bossName .. "' não encontrado."
end
local skillsWikiText = "{{Reward|t|itens=14;1}}"
-- Usa o parser completo
local skillsHTML = frame:preprocess(skillsWikiText)
bossData.recompensasHTML = skillsHTML;
local jsonData = mw.text.jsonEncode(bossData)
jsonData = mw.text.encode(jsonData)
return frame:preprocess([[
<div class="boss-component" data-json="]] .. jsonData .. [[">
{{#widget:TesteBossYawnv3}}
</div>
]])
end
return p