Module:Inventory slot/Aliases: Difference between revisions

moved shulker box to sixteen color item category
Update to use split parts for better performance
Line 1: Line 1:
local coloredDyes = 'Orange Dye; Magenta Dye; Light Blue Dye; Dandelion Yellow; Lime Dye; Pink Dye; Gray Dye; Light Gray Dye; Cyan Dye; Purple Dye; Lapis Lazuli; Cocoa Beans; Cactus Green; Rose Red; Ink Sac'
local coloredDyes = {
'Orange Dye', 'Magenta Dye', 'Light Blue Dye', 'Dandelion Yellow', 'Lime Dye',
'Pink Dye', 'Gray Dye', 'Light Gray Dye', 'Cyan Dye', 'Purple Dye',
'Lapis Lazuli', 'Cocoa Beans', 'Cactus Green', 'Rose Red', 'Ink Sac',
}
local aliases = {
local aliases = {
-- Common fuel types for furnace --
-- Common fuel types for furnace --
['Any fuel'] = 'Coal; Charcoal; [Wood]Oak Wood; [Wood Planks]Oak Wood Planks; Block of Coal',
['Any fuel'] = { 'Coal', 'Charcoal', { title = 'Wood', name = 'Oak Wood' }, { title = 'Wood Planks', name = 'Oak Wood Planks' }, 'Block of Coal' },
-- Display names --
-- Display names --
['Broken Elytra'] = '[Elytra]Broken Elytra',
['Broken Elytra'] = { title = 'Elytra', name = 'Broken Elytra' },
['Brown Mushroom'] = '[Mushroom]Brown Mushroom',
['Brown Mushroom'] = { title = 'Mushroom', name = 'Brown Mushroom' },
['Brown Mushroom (block)'] = '[Mushroom]Brown Mushroom (block)',
['Brown Mushroom (block)'] = { title = 'Mushroom', name = 'Brown Mushroom (block)' },
['Clay (block)'] = '[Clay]Clay (block)',
['Clay (block)'] = { title = 'Clay', name = 'Clay (block)' },
['Enchanted Book'] = '[&e]Enchanted Book',
['Enchanted Book'] = { title = '&e', name = 'Enchanted Book' },
['Enchanted Golden Apple'] = '[&d]Golden Apple',
['Enchanted Golden Apple'] = { title = '&d', name = 'Golden Apple' },
['End Portal (block)'] = '[End Portal]End Portal (block)',
['End Portal (block)'] = { title = 'End Portal', name = 'End Portal (block)' },
['Golden Apple'] = '[&b]Golden Apple',
['Golden Apple'] = { title = '&b', name = 'Golden Apple' },
['Melon (block)'] = '[Melon]Melon (block)',
['Melon (block)'] = { title = 'Melon', name = 'Melon (block)' },
['Nether Brick (item)'] = '[Nether Brick]Nether Brick (item)',
['Nether Brick (item)'] = { title = 'Nether Brick', name = 'Nether Brick (item)' },
['Red Mushroom'] = '[Mushroom]Red Mushroom',
['Red Mushroom'] = { title = 'Mushroom', name = 'Red Mushroom' },
['Red Mushroom (block)'] = '[Mushroom]Red Mushroom (block)',
['Red Mushroom (block)'] = { title = 'Mushroom', name = 'Red Mushroom (block)' },
['Snow (layer)'] = '[Snow]Snow (layer)',
['Snow (layer)'] = { title = 'Snow', name = 'Snow (layer)' },
['Stone Button'] = '[Button]Stone Button',
['Stone Button'] = { title = 'Button', name = 'Stone Button' },
['Wooden Button'] = '[Button]Wooden Button',
['Wooden Button'] = { title = 'Button', name = 'Wooden Button' },
-- Potions --
-- Potions --
['Awkward Potion'] = 'Awkward Potion[&7No effects]',
['Awkward Potion'] = { name = 'Awkward Potion', text = '&7No effects' },
['Water Bottle'] = 'Water Bottle[&7No effects]',
['Water Bottle'] = { name = 'Water Bottle', text = '&7No effects' },
['Thick Potion'] = 'Thick Potion[&7No effects]',
['Thick Potion'] = { name = 'Thick Potion', text = '&7No effects' },
['Mundane Potion'] = 'Mundane Potion[&7No effects]',
['Mundane Potion'] = { name = 'Mundane Potion', text = '&7No effects' },
['Uncraftable Potion'] = 'Uncraftable Potion[&7No effects]',
['Uncraftable Potion'] = { name = 'Uncraftable Potion', text = '&7No effects' },
['Awkward Splash Potion'] = 'Awkward Splash Potion[&7No effects]',
['Awkward Splash Potion'] = { name = 'Awkward Splash Potion', text = '&7No effects' },
['Splash Water Bottle'] = 'Splash Water Bottle[&7No effects]',
['Splash Water Bottle'] = { name = 'Splash Water Bottle', text = '&7No effects' },
['Thick Splash Potion'] = 'Thick Splash Potion[&7No effects]',
['Thick Splash Potion'] = { name = 'Thick Splash Potion', text = '&7No effects' },
['Mundane Splash Potion'] = 'Mundane Splash Potion[&7No effects]',
['Mundane Splash Potion'] = { name = 'Mundane Splash Potion', text = '&7No effects' },
['Uncraftable Splash Potion'] = 'Uncraftable Splash Potion[&7No effects]',
['Uncraftable Splash Potion'] = { name = 'Uncraftable Splash Potion', text = '&7No effects' },
['Awkward Lingering Potion'] = 'Awkward Lingering Potion[&7No effects]',
['Awkward Lingering Potion'] = { name = 'Awkward Lingering Potion', text = '&7No effects' },
['Lingering Water Bottle'] = 'Lingering Water Bottle[&7No effects]',
['Lingering Water Bottle'] = { name = 'Lingering Water Bottle', text = '&7No effects' },
['Thick Lingering Potion'] = 'Thick Lingering Potion[&7No effects]',
['Thick Lingering Potion'] = { name = 'Thick Lingering Potion', text = '&7No effects' },
['Mundane Lingering Potion'] = 'Mundane Lingering Potion[&7No effects]',
['Mundane Lingering Potion'] = { name = 'Mundane Lingering Potion', text = '&7No effects' },
['Uncraftable Lingering Potion'] = 'Uncraftable Lingering Potion[&7No effects]',
['Uncraftable Lingering Potion'] = { name = 'Uncraftable Lingering Potion', text = '&7No effects' },
['Tipped Arrow'] = 'Tipped Arrow[&7No effects]',
['Tipped Arrow'] = { name = 'Tipped Arrow', text = '&7No effects' },
['Arrow of Splashing'] = 'Arrow of Splashing[&7No effects]',
['Arrow of Splashing'] = { name = 'Arrow of Splashing', text = '&7No effects' },
['Uncraftable Tipped Arrow'] = 'Uncraftable Tipped Arrow[&7No effects]',
['Uncraftable Tipped Arrow'] = { name = 'Uncraftable Tipped Arrow', text = '&7No effects' },
}
}


