Module:Inventory slot/Aliases

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 = { -- Common fuel types for furnace -- ['Any fuel'] = { 'Coal', 'Charcoal', { title = 'Wood', name = 'Oak Wood' }, { title = 'Wood Planks', name = 'Oak Wood Planks' }, 'Block of Coal' }, ['Any leather armor'] = { 'Leather Cap', 'Leather Tunic', 'Leather Pants', 'Leather Boots' }, ['Any golden armor'] = { 'Golden Helmet', 'Golden Chestplate', 'Golden Leggings', 'Golden Boots' }, ['Any chain armor'] = { 'Chain Helmet', 'Chain Chestplate', 'Chain Leggings', 'Chain Boots' }, ['Any iron armor'] = { 'Iron Helmet', 'Iron Chestplate', 'Iron Leggings', 'Iron Boots' }, ['Any diamond armor'] = { 'Diamond Helmet', 'Diamond Chestplate', 'Diamond Leggings', 'Diamond Boots' }, -- Display names -- ['Broken Elytra'] = { title = 'Elytra', name = 'Broken Elytra' }, ['Brown Mushroom'] = { title = 'Mushroom', name = 'Brown Mushroom' }, ['Brown Mushroom (block)'] = { title = 'Mushroom', name = 'Brown Mushroom (block)' }, ['Clay (block)'] = { title = 'Clay', name = 'Clay (block)' }, ['Enchanted Book'] = { title = '&e', name = 'Enchanted Book' }, ['Enchanted Golden Apple'] = { title = '&d', name = 'Golden Apple' }, ['End Portal (block)'] = { title = 'End Portal', name = 'End Portal (block)' }, ['Golden Apple'] = { title = '&b', name = 'Golden Apple' }, ['Melon (block)'] = { title = 'Melon', name = 'Melon (block)' }, ['Nether Brick (item)'] = { title = 'Nether Brick', name = 'Nether Brick (item)' }, ['Red Mushroom'] = { title = 'Mushroom', name = 'Red Mushroom' }, ['Red Mushroom (block)'] = { title = 'Mushroom', name = 'Red Mushroom (block)' }, ['Snow (layer)'] = { title = 'Snow', name = 'Snow (layer)' }, ['Stone Button'] = { title = 'Button', name = 'Stone Button' }, ['Wooden Button'] = { title = 'Button', name = 'Wooden Button'}, -- Pocket Edition display names -- ['Elytra Wings'] = { title = 'Elytra Wings', name = 'Elytra' }, ['Cooked Beef'] = { title = 'Cooked Beef', name = 'Steak' }, ['Map PE'] = { title = 'Map', name = 'Map', text = 'Display Markers: &cNo' }, ['Locator Map PE'] = { title = 'Map', name = 'Map', text = 'Display Markers: &aYes' }, -- Potions -- ['Awkward Potion'] = { name = 'Awkward Potion', text = '&7No effects' }, ['Water Bottle'] = { name = 'Water Bottle', text = '&7No effects' }, ['Thick Potion'] = { name = 'Thick Potion', text = '&7No effects' }, ['Mundane Potion'] = { name = 'Mundane Potion', text = '&7No effects' }, ['Uncraftable Potion'] = { name = 'Uncraftable Potion', text = '&7No effects' }, ['Awkward Splash Potion'] = { name = 'Awkward Splash Potion', text = '&7No effects' }, ['Splash Water Bottle'] = { name = 'Splash Water Bottle', text = '&7No effects' }, ['Thick Splash Potion'] = { name = 'Thick Splash Potion', text = '&7No effects' }, ['Mundane Splash Potion'] = { name = 'Mundane Splash Potion', text = '&7No effects' }, ['Uncraftable Splash Potion'] = { name = 'Uncraftable Splash Potion', text = '&7No effects' }, ['Awkward Lingering Potion'] = { name = 'Awkward Lingering Potion', text = '&7No effects' }, ['Lingering Water Bottle'] = { name = 'Lingering Water Bottle', text = '&7No effects' }, ['Thick Lingering Potion'] = { name = 'Thick Lingering Potion', text = '&7No effects' }, ['Mundane Lingering Potion'] = { name = 'Mundane Lingering Potion', text = '&7No effects' }, ['Uncraftable Lingering Potion'] = { name = 'Uncraftable Lingering Potion', text = '&7No effects' }, ['Tipped Arrow'] = { name = 'Tipped Arrow', text = '&7No effects' }, ['Arrow of Splashing'] = { name = 'Arrow of Splashing', text = '&7No effects' }, ['Uncraftable Tipped Arrow'] = { name = 'Uncraftable Tipped Arrow', text = '&7No effects' },

['Potion of Night Vision Extended'] = { name = 'Potion of Night Vision', text = '&9Night Vision (8:00)' }, ['Splash Potion of Night Vision Extended'] = { name = 'Splash Potion of Night Vision', text = '&9Night Vision (8:00)' }, ['Lingering Potion of Night Vision Extended'] = { name = 'Lingering Potion of Night Vision', text = '&9Night Vision (2:00)' }, ['Arrow of Night Vision Extended'] = { name = 'Arrow of Night Vision', text = '&9Night Vision (1:00)' }, ['Potion of Night Vision'] = { name = 'Potion of Night Vision', text = '&9Night Vision (3:00)' }, ['Splash Potion of Night Vision'] = { name = 'Splash Potion of Night Vision', text = '&9Night Vision (3:00)' }, ['Lingering Potion of Night Vision'] = { name = 'Lingering Potion of Night Vision', text = '&9Night Vision (0:45)' }, ['Arrow of Night Vision'] = { name = 'Arrow of Night Vision', text = '&9Night Vision (0:22)' },

['Potion of Decay'] = { name = 'Potion of Decay', text = '&cWither II (0:40)' }, ['Splash Potion of Decay'] = { name = 'Splash Potion of Decay', text = '&cWither II (0:30)' }, ['Lingering Potion of Decay'] = { name = 'Lingering Potion of Decay', text = '&cWither II (0:10)' }, ['Arrow of Decay'] = { name = 'Arrow of Decay', text = '&cWither II (0:05)' }, }

