Minecraft Wiki
Advertisement

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 del mondo principale', 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 --
	['Ogni Pietrisco o Pietranera'] = { 'Pietrisco', 'Pietranera' },

	-- Display names --
	['Elitre spezzate'] = { title = '&eElitre', name = 'Elitre spezzate' },
	['Argilla'] = { title = 'Argilla', name = 'Argilla' }, --remove on Nether Update's release if bedrock also changes the item name
	['Zolla di argilla'] = { title = 'Zolla di argilla', name = 'Zolla di argilla' }, --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' },
	['Balestra danneggiata caricata con freccia'] = { title = 'Balestra', name = 'Balestra danneggiata caricata con freccia' },
	['Balestra caricata con razzo pirotecnico'] = { title = 'Balestra', name = 'Balestra caricata con razzo pirotecnico' },
	['Balestra danneggiata caricata con razzo pirotecnico'] = { title = 'Balestra', name = 'Balestra danneggiata caricata con razzo pirotecnico' },
	['Stendardo abitore'] = { title = '&6&oStendardo abitore', name = 'Stendardo abitore', text = 
		'&7Losanga ciano/&7Fascia in punta grigio chiaro/&7Palo grigio/&7Bordura grigio chiaro/&7Fascia nera/&7Troncato grigio chiaro'},
	['Blocco puzzle'] = { title = '&dBlocco puzzle', name = 'Blocco puzzle' },
	['Sacchetto mezzo pieno'] = { title = 'Sacchetto', name = 'Sacchetto mezzo pieno' },
	['Sacchetto pieno'] = { title = 'Sacchetto', name = 'Sacchetto pieno' },

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

	-- Bedrock and Education Edition display names --
	['Elitre'] = { title = 'Elitre', name = 'Elitre' },
	['Manzo cotto'] = { title = 'Manzo cotto', name = 'Manzo cotto' },
	['Mappa (nessun segnalino)'] = { title = 'Mappa', name = 'Mappa', text = 'Segnalini: &cNo' },
	['Mappa localizzatrice'] = { title = 'Mappa', name = 'Mappa', text = 'Segnalini: &aSì' },

	-- Chemistry --
	['Piombo (elemento)'] = { title = 'Piombo', name = 'Piombo (elemento)' },
	['Acqua (composto)'] = { title = 'Acqua', name = 'Acqua (composto)' },
	['Cloruro'] = { 'Cloruro di calcio', 'Cloruro ceroso', 'Cloruro mercurico', 'Cloruro di potassio', 'Cloruro di tungsteno' },
	['Stella filante'] = { 'Stella filante arancione', 'Stella filante blu', 'Stella filante rossa', 'Stella filante viola', 'Stella filante verde' },
	['Cloruro corrispondente'] = { 'Cloruro ceroso', 'Cloruro mercurico', 'Cloruro di potassio', 'Cloruro di tungsteno' },
	['Torcia colorata corrispondente'] = { 'Torcia blu', 'Torcia rossa', 'Torcia viola', 'Torcia verde' },
	['Fluorescente corrispondente'] = { 'Fluorescente bianco', 'Fluorescente arancione', 'Fluorescente magenta', 'Fluorescente azzurro',
		'Fluorescente giallo', 'Fluorescente lime', 'Fluorescente rosa', 'Fluorescente grigio', 'Fluorescente ciano',
		'Fluorescente viola', 'Fluorescente blu', 'Fluorescente marrone', 'Fluorescente verde', 'Fluorescente rosso' },
}

-- 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 = {
	'Stendardo del malaugurio',
}
for _, name in ipairs( orangeItalicTooltips ) do
	aliases[name] = { title = '&6&o', name = name }
end

-- Animated icons --
local animatedIcons = {
	'Colonna di bolle',
    'Bussola',
    'Orologio',
    'Ife cremisi',
    'Gambo cremisi',
	'Bastone di debug',
	'Fuoco',
	'Blocco termico',
	'Lava',
	'Bussola magnetizzata',
	'Blocco di magma',
	'Portale del Nether',
	'Prismarino',
	'Lastra di prismarino',
	'Scalini di prismarino',
	'Muretto di prismarino',
	'Lanterna marina',
	'Tagliapietre',
	'Fuoco delle anime',
	'Sensore di sculk',
	'Ife distorte',
	'Gambo distorto',
	'Acqua',
	'Libro scritto'
}
for _, icon in ipairs( animatedIcons ) do
	aliases[icon] = icon .. '.gif'