-- Lists of item variants --
-- Lists of item variants --
local itemVariants = {
local itemVariants = {
['Dye'] = 'Bone Meal;' .. coloredDyes,
['Dye'] = mw.clone( coloredDyes ),
['Colored Dye'] = coloredDyes,
['Colored Dye'] = coloredDyes,
['Dyed Wool'] = 'Orange Wool; Magenta Wool; Light Blue Wool; Yellow Wool; Lime Wool; Pink Wool; Gray Wool; Light Gray Wool; Cyan Wool; Purple Wool; Blue Wool; Brown Wool; Green Wool; Red Wool; Black Wool',
['Dyed Wool'] = {
['Stained Clay'] = 'White Hardened Clay; Orange Hardened Clay; Magenta Hardened Clay; Light Blue Hardened Clay; Yellow Hardened Clay; Lime Hardened Clay; Pink Hardened Clay; Gray Hardened Clay; Light Gray Hardened Clay; Cyan Hardened Clay; Purple Hardened Clay; Blue Hardened Clay; Brown Hardened Clay; Green Hardened Clay; Red Hardened Clay; Black Hardened Clay',
'Orange Wool', 'Magenta Wool', 'Light Blue Wool', 'Yellow Wool', 'Lime Wool',
['Mushroom'] = '[Mushroom]Red Mushroom; [Mushroom]Brown Mushroom',
'Pink Wool', 'Gray Wool', 'Light Gray Wool', 'Cyan Wool', 'Purple Wool',
['Quartz Block'] = 'Block of Quartz; Chiseled Quartz Block; Pillar Quartz Block',
'Blue Wool', 'Brown Wool', 'Green Wool', 'Red Wool', 'Black Wool',
['Red Sandstone'] = 'Red Sandstone; Chiseled Red Sandstone; Smooth Red Sandstone',
},
['Sandstone'] = 'Sandstone; Chiseled Sandstone; Smooth Sandstone',
['Stained Clay'] = {
['Stone Bricks'] = 'Stone Bricks; Mossy Stone Bricks; Cracked Stone Bricks; Chiseled Stone Bricks',
'White Hardened Clay', 'Orange Hardened Clay', 'Magenta Hardened Clay', 'Light Blue Hardened Clay', 'Yellow Hardened Clay',
['Stone Slab'] = 'Stone Slab; Sandstone Slab; Cobblestone Slab; Bricks Slab; Stone Bricks Slab; Nether Brick Slab; Quartz Slab',
'Lime Hardened Clay', 'Pink Hardened Clay', 'Gray Hardened Clay', 'Light Gray Hardened Clay', 'Cyan Hardened Clay',
'Purple Hardened Clay', 'Blue Hardened Clay', 'Brown Hardened Clay', 'Green Hardened Clay', 'Red Hardened Clay', 'Black Hardened Clay',
},
['Mushroom'] = { { title = 'Mushroom', name = 'Red Mushroom' }, { title = 'Mushroom', name = 'Brown Mushroom' } },
['Quartz Block'] = { 'Block of Quartz', 'Chiseled Quartz Block', 'Pillar Quartz Block' },
['Red Sandstone'] = { 'Red Sandstone', 'Chiseled Red Sandstone', 'Smooth Red Sandstone' },
['Sandstone'] = { 'Sandstone', 'Chiseled Sandstone', 'Smooth Sandstone' },
['Stone Bricks'] = { 'Stone Bricks', 'Mossy Stone Bricks', 'Cracked Stone Bricks', 'Chiseled Stone Bricks' },
['Stone Slab'] = { 'Stone Slab', 'Sandstone Slab', 'Cobblestone Slab', 'Bricks Slab', 'Stone Bricks Slab', 'Nether Brick Slab', 'Quartz Slab' },
}
}
table.insert( itemVariants['Dye'], 1, 'Bone Meal' )
for aliasName, aliasItems in pairs( itemVariants ) do
for aliasName, aliasItems in pairs( itemVariants ) do
aliases['Any ' .. aliasName] = aliasItems
aliases['Any ' .. aliasName] = aliasItems
Line 78: Line 91:
for _, disc in ipairs( discs ) do
for _, disc in ipairs( discs ) do
local name = disc .. ' Disc'
local name = disc .. ' Disc'
aliases[name] = '[&bMusic Disc]' .. name .. '[&7C418 - ' .. disc .. ']'
aliases[name] = { title = '&bMusic Disc', name = name, text = '&7C418 - ' .. disc }
end
end


