Minecraft Wiki
Iscriviti
mNessun oggetto della modifica
Mestesso123 (discussione | contributi)
m (Correzione alla mia precedente modifica)
(10 versioni intermedie di 4 utenti non mostrate)
Riga 8: Riga 8:
 
-- Common fuel types for furnace --
 
-- Common fuel types for furnace --
 
['Ogni carburante'] = { 'Carbone', 'Carbonella', { title = 'Tronco', name = 'Tronco di quercia' }, { title = 'Assi di legno', name = 'Assi di quercia' }, 'Blocco di carbone' },
 
['Ogni carburante'] = { 'Carbone', 'Carbonella', { title = 'Tronco', name = 'Tronco di quercia' }, { title = 'Assi di legno', name = 'Assi di quercia' }, 'Blocco di carbone' },
['Any leather armor'] = { 'Leather Cap', 'Leather Tunic', 'Leather Pants', 'Leather Boots' },
+
['Ogni armatura di cuoio'] = { 'Casco di cuoio', 'Giubba di cuoio', 'Pantaloni di cuoio', 'Stivali di cuoio' },
['Any golden armor'] = { 'Golden Helmet', 'Golden Chestplate', 'Golden Leggings', 'Golden Boots' },
+
['Ogni armatura d\'oro'] = { "Elmo d'oro", "Corazza d'oro", "Gambiere d'oro", "Stivali d'oro" },
['Any chainmail armor'] = { 'Chainmail Helmet', 'Chainmail Chestplate', 'Chainmail Leggings', 'Chainmail Boots' },
+
['Ogni armatura di maglia'] = { 'Elmo di maglia', 'Cotta di maglia', 'Gambiere di maglia', 'Stivali di maglia' },
['Any iron armor'] = { 'Iron Helmet', 'Iron Chestplate', 'Iron Leggings', 'Iron Boots' },
+
['Ogni armatura di ferro'] = { 'Elmo di ferro', 'Corazza di ferro', 'Gambiere di ferro', 'Stivali di ferro' },
['Any diamond armor'] = { 'Diamond Helmet', 'Diamond Chestplate', 'Diamond Leggings', 'Diamond Boots' },
+
['Ogni armatura di diamante'] = { 'Elmo di diamante', 'Corazza di diamante', 'Gambiere di diamante', 'Stivali di diamante' },
  +
['Ogni armatura di netherite'] = { 'Elmo di netherite', 'Corazza di netherite', 'Gambiere di netherite', 'Stivali di netherite' },
  +
  +
-- stones --
  +
['Pietrisco o pietranera'] = { 'Pietrisco', 'Pietranera' },
 
 
 
-- Display names --
 
-- Display names --
['Broken Elytra'] = { title = '&eElytra', name = 'Broken Elytra' },
+
['Elitre spezzate'] = { title = '&eElitre', name = 'Elitre spezzate' },
['Clay (block)'] = { title = 'Clay', name = 'Clay (block)' },
+
['Clay (block)'] = { title = 'Clay', name = 'Clay (block)' }, --remove on Nether Update's release if bedrock also changes the item name
['Clay (ball)'] = { title = 'Clay', name = 'Clay (ball)' },
+
['Clay (ball)'] = { title = 'Clay', name = 'Clay (ball)' }, --remove on Nether Update's release if bedrock also changes the item name
['Enchanted Golden Apple'] = { title = '&dEnchanted Golden Apple', name = 'Golden Apple' },
+
['Figura per stendardo (Fiore)'] = { title = 'Figura per stendardo', name = 'Figura per stendardo', text = '&7Fiore'},
['Banner Pattern Flower'] = { title = 'Banner Pattern', name = 'Banner Pattern', text = '&7Flower Charge'},
+
['Figura per stendardo (Volto di creeper)'] = { title = '&eFigura per stendardo', name = 'Figura per stendardo', text = '&7Volto di creeper'},
['Banner Pattern Flower Charge'] = { title = 'Banner Pattern', name = 'Banner Pattern', text = '&7Flower Charge'},
+
['Figura per stendardo (Bordura dentata)'] = { title = 'Figura per stendardo', name = 'Figura per stendardo', text = '&7Bordura dentata'},
['Banner Pattern Creeper Charge'] = { title = '&eBanner Pattern', name = 'Banner Pattern', text = '&7Creeper Charge'},
+
['Figura per stendardo (Seminato di mattoni)'] = { title = 'Figura per stendardo', name = 'Figura per stendardo', text = '&7Seminato di mattoni'},
['Banner Pattern Creeper'] = { title = '&eBanner Pattern', name = 'Banner Pattern', text = '&7Creeper Charge'},
+
['Figura per stendardo (Teschio)'] = { title = '&eFigura per stendardo', name = 'Figura per stendardo', text = '&7Teschio'},
['Banner Pattern Bordure Indented'] = { title = 'Banner Pattern', name = 'Banner Pattern', text = '&7Bordure Indented'},
+
['Figura per stendardo (Logo)'] = { title = '&dFigura per stendardo', name = 'Figura per stendardo', text = '&7Logo'},
['Banner Pattern Field Masoned'] = { title = 'Banner Pattern', name = 'Banner Pattern', text = '&7Field Masoned'},
+
['Figura per stendardo (Mojang)'] = { title = '&dFigura per stendardo', name = 'Figura per stendardo', text = '&7Logo'},
['Banner Pattern Skull Charge'] = { title = '&eBanner Pattern', name = 'Banner Pattern', text = '&7Skull Charge'},
+
['Figura per stendardo (Globo)'] = { title = 'Figura per stendardo', name = 'Figura per stendardo', text = '&7Globo'},
['Banner Pattern Skull'] = { title = '&eBanner Pattern', name = 'Banner Pattern', text = '&7Skull Charge'},
+
['Figura per stendardo (Grugno)'] = { title = 'Figura per stendardo', name = 'Figura per stendardo', text = '&7Grugno'},
['Banner Pattern Thing'] = { title = '&dBanner Pattern', name = 'Banner Pattern', text = '&7Thing'},
+
['Figura per stendardo (Piglin)'] = { title = 'Figura per stendardo', name = 'Figura per stendardo', text = '&7Grugno'},
['Banner Pattern Globe'] = { title = 'Banner Pattern', name = 'Banner Pattern', text = '&7Globe'},
+
['Pulsante'] = { title = 'Pulsante', name = 'Pulsante di pietra'},
['Button'] = { title = 'Button', name = 'Stone Button'},
+
['Pulsante di legno'] = { title = 'Pulsante', name = 'Pulsante di quercia'},
['Wooden Button'] = { title = 'Button', name = 'Oak Button'},
+
['Balestra caricata con freccia'] = { title = 'Balestra', name = 'Balestra caricata con freccia' },
['Arrow Loaded Crossbow'] = { title = 'Crossbow', name = 'Arrow Loaded Crossbow' },
+
['Damaged Arrow Loaded Crossbow'] = { title = 'Crossbow', name = 'Damaged Arrow Loaded Crossbow' },
['Firework Loaded Crossbow'] = { title = 'Crossbow', name = 'Firework Loaded Crossbow' },
+
['Balestra caricata con razzo pirotecnico'] = { title = 'Balestra', name = 'Balestra caricata con razzo pirotecnico' },
['Illager Banner'] = { title = '&6&oIllager Banner', name = 'Illager Banner', text =
+
['Damaged Firework Loaded Crossbow'] = { title = 'Crossbow', name = 'Damaged Firework Loaded Crossbow' },
  +
['Stendardo abitore'] = { title = '&6&oStendardo abitore', name = 'Stendardo abitore', text =
 
'&7Cyan Lozenge/&7Light Gray Base/&7Gray Pale/&7Light Gray Bordure/&7Black Fess/&7Light Gray Per Fess'},
 
'&7Cyan Lozenge/&7Light Gray Base/&7Gray Pale/&7Light Gray Bordure/&7Black Fess/&7Light Gray Per Fess'},
['Jigsaw Block'] = { title = '&dJigsaw Block', name = 'Jigsaw Block' },
+
['Blocco puzzle'] = { title = '&dBlocco puzzle', name = 'Blocco puzzle' },
  +
['Half Full Bundle'] = { title = 'Bundle', name = 'Half Full Bundle' },
  +
['Full Bundle'] = { title = 'Bundle', name = 'Full Bundle' },
   
 
-- Weapons --
 
-- Weapons --
['Trident'] = { name = 'Trident', text = '/&7 When in main hand:/ &2 1.1 Attack Speed/ &2 9 Attack Damage'},
+
['Tridente'] = { name = 'Tridente', text = '/&7 Nella mano principale:/ &21.1 Velocità di attacco/ &29 Danni per colpo'},
  +
['Trident BE'] = { name = 'Trident', text = '/&9 +8 Attack Damage'},
   
 
-- Bedrock and Education Edition display names --
 
-- Bedrock and Education Edition display names --
Riga 60: Riga 68:
 
-- Tooltip colors --
 
-- Tooltip colors --
 
local yellowTooltips = {
 
local yellowTooltips = {
'Ampolla di esperienza',
 
 
'Testa di creeper',
 
'Testa di creeper',
 
'Elitre danneggiate',
 
'Elitre danneggiate',
Riga 66: Riga 73:
 
'Soffio di drago',
 
'Soffio di drago',
 
'Elitre',
 
'Elitre',
'Libro incantato',
 
 
'Testa',
 
'Testa',
 
'Cuore del mare',
 
'Cuore del mare',
'Stella del Nether',
 
 
'Testa di giocatore',
 
'Testa di giocatore',
 
'Teschio di scheletro',
 
'Teschio di scheletro',
Riga 83: Riga 88:
 
'Faro',
 
'Faro',
 
'Condotto',
 
'Condotto',
"Cristallo dell'End",
 
 
"Mela d'oro",
 
"Mela d'oro",
 
}
 
}
Riga 96: Riga 100:
 
for _, name in ipairs( lightPurpleTooltips ) do
 
for _, name in ipairs( lightPurpleTooltips ) do
 
aliases[name] = { title = '&d', name = name }
 
aliases[name] = { title = '&d', name = name }
  +
end
  +
  +
local orangeItalicTooltips = {
  +
'Ominous Banner',
  +
}
  +
for _, name in ipairs( orangeItalicTooltips ) do
  +
aliases[name] = { title = '&6&o', name = name }
 
end
 
end
   
 
-- Animated icons --
 
-- Animated icons --
 
local animatedIcons = {
 
local animatedIcons = {
  +
'Colonna di bolle',
  +
'Compass',
  +
'Clock',
  +
'Crimson Hyphae',
  +
'Crimson Stem',
  +
'Debug Stick',
 
'Fuoco',
 
'Fuoco',
 
'Heat Block',
 
'Heat Block',
  +
'Lava',
  +
'Lodestone Compass',
 
'Blocco di magma',
 
'Blocco di magma',
  +
'Nether Portal',
 
'Prismarino',
 
'Prismarino',
 
'Lastra di prismarino',
 
'Lastra di prismarino',
Riga 108: Riga 128:
 
'Muretto di prismarino',
 
'Muretto di prismarino',
 
'Lanterna marina',
 
'Lanterna marina',
'Tagliapietre',
+
'Stonecutter',
  +
'Fuoco delle anime',
  +
'Warped Hyphae',
  +
'Warped Stem',
  +
'Acqua',
  +
'Written Book'
 
}
 
}
 
for _, icon in ipairs( animatedIcons ) do
 
for _, icon in ipairs( animatedIcons ) do
Riga 114: Riga 139:
 
end
 
end
   
-- Command blocks are both animated and purple --
+
-- Some things are both animated and yellow --
local commandBlocks = {
+
local animatedIconsYellowTooltips = {
'Blocco comandi',
+
'Enchanted Book',
  +
'Nether Star',
'Blocco comandi a catena',
 
  +
'Bottle o\' Enchanting',
'Blocco comandi a ripetizione',
 
 
}
 
}
for _, name in ipairs( commandBlocks ) do
+
for _, name in ipairs( animatedIconsYellowTooltips ) do
  +
aliases[name] = { title = '&e', name = name .. '.gif' }
  +
end
  +
  +
-- Some things are both animated and aqua --
  +
local animatedIconsAquaTooltips = {
  +
'End Crystal',
  +
}
  +
for _, name in ipairs( animatedIconsAquaTooltips ) do
  +
aliases[name] = { title = '&b', name = name .. '.gif' }
  +
end
  +
  +
-- Some things are both animated and purple --
  +
local animatedIconsPurpleTooltips = {
  +
'Command Block',
  +
'Chain Command Block',
  +
'Repeating Command Block',
  +
'Enchanted Golden Apple',
  +
}
  +
for _, name in ipairs( animatedIconsPurpleTooltips ) do
 
aliases[name] = { title = '&d', name = name .. '.gif' }
 
aliases[name] = { title = '&d', name = name .. '.gif' }
  +
end
  +
  +
-- Bedrock Edition Items --
  +
local animatedEditionItems = {
  +
BE = {
  +
'Lodestone Compass',
  +
},
  +
LCE = {
  +
  +
}
  +
}
  +
for edition, items in pairs(animatedEditionItems) do
  +
for _, item in ipairs(items) do
  +
local name = item .. ' ' .. edition
  +
aliases[name] = { title = item, name = name .. '.gif' }
  +
end
 
end
 