-- Tools and weapons -- local tools = { {'Wooden', 'Sword', 1.6, 4 }, {'Stone', 'Sword', 1.6, 5 }, {'Iron', 'Sword', 1.6, 4 }, {'Golden', 'Sword', 1.6, 7 }, {'Diamond', 'Sword', 1.6, 6 }, {'Wooden', 'Pickaxe', 1.2, 2 }, {'Stone', 'Pickaxe', 1.2, 3 }, {'Iron', 'Pickaxe', 1.2, 4 }, {'Golden', 'Pickaxe', 1.2, 2 }, {'Diamond', 'Pickaxe', 1.2, 5 }, {'Wooden', 'Axe', 0.8, 7 }, {'Stone', 'Axe', 0.8, 9 }, {'Iron', 'Axe', 0.9, 9 }, {'Golden', 'Axe', 1, 7 }, {'Diamond', 'Axe', 1, 9 }, {'Wooden', 'Shovel', 1, 2.5 }, {'Stone', 'Shovel', 1, 3.5 }, {'Iron', 'Shovel', 1, 4.5 }, {'Golden', 'Shovel', 1, 2.5 }, {'Diamond', 'Shovel', 1, 5.5 }, {'Wooden', 'Hoe', 1, 1 }, {'Stone', 'Hoe', 2, 1 }, {'Iron', 'Hoe', 3, 1 }, {'Golden', 'Hoe', 1, 1 }, {'Diamond', 'Hoe', 4, 1 } }

local materialGroups = {} local toolGroups = {}

for _, toolProps in ipairs( tools ) do local aliasName = toolProps[1] .. ' ' .. toolProps[2] aliases[aliasName] = { title = aliasName, name = aliasName, text = '/&7When in main hand:/&#160;&7' .. toolProps[3] .. ' Attack Speed/&#160;&7' .. toolProps[4] .. ' Attack Damage' } local materialGroup = toolProps[1]:lower; local toolGroup = toolProps[2]:lower; if toolProps[2] ~= 'Sword' then if materialGroups[materialGroup] == nil then materialGroups[materialGroup] = {} end table.insert( materialGroups[materialGroup], aliases[aliasName] ) end if toolGroups[toolGroup] == nil then toolGroups[toolGroup] = {} end table.insert( toolGroups[toolGroup], aliases[aliasName] ) end

for materialGroup, items in pairs( materialGroups ) do aliases['Any ' .. materialGroup .. ' tools'] = items end

for toolGroup, items in pairs( toolGroups ) do aliases['Any ' .. toolGroup] = items end