Line 138: Line 151:
for _, item in ipairs( damagedItems ) do
for _, item in ipairs( damagedItems ) do
local name = 'Damaged ' .. item
local name = 'Damaged ' .. item
aliases[name] = '[' .. item .. ']' .. name
aliases[name] = { title = item, name = name }
end
end


Line 205: Line 218:
for _, color in ipairs( colors ) do
for _, color in ipairs( colors ) do
local name = color .. ' Firework Star'
local name = color .. ' Firework Star'
aliases[name] = '[Firework Star]' .. name .. '[&7' .. color .. ']'
aliases[name] = { title = 'Firework Star', name = name, text = '&7' .. color }
table.insert( fireworkStar, aliases[name] )
table.insert( fireworkStar, aliases[name] )
for _, pattern in ipairs( patterns ) do
for _, pattern in ipairs( patterns ) do
name = color .. ' ' .. pattern .. ' Banner'
name = color .. ' ' .. pattern .. ' Banner'
aliases[name] = '[Banner]' .. name .. '[&7' .. color .. ' ' .. pattern .. ']'
aliases[name] = { title = 'Banner', name = name, text = '&7' .. color .. ' ' .. pattern }
end
end
end
end
fireworkStar = table.concat( fireworkStar, ';' )
aliases['Any Firework Star'] = fireworkStar
aliases['Any Firework Star'] = fireworkStar
aliases['Matching Firework Star'] = fireworkStar
aliases['Matching Firework Star'] = fireworkStar
Line 221: Line 233:
'Carpet',
'Carpet',
'Shield',
'Shield',
    'Shulker Box',
