Module:PageRef: Difference between revisionsGive feedback
m check if resource name is an english hero name |
m initial version that supports already localized hero names |
||
| Line 1: | Line 1: | ||
local p = {} | local p = {} | ||
local lang_module = require("Module:Lang") | |||
local heroes_data = mw.loadJsonData("Data:HeroData.json") | local heroes_data = mw.loadJsonData("Data:HeroData.json") | ||
local hero_keys = {} | |||
for key, _ in pairs(heroes_data) do | |||
table.insert(hero_keys, key) | |||
end | |||
local heroes_data = nil --free memory | |||
local function is_hero( | local function is_hero(resource_name_localized) | ||
for hero_key | for _, hero_key in ipairs(hero_keys) do | ||
if | if lang_module.get_string(hero_key) == resource_name_localized then | ||
return true | return true | ||
end | end | ||
| Line 11: | Line 18: | ||
end | end | ||
-- Generates appropriate filename from | -- Generates appropriate filename from resource_name_localized | ||
p.get_file_name = function(frame) | p.get_file_name = function(frame) | ||
local | local resource_name_localized = frame.args[1] | ||
-- Prefix with File namespace | -- Prefix with File namespace | ||
file_name = "File:" .. | file_name = "File:" .. resource_name_localized | ||
--Determine the filename to use | --Determine the filename to use | ||
| Line 22: | Line 29: | ||
--Items use <item_name>.ext | --Items use <item_name>.ext | ||
--Abilities use <ability_name>.ext | --Abilities use <ability_name>.ext | ||
if is_hero( | if is_hero(resource_name_localized) then | ||
file_name = file_name .. "_MM" | file_name = file_name .. "_MM" | ||
--elseif is_item( | --elseif is_item(resource_name_localized) then | ||
--file_name = file_name .. "" | --file_name = file_name .. "" | ||
--elseif is_ability( | --elseif is_ability(resource_name_localized) then | ||
--file_name = file_name .. "" | --file_name = file_name .. "" | ||
end | end | ||