Module:Inventory slot: Difference between revisions

no edit summary
(Just changing order of params, putting title last like in Module:SpriteFile fixes it as well)
 
No edit summary
 
(13 intermediate revisions by the same user not shown)
Line 3: Line 3:
local i18n = {
local i18n = {
filename = 'Invicon $1',
filename = 'Invicon $1',
legacyFilename = 'Grid $1.png',
-- legacyFilename = 'Grid $1.png',
modLink = 'Mods/$1/$2',
legacyFilename = '$1Invicon $2.png',
-- modLink = 'Mods/$1/$2',
modLink = '$1:$2',
moduleAliases = [[Module:Inventory slot/Aliases]],
moduleAliases = [[Module:Inventory slot/Aliases]],
moduleParallelAliases = [[Module:ParallelAliases]],
moduleRandom = [[Module:Random]],
moduleRandom = [[Module:Random]],
-- List of special prefixes which should be handled by
-- List of special prefixes which should be handled by
Line 13: Line 16:
matching = 'Matching',
matching = 'Matching',
damaged = 'Damaged',
damaged = 'Damaged',
-- parallel = 'Parallel', -- added
},
},
suffixes = {
suffixes = {
Line 23: Line 27:
local random = require( i18n.moduleRandom ).random
local random = require( i18n.moduleRandom ).random
local aliases = mw.loadData( i18n.moduleAliases )
local aliases = mw.loadData( i18n.moduleAliases )
local parallelAliases = mw.loadData( i18n.moduleParallelAliases )
local pageName = mw.title.getCurrentTitle().text
local pageName = mw.title.getCurrentTitle().text


Line 99: Line 104:
local category
local category
local title = frame.title or mw.text.trim( args.title or '' )
local title = frame.title or mw.text.trim( args.title or '' )
local mod = frame.mod
-- local mod = frame.mod
local mod = frame.mod  -- <----- THIS IS CHANGED
local name = frame.name or ''
local name = frame.name or ''
local num = frame.num
local num = frame.num
Line 106: Line 112:
local img
local img
if mod then
if mod then
img = i18n.legacyFilename:gsub( '%$1', name .. ' (' .. mod .. ')' )
-- img = i18n.legacyFilename:gsub( '%$1', name .. ' (' .. mod .. ')' )
img = i18n.legacyFilename:gsub( '%$1', mod ):gsub( '%$2', name )  -- <---- this is also different
elseif name:match( '%.gif$' ) or name:match( '%.png$' ) then
elseif name:match( '%.gif$' ) or name:match( '%.png$' ) then
img = i18n.filename:gsub( '%$1', name )
img = i18n.filename:gsub( '%$1', name )
Line 115: Line 122:
img = i18n.filename:gsub( '%$1', name .. '.png' )
img = i18n.filename:gsub( '%$1', name .. '.png' )
end
end
-- local link = args.link or ''
-- if link == '' then
-- if mod then
-- link = i18n.modLink:gsub( '%$1', mod ):gsub( '%$2', name )
-- else
-- link = name:gsub( '^' .. i18n.prefixes.damaged .. ' ', '' )
-- for _, suffix in pairs( i18n.suffixes ) do
-- link = link:gsub( ' ' .. suffix .. '$', '' )
-- end
-- end
-- elseif link:lower() == 'none' then
-- link = nil
-- end
-- if link == pageName then
-- link = nil
-- end
local link = args.link or ''
local link = args.link or ''
if link == '' then
if link == '' then
if mod then
if mod then   -- <----- this if statement is edited too
link = i18n.modLink:gsub( '%$1', mod ):gsub( '%$2', name )
if mod == "parallel" then
link = name
else
link = i18n.modLink:gsub( '%$1', mod ):gsub( '%$2', name )
end
else
else
link = name:gsub( '^' .. i18n.prefixes.damaged .. ' ', '' )
link = name:gsub( '^' .. i18n.prefixes.damaged .. ' ', '' ) .. ' (Vanilla)'
for _, suffix in pairs( i18n.suffixes ) do
for _, suffix in pairs( i18n.suffixes ) do
link = link:gsub( ' ' .. suffix .. '$', '' )
link = link:gsub( ' ' .. suffix .. '$', '' )
Line 222: Line 250:
modData.default = nil
modData.default = nil
end
end
-- if mod == 'parallel' then  -- <------ THIS IS NEW
-- modData.aliases = mw.loadData( 'Module:ParallelAliases' )
-- end
local frames
local frames
Line 304: Line 335:
if aliases or modData.aliases then
if aliases or modData.aliases then
local id = frame.name
local id = frame.name
if frame.mod then
-- if frame.mod then
id = frame.mod .. ':' .. id
-- id = frame.mod .. ':' .. id
end
-- end
if frame.mod then -- <--- THIS IS CHANGED
if frame.mod == 'parallel' then
modData.aliases = parallelAliases
else
id = frame.mod .. ':' .. id
end
end
local alias = modData and modData.aliases and modData.aliases[id] or
local alias = modData and modData.aliases and modData.aliases[id] or