'Shulker Box',
'Stained Glass',
'Stained Glass',
'Stained Glass Pane',
'Stained Glass Pane',
Line 231: Line 243:
table.insert( coloredItemAliases, color .. ' ' .. item )
table.insert( coloredItemAliases, color .. ' ' .. item )
end
end
coloredItemAliases = table.concat( coloredItemAliases, ';' )
aliases['Any ' .. item] = coloredItemAliases
aliases['Any ' .. item] = coloredItemAliases
aliases['Matching ' .. item] = coloredItemAliases
aliases['Matching ' .. item] = coloredItemAliases
Line 258: Line 269:
'Awkward Potion',
'Awkward Potion',
'Thick Potion',
'Thick Potion',
'Mundane Potion'
'Mundane Potion',
},
},
['Splash Potion'] = {
['Splash Potion'] = {
Line 264: Line 275:
'Awkward Splash Potion',
'Awkward Splash Potion',
'Thick Splash Potion',
'Thick Splash Potion',
'Mundane Splash Potion'
'Mundane Splash Potion',
},
},
['Lingering Potion'] = {
['Lingering Potion'] = {
Line 270: Line 281:
'Awkward Lingering Potion',
'Awkward Lingering Potion',
'Thick Lingering Potion',
'Thick Lingering Potion',
'Mundane Lingering Potion'
'Mundane Lingering Potion',
},
},
['Tipped Arrow'] = {
['Tipped Arrow'] = {
Line 276: Line 287:
'Tipped Arrow',
'Tipped Arrow',
'Tipped Arrow',
'Tipped Arrow',
'Tipped Arrow'
'Tipped Arrow',
},
},
}
}
Line 286: Line 297:
end
end
for item, potionAliases in pairs( potionItems ) do
for item, potionAliases in pairs( potionItems ) do
local joinedAliases = table.concat( potionAliases, ';' )
aliases['Any ' .. item] = potionAliases
aliases['Any ' .. item] = joinedAliases
aliases['Matching ' .. item] = potionAliases
aliases['Matching ' .. item] = joinedAliases
end
end


Line 321: Line 331:
table.insert( woodAliases, wood .. ' ' .. itemName )
table.insert( woodAliases, wood .. ' ' .. itemName )
end
end
woodAliases = table.concat( woodAliases, ';' )
aliases['Any ' .. item] = woodAliases
aliases['Any ' .. item] = woodAliases
aliases['Matching ' .. item] = woodAliases
aliases['Matching ' .. item] = woodAliases