end
   
Riga 131: Riga 191:
 
{"d'oro", 'Spada', 1.6, 4 },
 
{"d'oro", 'Spada', 1.6, 4 },
 
{'di diamante', 'Spada', 1.6, 7 },
 
{'di diamante', 'Spada', 1.6, 7 },
  +
{'Netherite', 'Sword', 1.6, 8 },
 
 
 
{'di legno', 'Piccone', 1.2, 2 },
 
{'di legno', 'Piccone', 1.2, 2 },
Riga 137: Riga 198:
 
{"d'oro", 'Piccone', 1.2, 2 },
 
{"d'oro", 'Piccone', 1.2, 2 },
 
{'di diamante', 'Piccone', 1.2, 5 },
 
{'di diamante', 'Piccone', 1.2, 5 },
  +
{'Netherite', 'Pickaxe', 1.2, 6 },
 
 
 
{'di legno', 'Ascia', 0.8, 7 },
 
{'di legno', 'Ascia', 0.8, 7 },
Riga 143: Riga 205:
 
{"d'oro", 'Ascia', 1, 7 },
 
{"d'oro", 'Ascia', 1, 7 },
 
{'di diamante', 'Ascia', 1, 9 },
 
{'di diamante', 'Ascia', 1, 9 },
  +
{'Netherite', 'Axe', 1, 10 },
 
 
 
{'di legno', 'Pala', 1, 2.5 },
 
{'di legno', 'Pala', 1, 2.5 },
Riga 149: Riga 212:
 
{"d'oro", 'Pala', 1, 2.5 },
 
{"d'oro", 'Pala', 1, 2.5 },
 
{'di diamante', 'Pala', 1, 5.5 },
 
{'di diamante', 'Pala', 1, 5.5 },
  +
{'Netherite', 'Shovel', 1.6, 6.5 },
 
 
 
{'di legno', 'Zappa', 1, 1 },
 
{'di legno', 'Zappa', 1, 1 },
Riga 154: Riga 218:
 
{'di ferro', 'Zappa', 3, 1 },
 
{'di ferro', 'Zappa', 3, 1 },
 
{"d'oro", 'Zappa', 1, 1 },
 
{"d'oro", 'Zappa', 1, 1 },
{'di diamante', 'Zappa', 4, 1 }
+
{'di diamante', 'Zappa', 4, 1 },
  +
{'Netherite', 'Hoe', 4, 1 }
 
}
 
}
   
Riga 162: Riga 227:
 
for _, toolProps in ipairs( tools ) do
 
for _, toolProps in ipairs( tools ) do
 
local aliasName = toolProps[2] .. ' ' .. toolProps[1]
 
local aliasName = toolProps[2] .. ' ' .. toolProps[1]
aliases[aliasName] = { title = aliasName, name = aliasName, text = '/&7When in main hand:/ &2' .. toolProps[3] .. ' Attack Speed/ &2' .. toolProps[4] .. ' Attack Damage' }
+
aliases[aliasName] = { title = aliasName, name = aliasName, text = '/&7Nella mano principale:/ &2' .. toolProps[3] .. ' Velocità di attacco/ &2' .. toolProps[4] .. ' Danni per colpo' }
 
 
 
local materialGroup = toolProps[1]:lower();
 
local materialGroup = toolProps[1]:lower();
Riga 176: Riga 241:
   
 
for materialGroup, items in pairs( materialGroups ) do
 
for materialGroup, items in pairs( materialGroups ) do
aliases['Ogni strumento ' .. materialGroup] = items
+
aliases['Ogni strumento di ' .. materialGroup] = items
 
end
 
end
   
 
for toolGroup, items in pairs( toolGroups ) do
 
for toolGroup, items in pairs( toolGroups ) do
 
aliases['Ogni ' .. toolGroup] = items
 
aliases['Ogni ' .. toolGroup] = items
  +
end
  +
  +
-- Tools and weapons in Bedrock Edition --
  +
local toolsBE = {
  +
{'Wooden', 'Sword', 4 },
  +
{'Stone', 'Sword', 5 },
  +
{'Iron', 'Sword', 6 },
  +
{'Golden', 'Sword', 4 },
  +
{'Diamond', 'Sword', 7 },
  +
{'Netherite', 'Sword', 8 },
  +
  +
{'Wooden', 'Pickaxe', 2 },
  +
{'Stone', 'Pickaxe', 3 },
  +
{'Iron', 'Pickaxe', 4 },
  +
{'Golden', 'Pickaxe', 2 },
  +
{'Diamond', 'Pickaxe', 5 },
  +
{'Netherite', 'Pickaxe', 6 },
  +
  +
{'Wooden', 'Axe', 3 },
  +
{'Stone', 'Axe', 4 },
  +
{'Iron', 'Axe', 5 },
  +
{'Golden', 'Axe', 3 },
  +
{'Diamond', 'Axe', 6 },
  +
{'Netherite', 'Axe', 7 },
  +
  +
{'Wooden', 'Shovel', 1 },
  +
{'Stone', 'Shovel', 2 },
  +
{'Iron', 'Shovel', 3 },
  +
{'Golden', 'Shovel', 1 },
  +
{'Diamond', 'Shovel', 4 },
  +
{'Netherite', 'Shovel', 5 },
  +
  +
{'Wooden', 'Hoe', 2 },
  +
{'Stone', 'Hoe', 3 },
  +
{'Iron', 'Hoe', 4 },
  +
{'Golden', 'Hoe', 2 },
  +
{'Diamond', 'Hoe', 5 },
  +
{'Netherite', 'Hoe', 6 }
  +
}
  +
  +
for _, toolProps in ipairs( toolsBE ) do
  +
local aliasName = toolProps[1] .. ' ' .. toolProps[2]
  +
aliases[aliasName .. ' BE'] = { title = aliasName, name = aliasName, text = '/&9+' .. toolProps[3] .. ' Attack Damage'}
 
end
 
end
   
Riga 186: Riga 294:
 
local itemVariants = {
 
local itemVariants = {
 
['Colorante'] = mw.clone( coloredDyes ),
 
['Colorante'] = mw.clone( coloredDyes ),
['Colored Dye'] = coloredDyes,
 
 
['Lana colorata'] = {
 
['Lana colorata'] = {
 
'Lana arancione', 'Lana magenta', 'Lana azzurra', 'Lana gialla', 'Lana lime',
 
'Lana arancione', 'Lana magenta', 'Lana azzurra', 'Lana gialla', 'Lana lime',
Riga 208: Riga 315:
 
'Terracotta marrone', 'Terracotta verde', 'Terracotta rossa', 'Terracotta nera',
 
'Terracotta marrone', 'Terracotta verde', 'Terracotta rossa', 'Terracotta nera',
 
},
 
},
  +
['Candela colorata'] = {'Candela bianca', 'Candela arancione', 'Candela magenta', 'Candela azzurra', 'Candela gialla', 'Candela lime',
['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' },
 
  +
'Candela rosa', 'Candela grigia', 'Candela grigio chiaro', 'Candela ciano', 'Candela viola',
  +
'Candela blu', 'Candela marrone', 'Candela verde', 'Candela rossa', 'Candela nera' },
  +
['Fiore'] = { 'Margherita', 'Fiordaliso', 'Mughetto', 'Rosa di Wither', 'Tulipano rosso', 'Tulipano arancione', 'Tulipano bianco', 'Tulipano rosa', 'Fiori di campo', 'Fiore di aglio', 'Orchidea blu', 'Papavero', 'Dente di leone' },
 
['Fungo'] = { 'Fungo rosso', 'Fungo marrone' },
 
['Fungo'] = { 'Fungo rosso', 'Fungo marrone' },
['Quartz Block'] = { 'Block of Quartz', 'Chiseled Quartz Block', 'Quartz Pillar' },
+
['Blocco di quarzo'] = { 'Blocco di quarzo', 'Blocco di quarzo cesellato', 'Pilastro di quarzo' },
['Red Sandstone'] = { 'Red Sandstone', 'Chiseled Red Sandstone', 'Smooth Red Sandstone' },
+
['Arenaria rossa'] = { 'Arenaria rossa', 'Arenaria rossa incisa', 'Arenaria rossa cesellata', 'Arenaria rossa levigata' },
['Arenaria'] = { 'Arenaria', 'Arenaria incisa', 'Arenaria levigata' },
+
['Arenaria'] = { 'Arenaria', 'Arenaria incisa', 'Arenaria cesellata', 'Arenaria liscia' },
['Stone Bricks'] = { 'Stone Bricks', 'Mossy Stone Bricks', 'Cracked Stone Bricks', 'Chiseled Stone Bricks' },
+
['Mattoni di pietra'] = { 'Mattoni di pietra', 'Mattoni di pietra muschiosi', 'Mattoni di pietra incrinati', 'Mattoni di pietra cesellati' },
  +
['Lastra di pietra'] = { 'Lastra di pietra', 'Lastra di pietra levigata', 'Lastra di pietrisco', 'Lastra di pietrisco muschioso', 'Lastra di mattoni di pietra', 'Lastra di mattoni di pietra muschiosi', 'Lastra di andesite', 'Lastra di andesite levigata',
['Stone Slab'] = { 'Stone Slab', 'Smooth Stone Slab', 'Cobblestone Slab', 'Mossy Cobblestone Slab', 'Stone Brick Slab', 'Mossy Stone Brick Slab', 'Andesite Slab', 'Polished Andesite Slab',
 
  +
'Lastra di diorite', 'Lastra di diorite levigata', 'Lastra di granito', 'Lastra di granito levigato', 'Lastra di arenaria', 'Lastra di arenaria incisa', 'Lastra di arenaria levigata', 'Lastra di arenaria rossa', 'Lastra di arenaria rossa incisa',
'Diorite Slab', 'Polished Diorite Slab', 'Granite Slab', 'Polished Granite Slab', 'Sandstone Slab', 'Cut Sandstone Slab', 'Smooth Sandstone Slab', 'Red Sandstone Slab', 'Cut Red Sandstone Slab',
 
  +
'Lastra di arenaria rossa levigata', 'Lastra di mattoni', 'Lastra di prismarino', 'Lastra di mattoni di prismarino', 'Lastra di prismarino scuro', 'Lastra di mattoni del Nether', 'Lastra di mattoni del Nether rossi', 'Lastra di quarzo',
'Smooth Red Sandstone Slab', 'Brick Slab', 'Prismarine Slab', 'Prismarine Brick Slab', 'Dark Prismarine Slab', 'Nether Brick Slab', 'Red Nether Brick Slab', 'Quartz Slab',
 
  +
'Lastra di quarzo levigato', 'Lastra di purpur', "Lastra di mattoni di pietra dell'End", 'Lastra di quercia pietrificata', 'Blackstone Slab', 'Polished Blackstone Slab', 'Polished Blackstone Brick Slab' },
'Smooth Quartz Slab', 'Purpur Slab', 'End Stone Brick Slab', 'Petrified Oak Slab' },
 
  +
['Scalini di pietra'] = { 'Scalini di pietra', 'Scalini di pietra levigata', 'Scalini di pietrisco', 'Scalini di pietrisco muschioso', 'Scalini di mattoni di pietra', 'Scalini di mattoni di pietra muschiosi', 'Scalini di andesite', 'Scalini di andesite levigata',
['Stone Stairs'] = { 'Stone Stairs', 'Cobblestone Stairs', 'Mossy Cobblestone Stairs', 'Stone Brick Stairs', 'Mossy Stone Brick Stairs', 'Andesite Stairs', 'Polished Andesite Stairs',
 
  +
'Scalini di diorite', 'Scalini di diorite levigata', 'Scalini di granito', 'Scalini di granito levigato', 'Scalini di arenaria', 'Scalini di arenaria incisa', 'Scalini di arenaria levigata', 'Scalini di arenaria rossa', 'Scalini di arenaria rossa incisa',
'Diorite Stairs', 'Polished Diorite Stairs', 'Granite Stairs', 'Polished Granite Stairs', 'Sandstone Stairs', 'Smooth Sandstone Stairs', 'Red Sandstone Stairs', 'Smooth Red Sandstone Stairs',
 
  +
'Scalini di arenaria rossa levigata', 'Scalini di mattoni', 'Scalini di prismarino', 'Scalini di mattoni di prismarino', 'Scalini di prismarino scuro', 'Scalini di mattoni del Nether', 'Scalini di mattoni del Nether rossi', 'Scalini di quarzo',
'Brick Stairs', 'Prismarine Stairs', 'Prismarine Brick Stairs', 'Dark Prismarine Stairs', 'Nether Brick Stairs', 'Red Nether Brick Stairs', 'Quartz Stairs', 'Smooth Quartz Stairs', 'Purpur Stairs',
 
  +
'Scalini di quarzo levigato', 'Scalini di purpur', "Scalini di mattoni di pietra dell'End", 'Blackstone Stairs', 'Polished Blackstone Stairs', 'Polished Blackstone Brick Stairs' },
'End Stone Brick Stairs' },
 
['Purpur Block'] = { 'Purpur Block', 'Purpur Pillar' },
+
['Blocco di purpur'] = { 'Blocco di purpur', 'Pilastro di purpur' },
['Stone'] = { 'Stone', 'Andesite', 'Granite', 'Diorite', 'Polished Andesite', 'Polished Granite', 'Polished Diorite' },
+
['Pietra'] = { 'Pietra', 'Andesite', 'Granito', 'Diorite', 'Andesite levigata', 'Granito levigato', 'Diorite levigata' },
['Tulip'] = { 'Red Tulip', 'Orange Tulip', 'White Tulip', 'Pink Tulip' },
+
['Tulipano'] = { 'Tulipano rosso', 'Tulipano arancione', 'Tulipano bianco', 'Tulipano rosa' },
['Prismarine'] = { 'Prismarine', 'Prismarine Bricks', 'Dark Prismarine' },
+
['Prismarino'] = { { title = 'Prismarino', name = 'Prismarine.gif' }, 'Mattoni di prismarino', 'Prismarino scuro' },
['Ore'] = { 'Coal Ore', 'Iron Ore', 'Gold Ore', 'Lapis Lazuli Ore', 'Redstone Ore', 'Emerald Ore', 'Diamond Ore', 'Nether Quartz Ore' },
+
['Minerale grezzo'] = { 'Carbone grezzo', 'Ferro grezzo', 'Oro grezzo', 'Lapislazzuli grezzo', 'Redstone grezza', 'Smeraldo grezzo', 'Diamante grezzo', 'Quarzo del Nether grezzo', 'Oro grezzo del Nether' },
['Dead Coral Block'] = { 'Dead Tube Coral Block', 'Dead Brain Coral Block', 'Dead Bubble Coral Block', 'Dead Fire Coral Block', 'Dead Horn Coral Block' },
+
['Blocco di corallo morto'] = { 'Blocco di corallo a tubo morto', 'Blocco di corallo a cervello morto', 'Blocco di corallo a bolle morto', 'Blocco di corallo di fuoco morto', 'Blocco di corallo a corna morto' },
['Coral Block'] = { 'Tube Coral Block', 'Brain Coral Block', 'Bubble Coral Block', 'Fire Coral Block', 'Horn Coral Block' },
+
['Blocco di corallo'] = { 'Blocco di corallo a tubo', 'Blocco di corallo a cervello', 'Blocco di corallo a bolle', 'Blocco di corallo di fuoco', 'Blocco di corallo a corna' },
['Dead Coral'] = { 'Dead Tube Coral', 'Dead Brain Coral', 'Dead Bubble Coral', 'Dead Fire Coral', 'Dead Horn Coral' },
+
['Corallo morto'] = { 'Corallo a tubo morto', 'Corallo a cervello morto', 'Corallo a bolle morto', 'Corallo di fuoco morto', 'Corallo a corna morto' },
['Dead Coral Fan'] = { 'Dead Tube Coral Fan', 'Dead Brain Coral Fan', 'Dead Bubble Coral Fan', 'Dead Fire Coral Fan', 'Dead Horn Coral Fan' },
+
['Gorgonia morta'] = { 'Gorgonia a tubo morta', 'Gorgonia a cervello morta', 'Gorgonia a bolle morta', 'Gorgonia di fuoco morta', 'Gorgonia a corna morta' },
['Coral'] = { 'Tube Coral', 'Brain Coral', 'Bubble Coral', 'Fire Coral', 'Horn Coral' },
+
['Corallo'] = { 'Corallo a tubo', 'Corallo a cervello', 'Corallo a bolle', 'Corallo di fuoco', 'Corallo a corna' },
['Coral Fan'] = { 'Tube Coral Fan', 'Brain Coral Fan', 'Bubble Coral Fan', 'Fire Coral Fan', 'Horn Coral Fan' },
+
['Gorgonia'] = { 'Gorgonia a tubo', 'Gorgonia a cervello', 'Gorgonia a bolle', 'Gorgonia di fuoco', 'Gorgonia a corna' },
['Wall'] = { 'Cobblestone Wall', 'Mossy Cobblestone Wall', 'Stone Brick Wall', 'Mossy Stone Brick Wall', 'Andesite Wall', 'Diorite Wall', 'Granite Wall', 'Sandstone Wall',
+
['Muretto'] = { 'Muretto di pietrisco', 'Muretto di pietrisco muschioso', 'Muretto di mattoni di pietra', 'Muretto di mattoni di pietra muschiosi', 'Muretto di andesite', 'Muretto di diorite', 'Muretto di granito', 'Muretto di arenaria',
  +
'Muretto di arenaria rossa', 'Muretto di mattoni', { title = 'Muretto di prismarino', name = 'Prismarine Wall.gif' }, 'Muretto di mattoni del Nether', 'Muretto di mattoni del Nether rossi', "Muretto di mattoni di pietra dell'End", 'Muretto di pietranera', 'Muretto di pietranera levigata',
'Red Sandstone Wall', 'Brick Wall', 'Prismarine Wall', 'Nether Brick Wall', 'Red Nether Brick Wall', 'End Stone Brick Wall' },
 
  +
'Muretto di mattoni di pietranera levigata' },
  +
['Torcia'] = { 'Torcia', 'Torcia delle anime' },
  +
['Lanterna'] = { 'Lanterna', 'Lanterna delle anime' },
  +
['Fungo del Nether'] = { 'Fungo cremisi', 'Fungo distorto' },
  +
['Funghi del Nether'] = { 'Funcgo cremisi', 'Fungo distorto' },
  +
['Radici'] = { 'Radici cremisi', 'Radici disctorte' },
  +
['Necelio'] = { 'Necelio cremisi', 'Necelio distorto' },
  +
['Sabbia delle anime'] = { 'Sabbia delle anime', 'Terra delle anime' },
  +
['Fuoco da campo'] = { 'Fuoco da campo', 'Fuoco da campo delle anime' },
  +
['Pietranera'] = { 'Pietranera', 'Pietranera levigata', 'Pietranera levigata cesellata', 'Mattoni di pietranera levigata', 'Mattoni di pietranera levigata incrinati' },
  +
['Pulsante di pietra'] = { 'Pulsante di pietra', 'Pulsante di pietra' },
  +
['Pedana a pressione di pietra'] = { 'Pedana a pressione di pietra', 'Pedana a press. di pietranera levigata' },
  +
['Nether Wood Pressure Plate'] = { 'Crimson Pressure Plate', 'Warped Pressure Plate' },
  +
['Nether Wood Fence'] = { 'Crimson Fence', 'Warped Fence' },
  +
['Nether Wood Trapdoor'] = { 'Crimson Trapdoor', 'Warped Trapdoor' },
  +
['Nether Wood Fence Gate'] = { 'Crimson Fence Gate', 'Warped Fence Gate' },
  +
['Nether Wood Stairs'] = { 'Crimson Stairs', 'Warped Stairs' },
  +
['Nether Wood Door'] = { 'Crimson Door', 'Warped Door' },
  +
['Nether Wood Sign'] = { 'Crimson Sign', 'Warped Sign' },
 
}
 
}
 
