Module:Inventory slot/Aliases: Difference between revisions

No edit summary
Merged colored items
Line 1: Line 1:
local coloredDyes = {
'Light Gray Dye', 'Gray Dye', 'Black Dye', 'Brown Dye', 'Red Dye',
'Orange Dye', 'Yellow Dye', 'Lime Dye', 'Green Dye', 'Cyan Dye',
'Light Blue Dye', 'Blue Dye', 'Purple Dye', 'Magenta Dye', 'Pink Dye',
}
local aliases = {
local aliases = {
-- Common fuel types for furnace --
-- Common fuel types for furnace --
Line 63: Line 58:
['Sparkler'] = { 'Orange Sparkler', 'Blue Sparkler', 'Red Sparkler', 'Purple Sparkler', 'Green Sparkler' },
['Sparkler'] = { 'Orange Sparkler', 'Blue Sparkler', 'Red Sparkler', 'Purple Sparkler', 'Green Sparkler' },
['Matching Chloride'] = { 'Cerium Chloride', 'Mercuric Chloride', 'Potassium Chloride', 'Tungsten Chloride' },
['Matching Chloride'] = { 'Cerium Chloride', 'Mercuric Chloride', 'Potassium Chloride', 'Tungsten Chloride' },
['Matching Colored Torch'] = { 'Blue Torch', 'Red Torch', 'Purple Torch', 'Green Torch' },
['Matching Colored Torch'] = { 'Blue Torch', 'Red Torch', 'Purple Torch', 'Green Torch' }
['Matching Glow Stick'] = { 'White Glow Stick', 'Orange Glow Stick', 'Magenta Glow Stick', 'Light Blue Glow Stick',
'Yellow Glow Stick', 'Lime Glow Stick', 'Pink Glow Stick', 'Gray Glow Stick', 'Cyan Glow Stick',
'Purple Glow Stick', 'Blue Glow Stick', 'Brown Glow Stick', 'Green Glow Stick', 'Red Glow Stick' },
}
}


Line 317: Line 309:
-- Lists of item variants --
-- Lists of item variants --
local itemVariants = {
local itemVariants = {
['Dye'] = mw.clone( coloredDyes ),
['Colored Dye'] = coloredDyes,
['Dyed Wool'] = {
'Light Gray Wool', 'Gray Wool', 'Black Wool', 'Brown Wool', 'Red Wool',
'Orange Wool', 'Yellow Wool', 'Lime Wool', 'Green Wool', 'Cyan Wool',
'Light Blue Wool', 'Blue Wool', 'Purple Wool', 'Magenta Wool', 'Pink Wool',
},
['Dyed Bed'] = {
'Light Gray Bed', 'Gray Bed', 'Black Bed', 'Brown Bed', 'Red Bed',
'Orange Bed', 'Yellow Bed', 'Lime Bed', 'Green Bed', 'Cyan Bed',
'Light Blue Bed', 'Blue Bed', 'Purple Bed', 'Magenta Bed', 'Pink Bed',
},
['Dyed Carpet'] = {
'Light Gray Carpet', 'Gray Carpet', 'Black Carpet', 'Brown Carpet', 'Red Carpet',
'Orange Carpet', 'Yellow Carpet', 'Lime Carpet', 'Green Carpet', 'Cyan Carpet',
'Light Blue Carpet', 'Blue Carpet', 'Purple Carpet', 'Magenta Carpet', 'Pink Carpet',
},
['Dyed Terracotta'] = {
'White Terracotta', 'Light Gray Terracotta', 'Gray Terracotta', 'Black Terracotta',
'Brown Terracotta', 'Red Terracotta', 'Orange Terracotta', 'Yellow Terracotta',
'Lime Terracotta', 'Green Terracotta', 'Cyan Terracotta', 'Light Blue Terracotta',
'Blue Terracotta', 'Purple Terracotta', 'Magenta Terracotta', 'Pink Terracotta',
},
['Dyed Candle'] = {
'White Candle', 'Light Gray Candle', 'Gray Candle', 'Black Candle',
'Brown Candle', 'Red Candle', 'Orange Candle', 'Yellow Candle',
'Lime Candle', 'Green Candle', 'Cyan Candle', 'Light Blue Candle',
'Blue Candle', 'Purple Candle', 'Magenta Candle', 'Pink Candle',
},
['Flower'] = { 'Oxeye Daisy', 'Cornflower', 'Lily of the Valley', 'Wither Rose', 'Red Tulip', 'Orange Tulip', 'White Tulip', 'Pink Tulip', 'Azure Bluet', 'Allium', 'Blue Orchid', 'Poppy', 'Dandelion', 'Torchflower' },
['Flower'] = { 'Oxeye Daisy', 'Cornflower', 'Lily of the Valley', 'Wither Rose', 'Red Tulip', 'Orange Tulip', 'White Tulip', 'Pink Tulip', 'Azure Bluet', 'Allium', 'Blue Orchid', 'Poppy', 'Dandelion', 'Torchflower' },
['Mushroom'] = { 'Red Mushroom', 'Brown Mushroom' },
['Mushroom'] = { 'Red Mushroom', 'Brown Mushroom' },
Line 388: Line 351:
['Stone Button'] = { 'Stone Button', 'Polished Blackstone Button' },
['Stone Button'] = { 'Stone Button', 'Polished Blackstone Button' },
['Stone Pressure Plate'] = { 'Stone Pressure Plate', 'Polished Blackstone Pressure Plate' },
['Stone Pressure Plate'] = { 'Stone Pressure Plate', 'Polished Blackstone Pressure Plate' },
['Candle'] = { 'Candle', 'White Candle', 'Light Gray Candle', 'Gray Candle', 'Black Candle', 'Brown Candle', 'Red Candle', 'Orange Candle', 'Yellow Candle',
'Lime Candle', 'Green Candle', 'Cyan Candle', 'Light Blue Candle', 'Blue Candle', 'Purple Candle', 'Magenta Candle', 'Pink Candle',  },
}
}
table.insert( itemVariants['Dye'], 1, 'White Dye' )
 
