Module:Infobox item: Difference between revisionsGive feedback
Jump to navigation
Jump to search
added ITEM_NAME_OVERRIDES |
No edit summary |
||
| Line 32: | Line 32: | ||
-- Item name override mapping (old name -> new name) | -- Item name override mapping (old name -> new name) | ||
local ITEM_NAME_OVERRIDES = { | local ITEM_NAME_OVERRIDES = { | ||
[" | ["debuff remover"] = "Dispel Magic", | ||
["backstabber"] = "Stalker", | |||
} | } | ||
| Line 65: | Line 66: | ||
local function resolve_item_name(name) | local function resolve_item_name(name) | ||
-- Check if there's an override for this name | -- Check if there's an override for this name (case-insensitive) | ||
return | local lowercase_name = name:lower() | ||
local override = ITEM_NAME_OVERRIDES[lowercase_name] | |||
if override then | |||
return override | |||
end | |||
-- If no override, try to find the item in data and return its proper Name | |||
-- First try direct key lookup | |||
if data[name] and not data[name].IsDisabled then | |||
return data[name].Name or name | |||
end | |||
-- Then try case-insensitive search by Name field | |||
local lowercase_search = name:lower() | |||
for _, v in pairs(data) do | |||
if v.Name and v.Name:lower() == lowercase_search and not v.IsDisabled then | |||
return v.Name | |||
end | |||
end | |||
-- Fallback to original name | |||
return name | |||
end | end | ||