table.insert( itemVariants['Colorante'], 1, 'Colorante bianco' )
 
table.insert( itemVariants['Colorante'], 1, 'Colorante bianco' )
Riga 240: Riga 369:
 
aliases['Ogni ' .. aliasName] = aliasItems
 
aliases['Ogni ' .. aliasName] = aliasItems
 
aliases[aliasName .. ' corrispondente'] = aliasItems
 
aliases[aliasName .. ' corrispondente'] = aliasItems
  +
end
  +
  +
-- Copper --
  +
local copperstuff = {
  +
['Matching (Weathered) Copper Block'] = {'Copper Block', 'Lightly Weathered Copper Block', 'Semi-Weathered Copper Block', 'Weathered Copper BlocK'},
  +
['Matching (Weathered) Cut Copper'] = {'Cut Copper', 'Lightly Weathered Cut Copper', 'Semi-Weathered Cut Copper', 'Weathered Cut Copper'},
  +
['Matching Waxed (Weathered) Copper Block'] = {'Waxed Copper Block', 'Waxed Lightly Weathered Copper Block', 'Waxed Semi-Weathered Copper Block'},
  +
['Matching Waxed (Weathered) Cut Copper'] = {'Waxed Cut Copper', 'Waxed Lightly Weathered Cut Copper', 'Waxed Semi-Weathered Cut Copper'},
  +
}
  +
local function map(tbl, f)
  +
local t = {}
  +
for k,v in pairs(tbl) do
  +
t[k] = f(v)
  +
end
  +
return t
  +
end
  +
for k, v in pairs(copperstuff) do
  +
aliases[k] = v
  +
local k1 = k:gsub(' Block$', '')
  +
local v1 = map(v, function(s) return s:gsub(' Block$', '') end)
  +
aliases[k1 .. 'Slab'] = map(v1, function(s) return s .. 'Slab' end)
  +
aliases[k1 .. 'Stairs'] = map(v1, function(s) return s .. 'Stairs' end)
 
end
 
end
   
 
-- Discs --
 
-- Discs --
  +
local discs = {
local discs = { '13', 'Cat', 'Blocks', 'Chirp', 'Far', 'Mall', 'Mellohi', 'Stal', 'Strad', 'Ward', '11', 'Wait' }
 
  +
{ '13', 'C418', },
  +
{ 'Cat', 'C418', 'cat' },
  +
{ 'Blocks', 'C418', 'blocks' },
  +
{ 'Chirp', 'C418', 'chirp' },
  +
{ 'Far', 'C418', 'far' },
  +
{ 'Mall', 'C418', 'mall' },
  +
{ 'Mellohi', 'C418', 'mellohi' },
  +
{ 'Stal', 'C418', 'stal' },
  +
{ 'Strad', 'C418', 'strad' },
  +
{ 'Ward', 'C418', 'ward' },
  +
{ '11', 'C418', },
  +
{ 'Wait', 'C418', 'wait' },
  +
{ 'Pigstep', 'Lena Raine', },
  +
}
 
for _, disc in ipairs( discs ) do
 
for _, disc in ipairs( discs ) do
local name = 'Disco musicale ' .. disc
+
local name = 'Disco musicale ' .. disc[1]
  +
local artist = disc[2]
aliases[name] = { title = '&bDisco musicale', name = name, text = '&7C418 - ' .. disc }
 
  +
local trackname = disc[1]
  +
if disc[3] ~= nil then
  +
trackname = disc[3]
  +
end
  +
aliases[name] = { title = '&bDisco musicale', name = name, text = '&7' .. artist .. ' - ' .. trackname }
 
end
 
end
   
 
-- Damaged armor, tools and weapons --
 
-- Damaged armor, tools and weapons --
 