end

-- Some things are both animated and yellow --
local animatedIconsYellowTooltips = {
	'Libro incantato',
	'Stella del Nether',
	'Ampolla di esperienza',
}
for _, name in ipairs( animatedIconsYellowTooltips ) do
	aliases[name] = { title = '&e', name = name .. '.gif' }
end

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

-- Some things are both animated and purple --
local animatedIconsPurpleTooltips = {
	'Blocco comandi',
	'Blocco comandi a catena',
	'Blocco comandi a ripetizione',
	"Mela d'oro incantata",
}
for _, name in ipairs( animatedIconsPurpleTooltips ) do
	aliases[name] = { title = '&d', name = name .. '.gif' }
end

-- Bedrock Edition Items --
local animatedEditionItems = {
	BE = {
        'Bussola magnetica',
	},
	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 },
	{'di netherite', 'Spada', 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 },
	{'di netherite', 'Piccone', 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 },
	{'di netherite', 'Ascia', 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 },
	{'di netherite', 'Pala', 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 },
	{'di netherite', 'Zappa', 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 attrezzo ' .. materialGroup] = items
end

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

-- Tools and weapons in Bedrock Edition --
local toolsBE = {
	{'di legno', 'Spada', 4 },
	{'di pietra', 'Spada', 5 },
	{'di ferro', 'Spada', 6 },
	{"d'oro", 'Spada', 4 },
	{'di diamante', 'Spada', 7 },
	{'di Netherite', 'Spada', 8 },
	
	{'di legno', 'Piccone', 2 },
	{'di pietra', 'Piccone', 3 },
	{'di ferro', 'Piccone', 4 },
	{"d'oro", 'Piccone', 2 },
	{'di diamante', 'Piccone', 5 },
	{'di Netherite', 'Piccone', 6 },
	
	{'di legno', 'Ascia', 3 },
	{'di pietra', 'Ascia', 4 },
	{'di ferro', 'Ascia', 5 },
	{"d'oro", 'Ascia', 3 },
	{'di diamante', 'Ascia', 6 },
	{'di Netherite', 'Ascia', 7 },
	
	{'di legno', 'Pala', 1 },
	{'di pietra', 'Pala', 2 },
	{'di ferro', 'Pala', 3 },
	{"d'oro", 'Pala', 1 },
	{'di diamante', 'Pala', 4 },
	{'di Netherite', 'Pala', 5 },
	
	{'di legno', 'Zappa', 2 },
	{'di pietra', 'Zappa', 3 },
	{'di ferro', 'Zappa', 4 },
	{"d'oro", 'Zappa', 2 },
	{'di diamante', 'Zappa', 5 },
	{'di Netherite', 'Zappa', 6 }
}

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

-- Lists of item variants --
local itemVariants = {
	['Colorante'] = mw.clone( coloredDyes ),
	['Colorante colorato'] = 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', { title = 'Lastra di prismarino', name = 'Lastra di prismarino.gif' }, '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', { title = 'Scalini di prismarino', name = 'Scalini di prismarino.gif' }, '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 pressione di pietranera levigata' },
	['Pedana a pressione di legno del Nether'] = { 'Pedana a pressione cremisi', 'Pedana a pressione distorta' },
	['Staccionata di legno del Nether'] = { 'Staccionata cremisi', 'Staccionata distorta' },
	['Botola di legno del Nether'] = { 'Botola cremisi', 'Botola distorta' },
	['Cancelletto di legno del Nether'] = { 'Cancelletto cremisi', 'Cancelletto distorto' },
	['Scalini di legno del Nether'] = { 'Scalini cremisi', 'Scalini distorti' },
	['Porta di legno del Nether'] = { 'Porta cremisi', 'Porta distorta' },
	['Cartello di legno del Nether'] = { 'Cartello cremisi', 'Cartello distorto' },
}
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 = {
	['Blocco di rame (ossidato) corrispondente'] = {'Blocco di rame', 'Blocco di rame poco ossidato', 'Blocco di rame semiossidato', 'Blocco di rame ossidato'},
	['Rame inciso (ossidato) corrispondente'] = {'Rame inciso', 'Rame inciso poco ossidato', 'Rame inciso semiossidato', 'Rame inciso ossidato'},
	['Blocco di rame cerato (ossidato) corrispondente'] = {'Rame cerato', 'Blocco di rame poco ossidato cerato', 'Blocco di rame semiossidato cerato'},
	['Rame inciso cerato (ossidato) corrispondente'] = {'Rame inciso cerato', 'Rame inciso poco ossidato cerato', 'Rame inciso semiossidato cerato'},
}
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(' Blocco$', '')
	local v1 = map(v, function(s) return s:gsub(' Blocco$', '') end)
	aliases['Lastra' .. k1] = map(v1, function(s) return 'Lastra' .. s end)
	aliases['Scalini' .. k1] = map(v1, function(s) return 'Scalini' .. s 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',
	'Ascia di netherite',
	'Stivali di netherite',
	'Corazza di netherite',
	'Elmo di netherite',
	'Zappa di netherite',
	'Gambiere di netherite',
	'Piccone di netherite',
	'Pala di netherite',
	'Spada di netherite',
	'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',
	'Tappeto',
	'Calcestruzzo',
	'Polvere di calcestruzzo',
	'Glazed Terracotta',
	'Vetro temperato $1',
	'Pannello di vetro temperato $1',
	'Scudo',
	'Scatola di shulker',
	'Vetro colorato',
	'Pannello di vetro colorato',
	'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 = '&9Resistenza 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 = '&9Respirazione 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 == 'Freccia imbevuta' 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 .. ' estesa'] = { 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 .. ' estesa'] = { 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 = {
        'cremisi',
        'distorto'
    },
    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 = {
        'Gambo',
        'Ife',
        'Gambo $1 scortecciato',
        'Ife $1 scortecciate',
    },
    both = {
        'Assi del $world',
        '${Legno,Ife}',
        '${Tronco,Gambo}',
        '${Legno,Ife} $1 scortecciato',
        '${Tronco,Gambo} $1 scortecciato',
        'Cancelletto',
        -- '$world Wood Fence',
        'Staccionata $wood',
        'Porta $wood',
        'Pulsante $wood',
        'Pedana a pressione $wood',
        'Botola $wood',
        'Lastra $wood del $world',
        'Scalini $wood',
        'Cartello'
    }
}
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['Mondo principale ' .. 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('^Mondo principale ', '')
    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 = {
		'Cancello recinzione di acacia',
		'Cancello recinzione di betulla',
		'Arco',
		'Secchio di pesci palla',
		'Secchio di pesci tropicali',
		'Cassa',
		'Testa di Creeper',
		'Cancello recinzione cremisi',
		'Cancello recinzione di rovere',
		'Testa di drago',
		"Varco dell'End",
		"Portale dell'End",
		'Cassa di Ender',
		'Lava fluente',
		'Pannello di vetro',
		'Testa',
		'Blocco di miele',
		'Blocco di corallo giallo',
		'Barre di ferro',
		'Blocco mosaico',
		'Cancello recinzione della giungla',
		'Lava',
		'Mappa',
		'Vagonetto con blocco di comando',
		'Cancello recinzione di quercia',
		'Osservatore',
		"Mappa dell'esploratore di oceani",
		'Peonia',
		'Rosaio',
		'Impalcatura',
		'Teschio di scheletro',
		'Uovo di gatto',
		'Uovo di panda',
		'Uovo di mercante errante',
		'Cancello recinzione di abete',
		'Tagliapietra',
		'Vuoto struttura',
		'Cancello recinzione deformato',
		'Teschio di scheletro Wither',
		"Mappa dell'esploratore di foreste",
		'Testa di zombi',
		'Condotto',
	},
	LCE = {
		'Peonia',
		'Rosaio',
		'Arbusto'
	}
}
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["Blocco luce " .. level] = {title = "Blocco luce", name = "Blocco luce " .. level}
end

return aliases
Advertisement