-- Lists of item variants -- local itemVariants = { ['Dye'] = mw.clone( 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 Terracotta'] = { 'White Terracotta', 'Orange Terracotta', 'Magenta Terracotta', 'Light Blue Terracotta', 'Yellow Terracotta', 'Lime Terracotta', 'Pink Terracotta', 'Gray Terracotta', 'Light Gray Terracotta', 'Cyan Terracotta', 'Purple Terracotta', 'Blue Terracotta', 'Brown Terracotta', 'Green Terracotta', 'Red Terracotta', 'Black Terracotta', },	['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' }, ['Purpur Block'] = { 'Purpur Block', 'Purpur Pillar' }, ['Stone'] = { 'Stone', 'Andesite', 'Granite', 'Diorite', 'Polished Andesite', 'Polished Granite', 'Polished Diorite' }, } table.insert( itemVariants['Dye'], 1, 'Bone Meal' ) for aliasName, aliasItems in pairs( itemVariants ) do aliases['Any ' .. aliasName] = aliasItems aliases['Matching ' .. aliasName] = aliasItems end

-- Animated icons -- local animatedIcons = { 'Command Block', 'Chain Command Block', 'Repeating Command Block', 'Fire', 'Magma Block', 'Prismarine', 'Sea Lantern', } for _, icon in ipairs( animatedIcons ) do aliases[icon] = icon .. '.gif' end

-- Discs -- local discs = { '13', 'cat', 'blocks', 'chirp', 'far', 'mall', 'mellohi', 'stal', 'strad', 'ward', '11', 'wait' } for _, disc in ipairs( discs ) do local name = disc .. ' Disc' aliases[name] = { title = '&bMusic Disc', name = name, text = '&7C418 - ' .. disc } end

-- Damaged armor, tools and weapons -- local damagedItems = { 'Bow', 'Carrot on a Stick', 'Chain Boots', 'Chain Chestplate', 'Chain Helmet', 'Chain Leggings', 'Diamond Axe', 'Diamond Boots', 'Diamond Chestplate', 'Diamond Helmet', 'Diamond Hoe', 'Diamond Leggings', 'Diamond Pickaxe', 'Diamond Shovel', 'Diamond Sword', 'Elytra', 'Fishing Rod', 'Flint and Steel', 'Golden Axe', 'Golden Boots', 'Golden Chestplate', 'Golden Helmet', 'Golden Hoe', 'Golden Leggings', 'Golden Pickaxe', 'Golden Shovel', 'Golden Sword', 'Iron Axe', 'Iron Boots', 'Iron Chestplate', 'Iron Helmet', 'Iron Hoe', 'Iron Leggings', 'Iron Pickaxe', 'Iron Shovel', 'Iron Sword', 'Leather Boots', 'Leather Tunic', 'Leather Cap', 'Leather Pants', 'Shears', 'Shield', 'Stone Axe', 'Stone Hoe', 'Stone Pickaxe', 'Stone Shovel', 'Stone Sword', 'Wooden Axe', 'Wooden Hoe', 'Wooden Pickaxe', 'Wooden Shovel', 'Wooden Sword' } for _, item in ipairs( damagedItems ) do local name = 'Damaged ' .. item aliases[name] = { title = item, name = name } end

-- Banners and colored items -- local patterns = { 'Base Dexter Canton', 'Base', 'Base Gradient', 'Base Indented', 'Base Sinister Canton', 'Bend', 'Bend Sinister', 'Bordure', 'Bordure Indented', 'Chevron', 'Chief Dexter Canton', 'Chief', 'Chief Indented', 'Chief Sinister Canton', 'Creeper Charge', 'Cross', 'Fess', 'Field Masoned', 'Flower Charge', 'Gradient', 'Inverted Chevron', 'Lozenge', 'Thing', 'Pale', 'Pale Dexter', 'Pale Sinister', 'Paly', 'Per Bend', 'Per Bend Inverted', 'Per Bend Sinister', 'Per Bend Sinister Inverted', 'Per Fess', 'Per Fess Inverted', 'Per Pale', 'Per Pale Inverted', 'Roundel', 'Saltire', 'Skull Charge' } local colors = { 'White', 'Orange', 'Magenta', 'Light Blue', 'Yellow', 'Lime', 'Pink', 'Gray', 'Light Gray', 'Cyan', 'Purple', 'Blue', 'Brown', 'Green', 'Red', 'Black' }

-- Firework Stars -- local fireworkStar = {} for _, color in ipairs( colors ) do local name = color .. ' Firework Star' aliases[name] = { title = 'Firework Star', name = name, text = '&7' .. color } table.insert( fireworkStar, aliases[name] ) for _, pattern in ipairs( patterns ) do name = color .. ' ' .. pattern .. ' Banner' aliases[name] = { title = 'Banner', name = name, text = '&7' .. color .. ' ' .. pattern } end end aliases['Any Firework Star'] = fireworkStar aliases['Matching Firework Star'] = fireworkStar

-- Items that use the sixteen colors -- local coloredItems = { 'Banner', 'Carpet', 'Concrete', 'Concrete Powder', 'Glazed Terracotta', 'Shield', 'Shulker Box', 'Stained Glass', 'Stained Glass Pane', 'Wool', 'Bed' } for _, item in ipairs( coloredItems ) do	local coloredItemAliases = {} for _, color in ipairs( colors ) do table.insert( coloredItemAliases, color .. ' ' .. item ) end aliases['Any ' .. item] = coloredItemAliases aliases['Matching ' .. item] = coloredItemAliases end

-- Potions -- local status = { {'Regeneration', '&9Regeneration', '0:45', '1:30', '0:22' }, {'Swiftness', '&9Speed', '3:00', '8:00', '1:30' }, {'Fire Resistance', '&9Fire Resistance', '3:00', '8:00', '' }, {'Poison', '&cPoison', '0:45', '1:30', '0:21.6' }, {'Healing', '&9Instant Health', , , '' }, {'Night Vision', '&9Night Vision', '3:00', '8:00', '' }, {'Weakness', '&cWeakness', '1:30', '4:00', '' }, {'Strength', '&9Strength', '3:00', '8:00', '1:30' }, {'Slowness', '&cSlowness', '1:30', '4:00', '' }, {'Leaping', '&9Jump Boost', '3:00', '8:00', '1:30' }, {'Harming', '&cInstant Damage', , , '' }, {'Water Breathing', '&9Water Breathing', '3:00', '8:00', '1:30' }, {'Invisibility', '&9Invisibility', '3:00', '8:00', '1:30' }, {'Slow Falling', '&9Slow Falling', '1:30', '4:00', '' }, {'Luck', '&9Luck', '5:00', ,  }, {'Decay', '&cDecay', '0:40', ,  }, --{'potionName', 'potionStatus', 'duration', 'durationExtended', 'durationEnhanced' }, }

for _, statusProps in ipairs( status ) do if statusProps[3] ~= '' then local aliasName = 'Potion of ' .. statusProps[1] aliases[aliasName] = { title = aliasName, name = aliasName, text = statusProps[2] .. ' (' .. statusProps[3] .. ')'} else local aliasName = 'Potion of ' .. statusProps[1] aliases[aliasName] = { title = aliasName, name = aliasName, text = statusProps[2] } end end

local effects = { 'Regeneration', 'Swiftness', 'Fire Resistance', 'Poison', 'Healing', 'Night Vision', 'Weakness', 'Strength', 'Slowness', 'Leaping', 'Harming', 'Water Breathing', 'Invisibility', 'Luck', 'Decay', 'the Turtle Master', } local potionItems = { ['Potion'] = { 'Water Bottle', 'Awkward Potion', 'Thick Potion', 'Mundane Potion', },	['Splash Potion'] = { 'Splash Water Bottle', 'Awkward Splash Potion', 'Thick Splash Potion', 'Mundane Splash Potion', },	['Lingering Potion'] = { 'Lingering Water Bottle', 'Awkward Lingering Potion', 'Thick Lingering Potion', 'Mundane Lingering Potion', },	['Tipped Arrow'] = { 'Arrow of Splashing', 'Tipped Arrow', 'Tipped Arrow', 'Tipped Arrow', }, } for _, effect in ipairs( effects ) do table.insert( potionItems['Splash Potion'], 'Splash Potion of ' .. effect ) table.insert( potionItems['Lingering Potion'], 'Lingering Potion of ' .. effect ) table.insert( potionItems['Tipped Arrow'], 'Arrow of ' .. effect ) end for item, potionAliases in pairs( potionItems ) do aliases['Any ' .. item] = potionAliases aliases['Matching ' .. item] = potionAliases end

-- Wood -- local woods = { 'Oak', 'Spruce', 'Birch', 'Jungle', 'Acacia', 'Dark Oak' } local woodItems = { 'Fence Gate', 'Wood', 'Bark', 'Boat', 'wood Door', 'wood Fence', 'Wood Planks', 'Wood Slab', 'Wood Stairs', 'wood Button', 'wood Pressure Plate', 'wood Trapdoor', } -- used if the items use a different name than the alias local woodNames = { ['wood Door'] = 'Door', ['wood Fence'] = 'Fence', ['wood Button'] = 'Button', ['wood Pressure Plate'] = 'Pressure Plate', ['wood Trapdoor'] = 'Trapdoor', } for _, item in ipairs( woodItems ) do	local itemName = woodNames[item] or item local woodAliases = {} for _, wood in ipairs( woods ) do table.insert( woodAliases, wood .. ' ' .. itemName ) end aliases['Any ' .. item] = woodAliases aliases['Matching ' .. item] = woodAliases end

return aliases