local damagedItems = {
 
local damagedItems = {
'Arrow Loaded Crossbow',
 
 
'Arco',
 
'Arco',
'Carrot on a Stick',
+
'Bastone e carota',
'Chainmail Boots',
+
'Stivali di maglia',
'Chainmail Chestplate',
+
'Cotta di maglia',
'Chainmail Helmet',
+
'Elmo di maglia',
'Chainmail Leggings',
+
'Gambiere di maglia',
'Crossbow',
+
'Balestra',
 
'Ascia di diamante',
 
'Ascia di diamante',
 
'Stivali di diamante',
 
'Stivali di diamante',
Riga 269: Riga 438:
 
'Spada di diamante',
 
'Spada di diamante',
 
'Elitre',
 
'Elitre',
'Firework Loaded Crossbow',
 
 
'Canna da pesca',
 
'Canna da pesca',
 
'Acciarino',
 
'Acciarino',
Riga 294: Riga 462:
 
'Casco di cuoio',
 
'Casco di cuoio',
 
'Pantaloni di cuoio',
 
'Pantaloni di cuoio',
  +
'Netherite Axe',
  +
'Netherite Boots',
  +
'Netherite Chestplate',
  +
'Netherite Helmet',
  +
'Netherite Hoe',
  +
'Netherite Leggings',
  +
'Netherite Pickaxe',
  +
'Netherite Shovel',
  +
'Netherite Sword',
 
'Cesoie',
 
'Cesoie',
 
'Scudo',
 
'Scudo',
Riga 350: Riga 527:
 
'partito a destra di',
 
'partito a destra di',
 
'partito a sinistra di',
 
'partito a sinistra di',
  +
'al piglin di',
  +
'al grugno di',
 
'alla torta di',
 
'alla torta di',
 
'al decusse di',
 
'al decusse di',
Riga 392: Riga 571:
 
'Stendardo',
 
'Stendardo',
 
'Letto',
 
'Letto',
  +
'Candle',
 
'Tappeto',
 
'Tappeto',
 
'Calcestruzzo',
 
'Calcestruzzo',
Riga 410: Riga 590:
 
for _, color in ipairs( colors ) do
 
for _, color in ipairs( colors ) do
 
if item:find( '%$1' ) then
 
if item:find( '%$1' ) then
itemName = string.gsub( item, '%$1', color )
+
itemName = item:gsub( '%$1', color )
 
else
 
else
 
itemName = item .. ' ' .. color
 
itemName = item .. ' ' .. color
Riga 423: Riga 603:
 
-- list of all potions with no effects
 
-- list of all potions with no effects
 
local noEffects = {
 
local noEffects = {
  +
"Ampolla d'acqua",
'Water Bottle',
 
'Awkward Potion',
+
'Pozione strana',
'Thick Potion',
+
'Pozione densa',
'Mundane Potion',
+
'Pozione ordinaria',
  +
'Pozione non fabbricabile',
'Uncraftable Potion',
 
  +
"Ampolla d'acqua da lancio",
'Splash Water Bottle',
 
'Awkward Splash Potion',
+
'Pozione strana da lancio',
'Thick Splash Potion',
+
'Pozione densa da lancio',
  +
'Pozione ordinaria da lancio',
'Mundane Splash Potion',
 
  +
'Pozione da lancio non fabbricabile',
'Uncraftable Splash Potion',
 
  +
"Ampolla d'acqua persistente",
'Lingering Water Bottle',
 
  +
'Pozione strana persistente',
'Awkward Lingering Potion',
 
  +
'Pozione densa persistente',
'Thick Lingering Potion',
 
  +
'Pozione ordinaria persistente',
'Mundane Lingering Potion',
 
  +
'Pozione persistente non fabbricabile',
'Uncraftable Lingering Potion',
 
'Tipped Arrow',
+
'Freccia imbevuta',
  +
"Freccia d'acqua",
'Arrow of Splashing',
 
  +
'Freccia imbevuta non fabbricabile',
'Uncraftable Tipped Arrow',
 
 
}
 
}
 
for _, name in ipairs(noEffects) do
 
for _, name in ipairs(noEffects) do
aliases[name] = { name = name, text = '&7No effects' }
+
aliases[name] = { name = name, text = '&7Nessun effetto' }
 
end
 
end
   
 
-- start these lists with the no effect items as names are not normal
 
-- start these lists with the no effect items as names are not normal
 
local potionItems = {
 
local potionItems = {
['Potion'] = {
+
['Pozione'] = {
aliases['Water Bottle'],
+
aliases["Ampolla d'acqua"],
aliases['Awkward Potion'],
+
aliases['Pozione strana'],
aliases['Thick Potion'],
+
aliases['Pozione densa'],
aliases['Mundane Potion'],
+
aliases['Pozione ordinaria'],
 
},
 
},
['Splash Potion'] = {
+
['Pozione da lancio'] = {
aliases['Splash Water Bottle'],
+
aliases["Ampolla d'acqua da lancio"],
aliases['Awkward Splash Potion'],
+
aliases['Pozione strana da lancio'],
aliases['Thick Splash Potion'],
+
aliases['Pozione densa da lancio'],
aliases['Mundane Splash Potion'],
+
aliases['Pozione ordinaria da lancio'],
 
},
 
},
['Lingering Potion'] = {
+
['Pozione persistente'] = {
aliases['Lingering Water Bottle'],
+
aliases["Ampolla d'acqua persistente"],
aliases['Awkward Lingering Potion'],
+
aliases['Pozione strana persistente'],
aliases['Thick Lingering Potion'],
+
aliases['Pozione densa persistente'],
aliases['Mundane Lingering Potion'],
+
aliases['Pozione ordinaria persistente'],
 
},
 
},
['Tipped Arrow'] = {
+
['Freccia imbevuta'] = {
aliases['Arrow of Splashing'],
+
aliases["Freccia d'acqua"],
  +
aliases['Freccia imbevuta'],
  +
aliases['Freccia imbevuta'],
  +
aliases['Freccia imbevuta'],
 
},
 
},
 
}
 
}
Riga 474: Riga 657:
 
local effects = {
 
local effects = {
 
-- durations are in the order normal, extended, enhanced
 
-- durations are in the order normal, extended, enhanced
{name = 'Regeneration', effect = '&9Regeneration', enhanced = 'II',
+
{name = 'di rigenerazione', effect = '&9Rigenerazione', enhanced = 'II',
 
durations = { normal = { '0:45', '1:30', '0:22' }, lingering = { '0:11', '0:22', '0:05' }, arrow = { '0:05', '0:11', '0:02' }}},
 
durations = { normal = { '0:45', '1:30', '0:22' }, lingering = { '0:11', '0:22', '0:05' }, arrow = { '0:05', '0:11', '0:02' }}},
{ name = 'Swiftness', effect = '&9Speed', enhanced = 'II',
+
{ name = 'di velocità', effect = '&9Velocità', enhanced = 'II',
 
durations = { normal = { '3:00', '8:00', '1:30' }, lingering = { '0:45', '2:00', '0:22' }, arrow = { '0:22', '1:00', '0:11' }}},
 
durations = { normal = { '3:00', '8:00', '1:30' }, lingering = { '0:45', '2:00', '0:22' }, arrow = { '0:22', '1:00', '0:11' }}},
{ name = 'Fire Resistance', effect = '&9Fire Resistance', durations = { normal = { '3:00', '8:00' }, lingering = { '0:45', '2:00' }, arrow = { '0:22', '1:00' }}},
+
{ name = 'di resistenza al fuoco', effect = '&9Resist. al fuoco', durations = { normal = { '3:00', '8:00' }, lingering = { '0:45', '2:00' }, arrow = { '0:22', '1:00' }}},
{ name = 'Poison', effect = '&cPoison', enhanced = 'II',
+
{ name = 'di avvelenamento', effect = '&cAvvelenamento', enhanced = 'II',
 
durations = { normal = { '0:45', '1:30', '0:21' }, lingering = { '0:11', '0:22', '0:05' }, arrow = { '0:05', '0:11', '0:02' }}},
 
durations = { normal = { '0:45', '1:30', '0:21' }, lingering = { '0:11', '0:22', '0:05' }, arrow = { '0:05', '0:11', '0:02' }}},
{ name = 'Healing', effect = '&9Instant Health', enhanced = 'II' },
+
{ name = 'di cura', effect = '&9Salute istantanea', enhanced = 'II' },
{ name = 'Night Vision', effect = '&9Night Vision', durations = { normal = { '3:00', '8:00' }, lingering = { '0:45', '2:00' }, arrow = { '0:22', '1:00' }}},
+
{ name = 'di visione notturna', effect = '&9Visione notturna', durations = { normal = { '3:00', '8:00' }, lingering = { '0:45', '2:00' }, arrow = { '0:22', '1:00' }}},
{ name = 'Weakness', effect = '&cWeakness', durations = { normal = { '1:30', '4:00' }, lingering = { '0:22', '1:00' }, arrow = { '0:11', '0:30' }}},
+
{ name = 'di debolezza', effect = '&cDebolezza', durations = { normal = { '1:30', '4:00' }, lingering = { '0:22', '1:00' }, arrow = { '0:11', '0:30' }}},
{ name = 'Strength', effect = '&9Strength', enhanced = 'II',
+
{ name = 'di forza', effect = '&9Forza', enhanced = 'II',
 
durations = { normal = { '3:00', '8:00', '1:30'}, lingering = {'0:45', '2:00', '0:22'}, arrow = { '0:22', '1:00', '0:11' }}},
 
durations = { normal = { '3:00', '8:00', '1:30'}, lingering = {'0:45', '2:00', '0:22'}, arrow = { '0:22', '1:00', '0:11' }}},
{ name = 'Slowness', effect = '&cSlowness', enhanced = 'IV',
+
{ name = 'di lentezza', effect = '&cLentezza', enhanced = 'IV',
 
durations = { normal = { '1:30', '4:00', '0:20'}, lingering = {'0:22', '1:00', '0:05'}, arrow = { '0:11', '0:30', '0:02' }}},
 
durations = { normal = { '1:30', '4:00', '0:20'}, lingering = {'0:22', '1:00', '0:05'}, arrow = { '0:11', '0:30', '0:02' }}},
{ name = 'Leaping', effect = '&9Jump Boost', enhanced = 'II',
+
{ name = 'di salto', effect = '&9Salto ampliato', enhanced = 'II',
 
durations = { normal = { '3:00', '8:00', '1:30' }, lingering = {'0:45', '2:00', '0:22'}, arrow = { '0:22', '1:00', '0:11' }}},
 
durations = { normal = { '3:00', '8:00', '1:30' }, lingering = {'0:45', '2:00', '0:22'}, arrow = { '0:22', '1:00', '0:11' }}},
{ name = 'Harming', effect = '&cInstant Damage', enhanced = 'II' },
+
{ name = 'di danno', effect = '&cDanno istantaneo', enhanced = 'II' },
{ name = 'Water Breathing', effect = '&9Water Breathing', durations = { normal = { '3:00', '8:00' }, lingering = { '0:45', '2:00' }, arrow = { '0:22', '1:00' }}},
+
{ name = 'di respirazione acquatica', effect = '&9Respir. acquatica', durations = { normal = { '3:00', '8:00' }, lingering = { '0:45', '2:00' }, arrow = { '0:22', '1:00' }}},
{ name = 'Invisibility', effect = '&9Invisibility', durations = { normal = { '3:00', '8:00' }, lingering = { '0:45', '2:00' }, arrow = { '0:22', '1:00' }}},
+
{ name = "d'invisibilità", effect = '&9Invisibilità', durations = { normal = { '3:00', '8:00' }, lingering = { '0:45', '2:00' }, arrow = { '0:22', '1:00' }}},
{ name = 'Slow Falling', effect = '&9Slow Falling', durations = { normal = { '1:30', '4:00' }, lingering = { '0:22', '1:00' }, arrow = { '0:11', '0:30' }}},
+
{ name = 'di caduta lenta', effect = '&9Caduta lenta', durations = { normal = { '1:30', '4:00' }, lingering = { '0:22', '1:00' }, arrow = { '0:11', '0:30' }}},
{ name = 'Luck', effect = '&9Luck', durations = { normal = { '5:00' }, lingering = { '1:15' }, arrow = { '0:37' }}},
+
{ name = 'di fortuna', effect = '&9Fortuna', durations = { normal = { '5:00' }, lingering = { '1:15' }, arrow = { '0:37' }}},
{ name = 'Decay', effect = '&cWither', durations = { normal = { '0:40' }, lingering = { '0:10' }, arrow = { '0:05' }}},
+
{ name = "d'avvizzimento", effect = '&cWither', durations = { normal = { '0:40' }, lingering = { '0:10' }, arrow = { '0:05' }}},
{ name = 'the Turtle Master', text = '&cSlowness IV ($1)/&9Resistance III ($1)', enhanced = '&cSlowness VI ($1)/&9Resistance IV ($1)',
+
{ name = 'del maestro tartaruga', text = '&cLentezza IV ($1)/&9Resistenza III ($1)', enhanced = '&cLentezza VI ($1)/&9Resistenza IV ($1)',
 
durations = { normal = { '0:20', '0:40', '0:20' }, lingering = { '0:15', '0:45', '0:15' }, arrow = { '0:07', '0:22', '0:07' }}}
 
durations = { normal = { '0:20', '0:40', '0:20' }, lingering = { '0:15', '0:45', '0:15' }, arrow = { '0:07', '0:22', '0:07' }}}
 
}
 
}
 
local types = {
 
local types = {
{name = 'Potion', durations = 'normal', text = 'Potion of '},
+
{name = 'Pozione', durations = 'normal', text = 'Pozione '},
{name = 'Splash Potion', durations = 'normal', text = 'Splash Potion of '},
+
{name = 'Pozione da lancio', durations = 'normal', text = 'Pozione da lancio '},
{name = 'Lingering Potion', durations = 'lingering', text = 'Lingering Potion of '},
+
{name = 'Pozione persistente', durations = 'lingering', text = 'Pozione persistente '},
{name = 'Tipped Arrow', durations = 'arrow', text = 'Arrow of '},
+
{name = 'Freccia imbevuta', durations = 'arrow', text = 'Freccia '},
 
}
 
}
   
Riga 509: Riga 692:
 
for _, type in ipairs(types) do
 
for _, type in ipairs(types) do
 
-- form name, it will be reused
 
-- form name, it will be reused
local name = type.text .. effect.name
+
local name = type.text .. effect.name
  +
local potionName = {}
  +
if type.name == 'Tipped Arrow' then
  +
potionName = type.text .. effect.name
  +
else
  +
potionName = type.text .. effect.name .. '.gif'
  +
end
 
 
 
-- if we have durations, add times
 
-- if we have durations, add times
Riga 517: Riga 706:
 
-- turtle master is weird, so just do a fancy string replacement
 
-- turtle master is weird, so just do a fancy string replacement
 
if effect.text then
 
if effect.text then
aliases[name] = { name = name, text = string.gsub( effect.text, '%$1', durations[1] ) }
+
aliases[name] = { name = potionName, text = effect.text:gsub( '%$1', durations[1] ) }
aliases[name .. ' Extended'] = { name = name, text = string.gsub( effect.text, '%$1', durations[2] ) }
+
aliases[name .. ' esteso'] = { name = potionName, text = effect.text:gsub( '%$1', durations[2] ) }
aliases[name .. ' Enhanced'] = { name = name, text = string.gsub( effect.enhanced, '%$1', durations[3] ) }
+
aliases[name .. ' migliorata'] = { name = potionName, text = effect.enhanced:gsub( '%$1', durations[3] ) }
 
else
 
else
 
-- we always have normal
 
-- we always have normal
aliases[name] = { name = name, text = string.format( '%s (%s)', effect.effect, durations[1] ) }
+
aliases[name] = { name = potionName, text = string.format( '%s (%s)', effect.effect, durations[1] ) }
 
 
 
-- ensure we have extended
 
-- ensure we have extended
 
if durations[2] then
 
if durations[2] then
aliases[name .. ' Extended'] = { name = name, text = string.format( '%s (%s)', effect.effect, durations[2] ) }
+
aliases[name .. ' esteso'] = { name = potionName, text = string.format( '%s (%s)', effect.effect, durations[2] ) }
 
 
 
-- and enhanced, currently there is nothing with a duration that can be extended but not enhanced
 
-- and enhanced, currently there is nothing with a duration that can be extended but not enhanced
 
if effect.enhanced then
 
if effect.enhanced then
aliases[name .. ' Enhanced'] = { name = name, text = string.format( '%s %s (%s)', effect.effect, effect.enhanced, durations[3] ) }
+
aliases[name .. ' migliorata'] = { name = potionName, text = string.format( '%s %s (%s)', effect.effect, effect.enhanced, durations[3] ) }
 
end
 
end
 
end
 
end
Riga 536: Riga 725:
 
else
 
else
 
-- otherwise its just effect, currently every potion with no duration can be enhanced
 
-- otherwise its just effect, currently every potion with no duration can be enhanced
aliases[name] = { name = name, text = effect.effect}
+
aliases[name] = { name = potionName, text = effect.effect}
aliases[name .. ' Enhanced'] = { name = name, text = effect.effect .. ' ' .. effect.enhanced }
+
aliases[name .. ' migliorata'] = { name = potionName, text = effect.effect .. ' ' .. effect.enhanced }
 
end
 
end
 
 
Riga 551: Riga 740:
 
end
 
end
   
-- Legno --
+
-- Wood --
local woods = {
+
local woodTypes = {
  +
overworld = {
'di quercia',
 
'di abete',
+
'di quercia',
'di betulla',
+
'di abete',
  +
'di betulla',
'della giungla',
 
  +
'della giungla',
'di acacia',
 
'di quercia scura'
+
'di acacia',
  +
'di quercia scura',
  +
},
  +
nether = {
  +
'Crimson',
  +
'Warped'
  +
},
  +
both = {},
 
}
 
}
  +
local woodTypeWorld = {}
  +
for _, world in ipairs({'overworld', 'nether'}) do
  +
local woods = woodTypes[world]
  +
for _, type in ipairs(woods) do
  +
woodTypeWorld[type] = world
  +
table.insert(woodTypes.both, type)
  +
end
  +
end
 
local woodItems = {
 
local woodItems = {
  +
overworld = {
'Legno',
 
  +
'Legno',
'Tronco',
 
  +
'Tronco',
'Assi',
 
  +
'Barca',
'Cancelletto',
 
  +
'Tronco $1 scortecciato',
'Barca',
 
  +
'Legno $1 scortecciato',
'Porta',
 
  +
'Assi',
'Staccionata',
 
  +
'Lastra',
'Pulsante',
 
  +
'Scalini',
'Pedana a pressione',
 
  +
'Pedana a pressione',
'Botola',
 
  +
'Pulsante',
'Lastra',
 
  +
'Porta',
'Scalini',
 
  +
'Botola',
'Tronco $1 scortecciato',
 
  +
'Cancelletto',
'Legno $1 scortecciato',
 
  +
'Staccionata',
'Cartello',
 
  +
'Cartello',
'Arboscello',
 
  +
'Arboscello',
  +
},
  +
nether = {
  +
'Stem',
  +
'Hyphae',
  +
'Stripped $1 Stem',
  +
'Stripped $1 Hyphae',
  +
},
  +
both = {
  +
'$world Planks',
  +
'${Wood,Hyphae}',
  +
'${Log,Stem}',
  +
'Stripped $1 ${Wood,Hyphae}',
  +
'Stripped $1 ${Log,Stem}',
  +
'Fence Gate',
  +
-- '$world Wood Fence',
  +
'$wood Fence',
  +
'$wood Door',
  +
'$wood Button',
  +
'$wood Pressure Plate',
  +
'$wood Trapdoor',
  +
'$world $wood Slab',
  +
'$wood Stairs',
  +
'Sign'
  +
}
 
}
 
}
  +
local woodItemWorld = {}
  +
for world, items in pairs(woodItems) do
  +
for _, item in ipairs(items) do
  +
-- expand $world (should only happen in "both")
  +
if (item:find('%$world')) and world == 'both' then
  +
item = item:gsub('%$world ', '')
  +
woodItemWorld['Overworld ' .. item] = 'overworld'
  +
woodItemWorld['Nether ' .. item] = 'nether'
  +
end
  +
woodItemWorld[item] = world
  +
end
  +
end
   
for _, item in ipairs( woodItems ) do
+
for item, world in pairs(woodItemWorld) do
 
local itemName = ''
 
local itemName = ''
 
local woodAliases = {}
 
local woodAliases = {}
  +
 
  +
-- real "linkable" name
for _, wood in ipairs( woods ) do
 
  +
local realItem = item:gsub('^Overworld ', '')
if item:find('wood') then
 
itemName = string.gsub( item, 'wood', wood )
+
realItem = realItem:gsub('^Nether ', '')
  +
elseif item:find('%$1') then
 
  +
for _, wood in ipairs(woodTypes[world]) do
itemName = string.gsub( item, '%$1', wood )
 
  +
-- Parse ${,} (world-select) syntax
  +
local selector = (woodTypeWorld[wood] == 'overworld') and "%1" or "%2"
  +
itemName = realItem:gsub("%${(.-),(.-)}", selector)
  +
  +
if itemName:find('%$wood') then
  +
itemName = itemName:gsub('%$wood', wood)
  +
elseif itemName:find('%$1') then
  +
itemName = itemName:gsub( '%$1', wood)
 
else
 
else
itemName = item .. ' ' .. wood
+
itemName = itemName .. ' ' .. wood
 
end
 
end
table.insert( woodAliases, itemName )
+
table.insert(woodAliases, itemName)
 
end
 
end
  +
 
  +
-- Parse ${,} (world-select) syntax
item = string.gsub( item, '%$1 ', '' )
 
  +
item = item:gsub("%${(.-),(.-)}", "%1 or %2")
aliases['Ogni ' .. item] = woodAliases
 
  +
item = item:gsub('%$wood ', 'wood ')
  +
item = item:gsub('%$1 ', '')
  +
aliases['Ogni ' .. item] = woodAliases
 
aliases[item .. ' corrispondente'] = woodAliases
 
aliases[item .. ' corrispondente'] = woodAliases
 
end
 
end
 
   
 
-- Bedrock Edition Items --
 
-- Bedrock Edition Items --
 
local editionItems = {
 
local editionItems = {
 
BE = {
 
BE = {
  +
'Acacia Fence Gate',
  +
'Birch Fence Gate',
 
'Bow',
 
'Bow',
 
'Bucket of Pufferfish',
 
'Bucket of Pufferfish',
 
'Bucket of Tropical Fish',
 
'Bucket of Tropical Fish',
'Spawn Cat',
 
 
'Chest',
 
'Chest',
'Cobblestone Wall',
+
'Creeper Head',
  +
'Crimson Fence Gate',
  +
'Dark Oak Fence Gate',
  +
'Dragon Head',
  +
'End Gateway',
  +
'End Portal',
 
'Ender Chest',
 
'Ender Chest',
  +
'Flowing Lava',
 
'Glass Pane',
 
'Glass Pane',
  +
'Head',
  +
'Honey Block',
 
'Horn Coral Block',
 
'Horn Coral Block',
 
'Iron Bars',
 
'Iron Bars',
  +
'Jigsaw Block',
  +
'Jungle Fence Gate',
 
'Lava',
 
'Lava',
'Flowing Lava',
+
'Map',
 
'Minecart with Command Block',
 
'Minecart with Command Block',
'Mossy Cobblestone Wall',
 
 
'Oak Fence Gate',
 
'Oak Fence Gate',
 
'Observer',
 
'Observer',
'Spawn Panda',
+
'Ocean Explorer Map',
 
'Peony',
 
'Peony',
 
'Rose Bush',
 
'Rose Bush',
 
'Scaffolding',
 
'Scaffolding',
  +
'Skeleton Skull',
  +
'Spawn Cat',
  +
'Spawn Panda',
  +
'Spawn Wandering Trader',
  +
'Spruce Fence Gate',
 
'Stonecutter',
 
'Stonecutter',
  +
'Structure Void',
  +
'Warped Fence Gate',
  +
'Wither Skeleton Skull',
  +
'Woodland Explorer Map',
  +
'Zombie Head',
 
},
 
},
 
LCE = {
 
LCE = {
 
'Peony',
 
'Peony',
'Rose Bush'
+
'Rose Bush',
  +
'Shrub'
 
}
 
}
 
}
 
}
Riga 635: Riga 907:
 
aliases[name] = { title = item, name = name }
 
aliases[name] = { title = item, name = name }
 
end
 
end
  +
end
  +
  +
-- Bedrock Light blocks
  +
for level = 0, 15 do
  +
aliases["Light Block " .. level] = {title = "Light Block", name = "Light Block " .. level}
 
end
 
end
   

Versione delle 14:20, 18 nov 2020

La documentazione per questo modulo può essere creata in Modulo:Inventory slot/Aliases/doc

local coloredDyes = {
	'Colorante arancione', 'Colorante magenta', 'Colorante azzurro', 'Colorante giallo', 'Colorante lime',
	'Colorante rosa', 'Colorante grigio', 'Colorante grigio chiaro', 'Colorante ciano', 'Colorante viola',
	'Colorante blu', 'Colorante marrone', 'Colorante verde',
	'Colorante rosso', 'Colorante nero',
}
local aliases = {
	-- Common fuel types for furnace --
	['Ogni carburante'] = { 'Carbone', 'Carbonella', { title = 'Tronco', name = 'Tronco di quercia' }, { title = 'Assi di legno', name = 'Assi di quercia' }, 'Blocco di carbone' },
	['Ogni armatura di cuoio'] = { 'Casco di cuoio', 'Giubba di cuoio', 'Pantaloni di cuoio', 'Stivali di cuoio' },
	['Ogni armatura d\'oro'] = { "Elmo d'oro", "Corazza d'oro", "Gambiere d'oro", "Stivali d'oro" },
	['Ogni armatura di maglia'] = { 'Elmo di maglia', 'Cotta di maglia', 'Gambiere di maglia', 'Stivali di maglia' },
	['Ogni armatura di ferro'] = { 'Elmo di ferro', 'Corazza di ferro', 'Gambiere di ferro', 'Stivali di ferro' },
	['Ogni armatura di diamante'] = { 'Elmo di diamante', 'Corazza di diamante', 'Gambiere di diamante', 'Stivali di diamante' },
	['Ogni armatura di netherite'] = { 'Elmo di netherite', 'Corazza di netherite', 'Gambiere di netherite', 'Stivali di netherite' },
	
    -- stones --
	['Pietrisco o pietranera'] = { 'Pietrisco', 'Pietranera' },
	
	-- Display names --
	['Elitre spezzate'] = { title = '&eElitre', name = 'Elitre spezzate' },
	['Clay (block)'] = { title = 'Clay', name = 'Clay (block)' }, --remove on Nether Update's release if bedrock also changes the item name
	['Clay (ball)'] = { title = 'Clay', name = 'Clay (ball)' }, --remove on Nether Update's release if bedrock also changes the item name
	['Figura per stendardo (Fiore)'] = { title = 'Figura per stendardo', name = 'Figura per stendardo', text = '&7Fiore'},
	['Figura per stendardo (Volto di creeper)'] = { title = '&eFigura per stendardo', name = 'Figura per stendardo', text = '&7Volto di creeper'},
	['Figura per stendardo (Bordura dentata)'] = { title = 'Figura per stendardo', name = 'Figura per stendardo', text = '&7Bordura dentata'},
	['Figura per stendardo (Seminato di mattoni)'] = { title = 'Figura per stendardo', name = 'Figura per stendardo', text = '&7Seminato di mattoni'},
	['Figura per stendardo (Teschio)'] = { title = '&eFigura per stendardo', name = 'Figura per stendardo', text = '&7Teschio'},
	['Figura per stendardo (Logo)'] = { title = '&dFigura per stendardo', name = 'Figura per stendardo', text = '&7Logo'},
	['Figura per stendardo (Mojang)'] = { title = '&dFigura per stendardo', name = 'Figura per stendardo', text = '&7Logo'},
	['Figura per stendardo (Globo)'] = { title = 'Figura per stendardo', name = 'Figura per stendardo', text = '&7Globo'},
	['Figura per stendardo (Grugno)'] = { title = 'Figura per stendardo', name = 'Figura per stendardo', text = '&7Grugno'},
	['Figura per stendardo (Piglin)'] = { title = 'Figura per stendardo', name = 'Figura per stendardo', text = '&7Grugno'},
	['Pulsante'] = { title = 'Pulsante', name = 'Pulsante di pietra'},
	['Pulsante di legno'] = { title = 'Pulsante', name = 'Pulsante di quercia'},
	['Balestra caricata con freccia'] = { title = 'Balestra', name = 'Balestra caricata con freccia' },
	['Damaged Arrow Loaded Crossbow'] = { title = 'Crossbow', name = 'Damaged Arrow Loaded Crossbow' },
	['Balestra caricata con razzo pirotecnico'] = { title = 'Balestra', name = 'Balestra caricata con razzo pirotecnico' },
	['Damaged Firework Loaded Crossbow'] = { title = 'Crossbow', name = 'Damaged Firework Loaded Crossbow' },
	['Stendardo abitore'] = { title = '&6&oStendardo abitore', name = 'Stendardo abitore', text = 
		'&7Cyan Lozenge/&7Light Gray Base/&7Gray Pale/&7Light Gray Bordure/&7Black Fess/&7Light Gray Per Fess'},
	['Blocco puzzle'] = { title = '&dBlocco puzzle', name = 'Blocco puzzle' },
	['Half Full Bundle'] = { title = 'Bundle', name = 'Half Full Bundle' },
	['Full Bundle'] = { title = 'Bundle', name = 'Full Bundle' },

	-- Weapons --
	['Tridente'] = { name = 'Tridente', text = '/&7 Nella mano principale:/ &21.1 Velocità di attacco/ &29 Danni per colpo'},
	['Trident BE'] = { name = 'Trident', text = '/&9 +8 Attack Damage'},

	-- Bedrock and Education Edition display names --
	['Elytra Wings'] = { title = 'Elytra Wings', name = 'Elytra' },
	['Cooked Beef'] = { title = 'Cooked Beef', name = 'Steak' },
	['Map (no markers)'] = { title = 'Map', name = 'Map', text = 'Display Markers: &cNo' },
	['Locator Map'] = { title = 'Map', name = 'Map', text = 'Display Markers: &aYes' },

	-- Chemistry --
	['Lead (element)'] = { title = 'Lead', name = 'Lead (element)' },
	['Water (compound)'] = { title = 'Water', name = 'Water (compound)' },
	['Chloride'] = { 'Calcium Chloride', 'Cerium Chloride', 'Mercuric Chloride', 'Potassium Chloride', 'Tungsten Chloride' },
	['Sparkler'] = { 'Orange Sparkler', 'Blue Sparkler', 'Red Sparkler', 'Purple Sparkler', 'Green Sparkler' },
	['Matching Chloride'] = { 'Cerium Chloride', 'Mercuric Chloride', 'Potassium Chloride', 'Tungsten Chloride' },
	['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' },
}

-- Tooltip colors --
local yellowTooltips = {
	'Testa di creeper',
	'Elitre danneggiate',
	'Testa di drago',
	'Soffio di drago',
	'Elitre',
	'Testa',
	'Cuore del mare',
	'Testa di giocatore',
	'Teschio di scheletro',
	"Totem dell'immortalità",
	'Teschio di scheletro wither',
	'Testa di zombi',
}
for _, name in ipairs( yellowTooltips ) do
	aliases[name] = { title = '&e', name = name }
end

local aquaTooltips = {
	'Faro',
	'Condotto',
	"Mela d'oro",
}
for _, name in ipairs( aquaTooltips ) do
	aliases[name] = { title = '&b', name = name }
end

local lightPurpleTooltips = {
	'Uovo di drago',
	'Blocco struttura',
}
for _, name in ipairs( lightPurpleTooltips ) do
	aliases[name] = { title = '&d', name = name }
end

local orangeItalicTooltips = {
	'Ominous Banner',
}
for _, name in ipairs( orangeItalicTooltips ) do
	aliases[name] = { title = '&6&o', name = name }
end

-- Animated icons --
local animatedIcons = {
	'Colonna di bolle',
    'Compass',
    'Clock',
    'Crimson Hyphae',
    'Crimson Stem',
	'Debug Stick',
	'Fuoco',
	'Heat Block',
	'Lava',
	'Lodestone Compass',
	'Blocco di magma',
	'Nether Portal',
	'Prismarino',
	'Lastra di prismarino',
	'Scalini di prismarino',
	'Muretto di prismarino',
	'Lanterna marina',
	'Stonecutter',
    'Fuoco delle anime',
	'Warped Hyphae',
	'Warped Stem',
	'Acqua',
	'Written Book'
}
for _, icon in ipairs( animatedIcons ) do
	aliases[icon] = icon .. '.gif'
end

-- Some things are both animated and yellow --
local animatedIconsYellowTooltips = {
	'Enchanted Book',
	'Nether Star',
	'Bottle o\' Enchanting',
}
for _, name in ipairs( animatedIconsYellowTooltips ) do
	aliases[name] = { title = '&e', name = name .. '.gif' }
end

-- Some things are both animated and aqua --
local animatedIconsAquaTooltips = {
	'End Crystal',
}
for _, name in ipairs( animatedIconsAquaTooltips ) do
	aliases[name] = { title = '&b', name = name .. '.gif' }
end

-- Some things are both animated and purple --
local animatedIconsPurpleTooltips = {
	'Command Block',
	'Chain Command Block',
	'Repeating Command Block',
	'Enchanted Golden Apple',
}
for _, name in ipairs( animatedIconsPurpleTooltips ) do
	aliases[name] = { title = '&d', name = name .. '.gif' }
end

-- Bedrock Edition Items --
local animatedEditionItems = {
	BE = {
        'Lodestone Compass',
	},
	LCE = {
		
	}
}
for edition, items in pairs(animatedEditionItems) do
	for _, item in ipairs(items) do
		local name = item .. ' ' .. edition
		aliases[name] = { title = item, name = name .. '.gif' }
	end
end

-- Tools and weapons --
local tools = {
	{'di legno', 'Spada', 1.6, 4 },
	{'di pietra', 'Spada', 1.6, 5 },
	{'di ferro', 'Spada', 1.6, 6 },
	{"d'oro", 'Spada', 1.6, 4 },
	{'di diamante', 'Spada', 1.6, 7 },
	{'Netherite', 'Sword', 1.6, 8 },
	
	{'di legno', 'Piccone', 1.2, 2 },
	{'di pietra', 'Piccone', 1.2, 3 },
	{'di ferro', 'Piccone', 1.2, 4 },
	{"d'oro", 'Piccone', 1.2, 2 },
	{'di diamante', 'Piccone', 1.2, 5 },
	{'Netherite', 'Pickaxe', 1.2, 6 },
	
	{'di legno', 'Ascia', 0.8, 7 },
	{'di pietra', 'Ascia', 0.8, 9 },
	{'di ferro', 'Ascia', 0.9, 9 },
	{"d'oro", 'Ascia', 1, 7 },
	{'di diamante', 'Ascia', 1, 9 },
	{'Netherite', 'Axe', 1, 10 },
	
	{'di legno', 'Pala', 1, 2.5 },
	{'di pietra', 'Pala', 1, 3.5 },
	{'di ferro', 'Pala', 1, 4.5 },
	{"d'oro", 'Pala', 1, 2.5 },
	{'di diamante', 'Pala', 1, 5.5 },
	{'Netherite', 'Shovel', 1.6, 6.5 },
	
	{'di legno', 'Zappa', 1, 1 },
	{'di pietra', 'Zappa', 2, 1 },
	{'di ferro', 'Zappa', 3, 1 },
	{"d'oro", 'Zappa', 1, 1 },
	{'di diamante', 'Zappa', 4, 1 },
	{'Netherite', 'Hoe', 4, 1 }
}

local materialGroups = {}
local toolGroups = {}

for _, toolProps in ipairs( tools ) do
	local aliasName = toolProps[2] .. ' ' .. toolProps[1]
	aliases[aliasName] = { title = aliasName, name = aliasName, text = '/&7Nella mano principale:/ &2' .. toolProps[3] .. ' Velocità di attacco/ &2' .. toolProps[4] .. ' Danni per colpo' }
	
	local materialGroup = toolProps[1]:lower();
	local toolGroup = toolProps[2]:lower();
	
	if toolProps[2] ~= 'Spada' 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['Ogni strumento di ' .. materialGroup] = items
end

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

-- Tools and weapons in Bedrock Edition --
local toolsBE = {
	{'Wooden', 'Sword', 4 },
	{'Stone', 'Sword', 5 },
	{'Iron', 'Sword', 6 },
	{'Golden', 'Sword', 4 },
	{'Diamond', 'Sword', 7 },
	{'Netherite', 'Sword', 8 },
	
	{'Wooden', 'Pickaxe', 2 },
	{'Stone', 'Pickaxe', 3 },
	{'Iron', 'Pickaxe', 4 },
	{'Golden', 'Pickaxe', 2 },
	{'Diamond', 'Pickaxe', 5 },
	{'Netherite', 'Pickaxe', 6 },
	
	{'Wooden', 'Axe', 3 },
	{'Stone', 'Axe', 4 },
	{'Iron', 'Axe', 5 },
	{'Golden', 'Axe', 3 },
	{'Diamond', 'Axe', 6 },
	{'Netherite', 'Axe', 7 },
	
	{'Wooden', 'Shovel', 1 },
	{'Stone', 'Shovel', 2 },
	{'Iron', 'Shovel', 3 },
	{'Golden', 'Shovel', 1 },
	{'Diamond', 'Shovel', 4 },
	{'Netherite', 'Shovel', 5 },
	
	{'Wooden', 'Hoe', 2 },
	{'Stone', 'Hoe', 3 },
	{'Iron', 'Hoe', 4 },
	{'Golden', 'Hoe', 2 },
	{'Diamond', 'Hoe', 5 },
	{'Netherite', 'Hoe', 6 }
}

for _, toolProps in ipairs( toolsBE ) do
	local aliasName = toolProps[1] .. ' ' .. toolProps[2]
	aliases[aliasName .. ' BE'] = { title = aliasName, name = aliasName, text = '/&9+' .. toolProps[3] .. ' Attack Damage'}
end

-- Lists of item variants --
local itemVariants = {
	['Colorante'] = mw.clone( coloredDyes ),
	['Lana colorata'] = {
		'Lana arancione', 'Lana magenta', 'Lana azzurra', 'Lana gialla', 'Lana lime',
		'Lana rosa', 'Lana grigia', 'Lana grigio chiaro', 'Lana ciano', 'Lana viola',
		'Lana blu', 'Lana marrone', 'Lana verde', 'Lana rossa', 'Lana nera',
	},
	['Letto colorato'] = {
		'Letto arancione', 'Letto magenta', 'Letto azzurro', 'Letto giallo', 'Letto lime',
		'Letto rosa', 'Letto grigio', 'Letto grigio chiaro', 'Letto ciano', 'Letto viola',
		'Letto blu', 'Letto marrone', 'Letto verde', 'Letto rosso', 'Letto nero',
	},
	['Tappeto colorato'] = {
		'Tappeto arancione', 'Tappeto magenta', 'Tappeto azzurro', 'Tappeto giallo', 'Tappeto lime',
		'Tappeto rosa', 'Tappeto grigio', 'Tappeto grigio chiaro', 'Tappeto ciano', 'Tappeto viola',
		'Tappeto blu', 'Tappeto marrone', 'Tappeto verde', 'Tappeto rosso', 'Tappeto nero',
	},
	['Terracotta colorata'] = {
		'Terracotta bianca', 'Terracotta arancione', 'Terracotta magenta', 'Terracotta azzurra',
		'Terracotta gialla', 'Terracotta lime','Terracotta rosa', 'Terracotta grigia',
		'Terracotta grigio chiaro', 'Terracotta ciano', 'Terracotta viola', 'Terracotta blu',
		'Terracotta marrone', 'Terracotta verde', 'Terracotta rossa', 'Terracotta nera',
	},
	['Candela colorata'] = {'Candela bianca', 'Candela arancione', 'Candela magenta', 'Candela azzurra', 'Candela gialla', 'Candela lime',
	'Candela rosa', 'Candela grigia', 'Candela grigio chiaro', 'Candela ciano', 'Candela viola',
	'Candela blu', 'Candela marrone', 'Candela verde',	'Candela rossa', 'Candela nera'	},
	['Fiore'] = { 'Margherita', 'Fiordaliso', 'Mughetto', 'Rosa di Wither', 'Tulipano rosso', 'Tulipano arancione', 'Tulipano bianco', 'Tulipano rosa', 'Fiori di campo', 'Fiore di aglio', 'Orchidea blu', 'Papavero', 'Dente di leone' },
	['Fungo'] = { 'Fungo rosso', 'Fungo marrone' },
	['Blocco di quarzo'] = { 'Blocco di quarzo', 'Blocco di quarzo cesellato', 'Pilastro di quarzo' },
	['Arenaria rossa'] = { 'Arenaria rossa', 'Arenaria rossa incisa', 'Arenaria rossa cesellata', 'Arenaria rossa levigata' },
	['Arenaria'] = { 'Arenaria', 'Arenaria incisa', 'Arenaria cesellata', 'Arenaria liscia' },
	['Mattoni di pietra'] = { 'Mattoni di pietra', 'Mattoni di pietra muschiosi', 'Mattoni di pietra incrinati', 'Mattoni di pietra cesellati' },
	['Lastra di pietra'] = { 'Lastra di pietra', 'Lastra di pietra levigata', 'Lastra di pietrisco', 'Lastra di pietrisco muschioso', 'Lastra di mattoni di pietra', 'Lastra di mattoni di pietra muschiosi', 'Lastra di andesite', 'Lastra di andesite levigata',
		'Lastra di diorite', 'Lastra di diorite levigata', 'Lastra di granito', 'Lastra di granito levigato', 'Lastra di arenaria', 'Lastra di arenaria incisa', 'Lastra di arenaria levigata', 'Lastra di arenaria rossa', 'Lastra di arenaria rossa incisa', 
		'Lastra di arenaria rossa levigata', 'Lastra di mattoni', 'Lastra di prismarino', 'Lastra di mattoni di prismarino', 'Lastra di prismarino scuro', 'Lastra di mattoni del Nether', 'Lastra di mattoni del Nether rossi', 'Lastra di quarzo', 
		'Lastra di quarzo levigato', 'Lastra di purpur', "Lastra di mattoni di pietra dell'End", 'Lastra di quercia pietrificata', 'Blackstone Slab', 'Polished Blackstone Slab', 'Polished Blackstone Brick Slab' },
	['Scalini di pietra'] = { 'Scalini di pietra', 'Scalini di pietra levigata', 'Scalini di pietrisco', 'Scalini di pietrisco muschioso', 'Scalini di mattoni di pietra', 'Scalini di mattoni di pietra muschiosi', 'Scalini di andesite', 'Scalini di andesite levigata',
		'Scalini di diorite', 'Scalini di diorite levigata', 'Scalini di granito', 'Scalini di granito levigato', 'Scalini di arenaria', 'Scalini di arenaria incisa', 'Scalini di arenaria levigata', 'Scalini di arenaria rossa', 'Scalini di arenaria rossa incisa', 
		'Scalini di arenaria rossa levigata', 'Scalini di mattoni', 'Scalini di prismarino', 'Scalini di mattoni di prismarino', 'Scalini di prismarino scuro', 'Scalini di mattoni del Nether', 'Scalini di mattoni del Nether rossi', 'Scalini di quarzo', 
		'Scalini di quarzo levigato', 'Scalini di purpur', "Scalini di mattoni di pietra dell'End", 'Blackstone Stairs', 'Polished Blackstone Stairs', 'Polished Blackstone Brick Stairs' },
	['Blocco di purpur'] = { 'Blocco di purpur', 'Pilastro di purpur' },
	['Pietra'] = { 'Pietra', 'Andesite', 'Granito', 'Diorite', 'Andesite levigata', 'Granito levigato', 'Diorite levigata' },
	['Tulipano'] = { 'Tulipano rosso', 'Tulipano arancione', 'Tulipano bianco', 'Tulipano rosa' },
	['Prismarino'] = { { title = 'Prismarino', name = 'Prismarine.gif' }, 'Mattoni di prismarino', 'Prismarino scuro' },
	['Minerale grezzo'] = { 'Carbone grezzo', 'Ferro grezzo', 'Oro grezzo', 'Lapislazzuli grezzo', 'Redstone grezza', 'Smeraldo grezzo', 'Diamante grezzo', 'Quarzo del Nether grezzo', 'Oro grezzo del Nether' },
	['Blocco di corallo morto'] = { 'Blocco di corallo a tubo morto', 'Blocco di corallo a cervello morto', 'Blocco di corallo a bolle morto', 'Blocco di corallo di fuoco morto', 'Blocco di corallo a corna morto' },
	['Blocco di corallo'] = { 'Blocco di corallo a tubo', 'Blocco di corallo a cervello', 'Blocco di corallo a bolle', 'Blocco di corallo di fuoco', 'Blocco di corallo a corna' },
	['Corallo morto'] = { 'Corallo a tubo morto', 'Corallo a cervello morto', 'Corallo a bolle morto', 'Corallo di fuoco morto', 'Corallo a corna morto' },
	['Gorgonia morta'] = { 'Gorgonia a tubo morta', 'Gorgonia a cervello morta', 'Gorgonia a bolle morta', 'Gorgonia di fuoco morta', 'Gorgonia a corna morta' },
	['Corallo'] = { 'Corallo a tubo', 'Corallo a cervello', 'Corallo a bolle', 'Corallo di fuoco', 'Corallo a corna' },
	['Gorgonia'] = { 'Gorgonia a tubo', 'Gorgonia a cervello', 'Gorgonia a bolle', 'Gorgonia di fuoco', 'Gorgonia a corna' },
	['Muretto'] = { 'Muretto di pietrisco', 'Muretto di pietrisco muschioso', 'Muretto di mattoni di pietra', 'Muretto di mattoni di pietra muschiosi', 'Muretto di andesite', 'Muretto di diorite', 'Muretto di granito', 'Muretto di arenaria', 
		'Muretto di arenaria rossa', 'Muretto di mattoni', { title = 'Muretto di prismarino', name = 'Prismarine Wall.gif' }, 'Muretto di mattoni del Nether', 'Muretto di mattoni del Nether rossi', "Muretto di mattoni di pietra dell'End", 'Muretto di pietranera', 'Muretto di pietranera levigata', 
		'Muretto di mattoni di pietranera levigata' },
	['Torcia'] = { 'Torcia', 'Torcia delle anime' },
	['Lanterna'] = { 'Lanterna', 'Lanterna delle anime' },
	['Fungo del Nether'] = { 'Fungo cremisi', 'Fungo distorto' },
	['Funghi del Nether'] = { 'Funcgo cremisi', 'Fungo distorto' },
	['Radici'] = { 'Radici cremisi', 'Radici disctorte' },
	['Necelio'] = { 'Necelio cremisi', 'Necelio distorto' },
	['Sabbia delle anime'] = { 'Sabbia delle anime', 'Terra delle anime' },
	['Fuoco da campo'] = { 'Fuoco da campo', 'Fuoco da campo delle anime' },
	['Pietranera'] = { 'Pietranera', 'Pietranera levigata', 'Pietranera levigata cesellata', 'Mattoni di pietranera levigata', 'Mattoni di pietranera levigata incrinati' },
	['Pulsante di pietra'] = { 'Pulsante di pietra', 'Pulsante di pietra' },
	['Pedana a pressione di pietra'] = { 'Pedana a pressione di pietra', 'Pedana a press. di pietranera levigata' },
	['Nether Wood Pressure Plate'] = { 'Crimson Pressure Plate', 'Warped Pressure Plate' },
	['Nether Wood Fence'] = { 'Crimson Fence', 'Warped Fence' },
	['Nether Wood Trapdoor'] = { 'Crimson Trapdoor', 'Warped Trapdoor' },
	['Nether Wood Fence Gate'] = { 'Crimson Fence Gate', 'Warped Fence Gate' },
	['Nether Wood Stairs'] = { 'Crimson Stairs', 'Warped Stairs' },
	['Nether Wood Door'] = { 'Crimson Door', 'Warped Door' },
	['Nether Wood Sign'] = { 'Crimson Sign', 'Warped Sign' },
}
table.insert( itemVariants['Colorante'], 1, 'Colorante bianco' )
for aliasName, aliasItems in pairs( itemVariants ) do
	aliases['Ogni ' .. aliasName] = aliasItems
	aliases[aliasName .. ' corrispondente'] = aliasItems
end

-- Copper --
local copperstuff = {
	['Matching (Weathered) Copper Block'] = {'Copper Block', 'Lightly Weathered Copper Block', 'Semi-Weathered Copper Block', 'Weathered Copper BlocK'},
	['Matching (Weathered) Cut Copper'] = {'Cut Copper', 'Lightly Weathered Cut Copper', 'Semi-Weathered Cut Copper', 'Weathered Cut Copper'},
	['Matching Waxed (Weathered) Copper Block'] = {'Waxed Copper Block', 'Waxed Lightly Weathered Copper Block', 'Waxed Semi-Weathered Copper Block'},
	['Matching Waxed (Weathered) Cut Copper'] = {'Waxed Cut Copper', 'Waxed Lightly Weathered Cut Copper', 'Waxed Semi-Weathered Cut Copper'},
}
local function map(tbl, f)
    local t = {}
    for k,v in pairs(tbl) do
        t[k] = f(v)
    end
    return t
end
for k, v in pairs(copperstuff) do
	aliases[k] = v
	local k1 = k:gsub(' Block$', '')
	local v1 = map(v, function(s) return s:gsub(' Block$', '') end)
	aliases[k1 .. 'Slab'] = map(v1, function(s) return s .. 'Slab' end)
	aliases[k1 .. 'Stairs'] = map(v1, function(s) return s .. 'Stairs' end)
end

-- Discs --
local discs = { 
	{ '13',      'C418',                 },
	{ 'Cat',     'C418',       'cat'     },
	{ 'Blocks',  'C418',       'blocks'  },
	{ 'Chirp',   'C418',       'chirp'   },
	{ 'Far',     'C418',       'far'     },
	{ 'Mall',    'C418',       'mall'    },
	{ 'Mellohi', 'C418',       'mellohi' },
	{ 'Stal',    'C418',       'stal'    },
	{ 'Strad',   'C418',       'strad'   },
	{ 'Ward',    'C418',       'ward'    },
	{ '11',      'C418',                 },
	{ 'Wait',    'C418',       'wait'    },
	{ 'Pigstep', 'Lena Raine',           },
}
for _, disc in ipairs( discs ) do
	local name = 'Disco musicale ' .. disc[1]
	local artist = disc[2]
	local trackname = disc[1]
	if disc[3] ~= nil then
		trackname = disc[3]
	end
	aliases[name] = { title = '&bDisco musicale', name = name, text = '&7' .. artist .. ' - ' .. trackname }
end

-- Damaged armor, tools and weapons --
local damagedItems = {
	'Arco',
	'Bastone e carota',
	'Stivali di maglia',
	'Cotta di maglia',
	'Elmo di maglia',
	'Gambiere di maglia',
	'Balestra',
	'Ascia di diamante',
	'Stivali di diamante',
	'Corazza di diamante',
	'Elmo di diamante',
	'Zappa di diamante',
	'Gambiera di diamante',
	'Piccone di diamante',
	'Pala di diamante',
	'Spada di diamante',
	'Elitre',
	'Canna da pesca',
	'Acciarino',
	"Ascia d'oro",
	"Stivali d'oro",
	"Corazza d'oro",
	"Elmo d'oro",
	"Zappa d'oro",
	"Gambiera d'oro",
	"Piccone d'oro",
	"Pala d'oro",
	"Spada d'oro",
	'Ascia di ferro',
	'Stivali di ferro',
	'Corazza di ferro',
	'Elmo di ferro',
	'Zappa di ferro',
	'Gambiera di ferro',
	'Piccone di ferro',
	'Pala di ferro',
	'Spada di ferro',
	'Stivali di cuoio',
	'Giubba di cuoio',
	'Casco di cuoio',
	'Pantaloni di cuoio',
	'Netherite Axe',
	'Netherite Boots',
	'Netherite Chestplate',
	'Netherite Helmet',
	'Netherite Hoe',
	'Netherite Leggings',
	'Netherite Pickaxe',
	'Netherite Shovel',
	'Netherite Sword',
	'Cesoie',
	'Scudo',
	'Ascia di pietra',
	'Zappa di pietra',
	'Piccone di pietra',
	'Pala di pietra',
	'Spada di pietra',
	'Ascia di legno',
	'Zappa di legno',
	'Piccone di legno',
	'Pala di legno',
	'Spada di legno'
}
for _, item in ipairs( damagedItems ) do
	local name = item .. ' danneggiato'
	aliases[name] = { title = item, name = name }
end

-- Banners and colored items --
local patterns = {
	'al cantone destro della punta di',
	'alla fascia in punta di',
	'sfumato in punta di',
	'alla punta cuneato di',
	'al cantone sinistro della punta di',
	'alla banda di',
	'alla sbarra di',
	'alla bordura di',
	'alla bordura dentata di',
	'alla punta di',
	'al cantone destro del capo di',
	'alla fascia in capo di',
	'al capo cuneato di',
	'al cantone sinistro del capo di',
	'al volto di creeper di',
	'alla croce di',
	'alla fascia di',
	'seminato di mattoni di',
	'al fiore di',
	'al globo di',
	'sfumato in capo di',
	'alla punta rovesciata di',
	'alla losanga di',
	'al logo di',
	'al palo di',
	'al palo destro di',
	'al palo sinistro di',
	'palato di',
	'trinciato a sinistra di',
	'trinciato a destra di',
	'tagliato a sinistra di',
	'tagliato a sinistra di',
	'troncato di sopra di',
	'troncato di sotto di',
	'partito a destra di',
	'partito a sinistra di',
	'al piglin di',
	'al grugno di',
	'alla torta di',
	'al decusse di',
	'al teschio di'
}
local colors = {
	'bianco',
	'arancione',
	'magenta',
	'azzurro',
	'giallo',
	'lime',
	'rosa',
	'grigio',
	'grigio chiaro',
	'ciano',
	'viola',
	'blu',
	'marrone',
	'verde',
	'rosso',
	'nero'
}

-- Firework Stars --
local fireworkStar = {}
for _, color in ipairs( colors ) do
	local name = 'Stella pirotecnica ' .. color
	aliases[name] = { title = 'Stella pirotecnica', name = name, text = '&7' .. color }
	table.insert( fireworkStar, aliases[name] )
	for _, pattern in ipairs( patterns ) do
		name = 'Stendardo ' .. pattern .. ' ' .. color
		aliases[name] = { title = 'Stendardo', name = name, text = '&7' .. pattern .. ' ' .. color }
	end
end
aliases['Ogni stella pirotecnica'] = fireworkStar
aliases['Stella pirotecnica corrispondente'] = fireworkStar

-- Items that use the sixteen colors --
local coloredItems = {
	'Palloncino',
	'Stendardo',
	'Letto',
	'Candle',
	'Tappeto',
	'Calcestruzzo',
	'Polvere di calcestruzzo',
	'Glazed Terracotta',
	'Hardened $1 Stained Glass',
	'Hardened $1 Stained Glass Pane',
	'Scudo',
	'Scatola di shulker',
	'Vetro',
	'Pannello di vetro',
	'Lana'
}
for _, item in ipairs( coloredItems ) do
	local coloredItemAliases = {}
	local itemName = ''
	
	for _, color in ipairs( colors ) do
		if item:find( '%$1' ) then
			itemName = item:gsub( '%$1', color )
		else
			itemName = item .. ' ' .. color
		end
		table.insert( coloredItemAliases, itemName )
	end
	
	item = item:gsub( '%$1 ', '')
	aliases['Ogni ' .. item] = coloredItemAliases
	aliases[item .. ' corrispondente'] = coloredItemAliases
end
-- list of all potions with no effects
local noEffects = {
	"Ampolla d'acqua",
	'Pozione strana',
	'Pozione densa',
	'Pozione ordinaria',
	'Pozione non fabbricabile',
	"Ampolla d'acqua da lancio",
	'Pozione strana da lancio',
	'Pozione densa da lancio',
	'Pozione ordinaria da lancio',
	'Pozione da lancio non fabbricabile',
	"Ampolla d'acqua persistente",
	'Pozione strana persistente',
	'Pozione densa persistente',
	'Pozione ordinaria persistente',
	'Pozione persistente non fabbricabile',
	'Freccia imbevuta',
	"Freccia d'acqua",
	'Freccia imbevuta non fabbricabile',
}
for _, name in ipairs(noEffects) do
	aliases[name] = { name = name, text = '&7Nessun effetto' }
end

-- start these lists with the no effect items as names are not normal
local potionItems = {
	['Pozione'] = {
		aliases["Ampolla d'acqua"],
		aliases['Pozione strana'],
		aliases['Pozione densa'],
		aliases['Pozione ordinaria'],
	},
	['Pozione da lancio'] = {
		aliases["Ampolla d'acqua da lancio"],
		aliases['Pozione strana da lancio'],
		aliases['Pozione densa da lancio'],
		aliases['Pozione ordinaria da lancio'],
	},
	['Pozione persistente'] = {
		aliases["Ampolla d'acqua persistente"],
		aliases['Pozione strana persistente'],
		aliases['Pozione densa persistente'],
		aliases['Pozione ordinaria persistente'],
	},
	['Freccia imbevuta'] = {
		aliases["Freccia d'acqua"],
		aliases['Freccia imbevuta'],
		aliases['Freccia imbevuta'],
		aliases['Freccia imbevuta'],
	},
}

-- Potions --
local effects = {
	-- durations are in the order normal, extended, enhanced
	{name = 'di rigenerazione', effect = '&9Rigenerazione', enhanced = 'II',
		durations = { normal = { '0:45', '1:30', '0:22' }, lingering = { '0:11', '0:22', '0:05' }, arrow = { '0:05', '0:11', '0:02' }}},
	{ name = 'di velocità', effect = '&9Velocità', enhanced = 'II', 
		durations = { normal = { '3:00', '8:00', '1:30' }, lingering = { '0:45', '2:00', '0:22' }, arrow = { '0:22', '1:00', '0:11' }}},
	{ name = 'di resistenza al fuoco', effect = '&9Resist. al fuoco', durations = { normal = { '3:00', '8:00' }, lingering = { '0:45', '2:00' }, arrow = { '0:22', '1:00' }}},
	{ name = 'di avvelenamento', effect = '&cAvvelenamento', enhanced = 'II', 
		durations = { normal = { '0:45', '1:30', '0:21' }, lingering = { '0:11', '0:22', '0:05' }, arrow = { '0:05', '0:11', '0:02' }}},
	{ name = 'di cura', effect = '&9Salute istantanea', enhanced = 'II' },
	{ name = 'di visione notturna',    effect = '&9Visione notturna',    durations = { normal = { '3:00', '8:00' }, lingering = { '0:45', '2:00' }, arrow = { '0:22', '1:00' }}},
	{ name = 'di debolezza',        effect = '&cDebolezza',        durations = { normal = { '1:30', '4:00' }, lingering = { '0:22', '1:00' }, arrow = { '0:11', '0:30' }}},
	{ name = 'di forza', effect = '&9Forza', enhanced = 'II', 
		durations = { normal = { '3:00', '8:00', '1:30'}, lingering = {'0:45', '2:00', '0:22'}, arrow = { '0:22', '1:00', '0:11' }}},
	{ name = 'di lentezza', effect = '&cLentezza', enhanced = 'IV', 
		durations = { normal = { '1:30', '4:00', '0:20'}, lingering = {'0:22', '1:00', '0:05'}, arrow = { '0:11', '0:30', '0:02' }}},
	{ name = 'di salto', effect = '&9Salto ampliato', enhanced = 'II', 
		durations = { normal = { '3:00', '8:00', '1:30' }, lingering = {'0:45', '2:00', '0:22'}, arrow = { '0:22', '1:00', '0:11' }}},
	{ name = 'di danno', effect = '&cDanno istantaneo', enhanced = 'II' },
	{ name = 'di respirazione acquatica', effect = '&9Respir. acquatica', durations = { normal = { '3:00', '8:00' }, lingering = { '0:45', '2:00' }, arrow = { '0:22', '1:00' }}},
	{ name = "d'invisibilità",    effect = '&9Invisibilità',    durations = { normal = { '3:00', '8:00' }, lingering = { '0:45', '2:00' }, arrow = { '0:22', '1:00' }}},
	{ name = 'di caduta lenta',    effect = '&9Caduta lenta',    durations = { normal = { '1:30', '4:00' }, lingering = { '0:22', '1:00' }, arrow = { '0:11', '0:30' }}},
	{ name = 'di fortuna',  effect = '&9Fortuna',   durations = { normal = { '5:00' }, lingering = { '1:15' }, arrow = { '0:37' }}},
	{ name = "d'avvizzimento", effect = '&cWither', durations = { normal = { '0:40' }, lingering = { '0:10' }, arrow = { '0:05' }}},
	{ name = 'del maestro tartaruga', text = '&cLentezza IV ($1)/&9Resistenza III ($1)', enhanced = '&cLentezza VI ($1)/&9Resistenza IV ($1)',
		durations = { normal = { '0:20', '0:40', '0:20' }, lingering = { '0:15', '0:45', '0:15' }, arrow = {  '0:07', '0:22', '0:07' }}}
}
local types = {
	{name = 'Pozione',               durations = 'normal',      text = 'Pozione '},
	{name = 'Pozione da lancio',     durations = 'normal',      text = 'Pozione da lancio '},
	{name = 'Pozione persistente',   durations = 'lingering', text = 'Pozione persistente '},
	{name = 'Freccia imbevuta',      durations = 'arrow',     text = 'Freccia '},
}

for _, effect in ipairs(effects) do
	for _, type in ipairs(types) do
		-- form name, it will be reused
		local name =  type.text .. effect.name
		local potionName = {}
		if type.name == 'Tipped Arrow' then
		potionName = type.text .. effect.name
		else
		potionName = type.text .. effect.name .. '.gif'
		end
		
		-- if we have durations, add times
		if effect.durations then
			local durations = effect.durations[type.durations]
			
			-- turtle master is weird, so just do a fancy string replacement
			if effect.text then
				aliases[name] = { name = potionName, text = effect.text:gsub( '%$1', durations[1] ) }
				aliases[name .. ' esteso'] = { name = potionName, text = effect.text:gsub( '%$1', durations[2] ) }
				aliases[name .. ' migliorata'] = { name = potionName, text = effect.enhanced:gsub( '%$1', durations[3] ) }
			else
				-- we always have normal
				aliases[name] = { name = potionName, text = string.format( '%s (%s)', effect.effect, durations[1] ) }
			
				-- ensure we have extended
				if durations[2] then
					aliases[name .. ' esteso'] = { name = potionName, text = string.format( '%s (%s)', effect.effect, durations[2] ) }
					
					-- and enhanced, currently there is nothing with a duration that can be extended but not enhanced
					if effect.enhanced then
						aliases[name .. ' migliorata'] = { name = potionName, text = string.format( '%s %s (%s)', effect.effect, effect.enhanced, durations[3] ) }
					end
				end
			end
		else
			-- otherwise its just effect, currently every potion with no duration can be enhanced
			aliases[name] = { name = potionName, text = effect.effect}
			aliases[name .. ' migliorata'] = { name = potionName, text = effect.effect .. ' ' .. effect.enhanced }
		end
		
		-- add the base potion to the any list
		table.insert(potionItems[type.name], aliases[name])
	end
end

-- build the any lists
for item, potionAliases in pairs( potionItems ) do
	aliases['Ogni ' .. item] = potionAliases
	aliases[item .. ' corrispondente'] = potionAliases
end

-- Wood --
local woodTypes = {
    overworld = {
        'di quercia',
	    'di abete',
	    'di betulla',
	    'della giungla',
	    'di acacia',
        'di quercia scura',
    },
    nether = {
        'Crimson',
        'Warped'
    },
    both = {},
}
local woodTypeWorld = {}
for _, world in ipairs({'overworld', 'nether'}) do
	local woods = woodTypes[world]
	for _, type in ipairs(woods) do
		woodTypeWorld[type] = world
        table.insert(woodTypes.both, type)
    end
end
local woodItems = {
    overworld = {
        'Legno',
        'Tronco',
        'Barca',
        'Tronco $1 scortecciato',
        'Legno $1 scortecciato',
        'Assi',
        'Lastra',
        'Scalini',
        'Pedana a pressione',
        'Pulsante',
        'Porta',
        'Botola',
        'Cancelletto',
        'Staccionata',
        'Cartello',
        'Arboscello',
    },
    nether = {
        'Stem',
        'Hyphae',
        'Stripped $1 Stem',
        'Stripped $1 Hyphae',
    },
    both = {
        '$world Planks',
        '${Wood,Hyphae}',
        '${Log,Stem}',
        'Stripped $1 ${Wood,Hyphae}',
        'Stripped $1 ${Log,Stem}',
        'Fence Gate',
        -- '$world Wood Fence',
        '$wood Fence',
        '$wood Door',
        '$wood Button',
        '$wood Pressure Plate',
        '$wood Trapdoor',
        '$world $wood Slab',
        '$wood Stairs',
        'Sign'
    }
}
local woodItemWorld = {}
for world, items in pairs(woodItems) do
    for _, item in ipairs(items) do
		-- expand $world (should only happen in "both")
        if (item:find('%$world')) and world == 'both' then
            item = item:gsub('%$world ', '')
            woodItemWorld['Overworld ' .. item] = 'overworld'
			woodItemWorld['Nether ' .. item] = 'nether'
		end
		woodItemWorld[item] = world
    end
end

for item, world in pairs(woodItemWorld) do
	local itemName = ''
	local woodAliases = {}

	-- real "linkable" name
    local realItem = item:gsub('^Overworld ', '')
    realItem = realItem:gsub('^Nether ', '')

	for _, wood in ipairs(woodTypes[world]) do
		-- Parse ${,} (world-select) syntax
		local selector = (woodTypeWorld[wood] == 'overworld') and "%1" or "%2"
		itemName = realItem:gsub("%${(.-),(.-)}", selector)

		if itemName:find('%$wood') then
			itemName = itemName:gsub('%$wood', wood)
		elseif itemName:find('%$1') then
			itemName = itemName:gsub( '%$1', wood)
		else
			itemName = itemName .. ' ' .. wood
		end
		table.insert(woodAliases, itemName)
	end

	-- Parse ${,} (world-select) syntax
	item = item:gsub("%${(.-),(.-)}", "%1 or %2")
    item = item:gsub('%$wood ', 'wood ')
    item = item:gsub('%$1 ', '')
    aliases['Ogni ' .. item] = woodAliases
	aliases[item .. ' corrispondente'] = woodAliases
end

-- Bedrock Edition Items --
local editionItems = {
	BE = {
		'Acacia Fence Gate',
		'Birch Fence Gate',
		'Bow',
		'Bucket of Pufferfish',
		'Bucket of Tropical Fish',
		'Chest',
		'Creeper Head',
		'Crimson Fence Gate',
		'Dark Oak Fence Gate',
		'Dragon Head',
		'End Gateway',
		'End Portal',
		'Ender Chest',
		'Flowing Lava',
		'Glass Pane',
		'Head',
		'Honey Block',
		'Horn Coral Block',
		'Iron Bars',
		'Jigsaw Block',
		'Jungle Fence Gate',
		'Lava',
		'Map',
		'Minecart with Command Block',
		'Oak Fence Gate',
		'Observer',
		'Ocean Explorer Map',
		'Peony',
		'Rose Bush',
		'Scaffolding',
		'Skeleton Skull',
		'Spawn Cat',
		'Spawn Panda',
		'Spawn Wandering Trader',
		'Spruce Fence Gate',
		'Stonecutter',
		'Structure Void',
		'Warped Fence Gate',
		'Wither Skeleton Skull',
		'Woodland Explorer Map',
		'Zombie Head',
	},
	LCE = {
		'Peony',
		'Rose Bush',
		'Shrub'
	}
}
for edition, items in pairs(editionItems) do
	for _, item in ipairs(items) do
		local name = item .. ' ' .. edition
		aliases[name] = { title = item, name = name }
	end
end

-- Bedrock Light blocks
for level = 0, 15 do
aliases["Light Block " .. level] = {title = "Light Block", name = "Light Block " .. level}
end

return aliases