-- Copper --
-- Copper --
local copperstuff = {
local copperstuff = {
Line 592: Line 553:
-- Items that use the sixteen colors --
-- Items that use the sixteen colors --
local coloredItems = {
local coloredItems = {
'Balloon',
withWhite = {
'Banner',
'Balloon',
'Bed',
'Banner',
'Carpet',
'Bed',
'Concrete',
'Carpet',
'Concrete Powder',
'Concrete',
'Glazed Terracotta',
'Concrete Powder',
'Hardened $1 Stained Glass',
'Glazed Terracotta',
'Hardened $1 Stained Glass Pane',
'Glow Stick',
'Shield',
'Hardened $1 Stained Glass',
'Shulker Box',
'Hardened $1 Stained Glass Pane',
'Stained Glass',
'Shield',
'Stained Glass Pane',
'Shulker Box',
'Wool'
'Stained Glass',
'Stained Glass Pane',
'Wool',
 
'$Dyed Terracotta',
'$Dyed Candle',
},
noWhite = {
'$Dyed Wool',
'$Dyed Bed',
'$Dyed Carpet',
'$Colored Dye',
}
}
 
local coloredBadItems = {
['Light Gray Glow Stick'] = 1,
['Gray Glow Stick'] = 1,
['Black Glow Stick'] = 1,
}
}
for _, item in ipairs( coloredItems ) do
 
local coloredItemAliases = {}
for type, items in pairs( coloredItems ) do
local itemName = ''
for _, item in ipairs( items ) do
local coloredItemAliases = {}
for _, color in ipairs( colors ) do
local defaultItemAliases
if item:find( '%$1' ) then
 
itemName = item:gsub( '%$1', color )
if item:find( '%$[^1]' ) then
else
defaultItemAliases = {}
itemName = color .. ' ' .. item
local itemName
if type == 'noWhite' then
itemName = item:gsub( '%$%w+', 'White' )
else
itemName = item:gsub( '%$%w+ ', '' )
end
table.insert( defaultItemAliases, itemName )
end
 
for _, color in ipairs( colors ) do
local itemName
if type ~= 'noWhite' or color ~= 'White' then
if item:find( '%$1' ) then
itemName = item:gsub( '%$1', color )
elseif item:find( '%$' ) then
itemName = item:gsub( '%$%w+', color )
else
itemName = color .. ' ' .. item
end
end
 
if not coloredBadItems[itemName] then
if defaultItemAliases then
table.insert( defaultItemAliases, itemName )
end
 
table.insert( coloredItemAliases, itemName )
end
end
 
if defaultItemAliases then
local defaultItem = item:gsub( '%$%w+', '' )
aliases['Any ' .. defaultItem] = defaultItemAliases
aliases['Matching ' .. defaultItem] = defaultItemAliases
end
end
table.insert( coloredItemAliases, itemName )
item = item:gsub( '%$1 ', '' )
item = item:gsub( '%$', '' )
aliases['Any ' .. item] = coloredItemAliases
aliases['Matching ' .. item] = coloredItemAliases
end
end
item = item:gsub( '%$1 ', '')
aliases['Any ' .. item] = coloredItemAliases
aliases['Matching ' .. item] = coloredItemAliases
end
end
-- list of all potions with no effects
-- list of all potions with no effects