Minecraft Wiki
編集の要約なし
 
(6人の利用者による、間の36版が非表示)
14行目: 14行目:
 
['Any diamond armor'] = { 'Diamond Helmet', 'Diamond Chestplate', 'Diamond Leggings', 'Diamond Boots' },
 
['Any diamond armor'] = { 'Diamond Helmet', 'Diamond Chestplate', 'Diamond Leggings', 'Diamond Boots' },
 
['Any netherite armor'] = { 'Netherite Helmet', 'Netherite Chestplate', 'Netherite Leggings', 'Netherite Boots' },
 
['Any netherite armor'] = { 'Netherite Helmet', 'Netherite Chestplate', 'Netherite Leggings', 'Netherite Boots' },
  +
['Any Pottery Sherd'] = { 'Angler Pottery Sherd', 'Arms Up Pottery Sherd', 'Archer Pottery Sherd', 'Blade Pottery Sherd', 'Brewer Pottery Sherd', 'Burn Pottery Sherd', 'Danger Pottery Sherd', 'Explorer Pottery Sherd', 'Friend Pottery Sherd', 'Heart Pottery Sherd', 'Heartbreak Pottery Sherd', 'Howl Pottery Sherd', 'Miner Pottery Sherd', 'Mourner Pottery Sherd', 'Plenty Pottery Sherd', 'Prize Pottery Sherd', 'Sheaf Pottery Sherd', 'Shelter Pottery Sherd', 'Skull Pottery Sherd', 'Snort Pottery Sherd', 'Brick' },
 
 
-- stones --
+
-- stones --
 
['Any Cobblestone or Blackstone'] = { 'Cobblestone', 'Blackstone' },
 
['Any Cobblestone or Blackstone'] = { 'Cobblestone', 'Blackstone' },
  +
['Any stone-tier block'] = { 'Cobblestone', 'Blackstone', 'Cobbled Deepslate' },
 
  +
 
-- Display names --
 
-- Display names --
 
['Broken Elytra'] = { title = '&eエリトラ', name = 'Broken Elytra' },
 
['Broken Elytra'] = { title = '&eエリトラ', name = 'Broken Elytra' },
32行目: 34行目:
 
['Banner Pattern Thing'] = { title = '&d旗の模様', name = 'Banner Pattern', text = '&7何かの模様'},
 
['Banner Pattern Thing'] = { title = '&d旗の模様', name = 'Banner Pattern', text = '&7何かの模様'},
 
['Banner Pattern Mojang'] = { title = '&d旗の模様', name = 'Banner Pattern', text = '&7何かの模様'},
 
['Banner Pattern Mojang'] = { title = '&d旗の模様', name = 'Banner Pattern', text = '&7何かの模様'},
['Banner Pattern Globe'] = { title = '&d旗の模様', name = 'Banner Pattern', text = '&7地球の模様'},
+
['Banner Pattern Globe'] = { title = '旗の模様', name = 'Banner Pattern', text = '&7地球の模様'},
['Banner Pattern Snout'] = { title = '旗の模様', name = 'Banner Pattern', text = '&7Snout'},
+
['Banner Pattern Snout'] = { title = '旗の模様', name = 'Banner Pattern', text = '&7ブタの鼻の模様'},
['Banner Pattern Piglin'] = { title = '旗の模様', name = 'Banner Pattern', text = '&7Snout'},
+
['Banner Pattern Piglin'] = { title = '旗の模様', name = 'Banner Pattern', text = '&7ブタの鼻の模様'},
 
['Button'] = { title = 'ボタン', name = 'Stone Button'},
 
['Button'] = { title = 'ボタン', name = 'Stone Button'},
 
['Wooden Button'] = { title = 'ボタン', name = 'Oak Button'},
 
['Wooden Button'] = { title = 'ボタン', name = 'Oak Button'},
43行目: 45行目:
 
['Illager Banner'] = { title = '&6&o不吉な旗', name = 'Illager Banner', text =
 
['Illager Banner'] = { title = '&6&o不吉な旗', name = 'Illager Banner', text =
 
'&7青緑色の菱形/&7下に薄灰色の横帯/&7灰色の縦帯/&7薄灰色の縁取り/&7黒色の横帯/&7上に薄灰色の横二分割'},
 
'&7青緑色の菱形/&7下に薄灰色の横帯/&7灰色の縦帯/&7薄灰色の縁取り/&7黒色の横帯/&7上に薄灰色の横二分割'},
['Jigsaw Block'] = { title = '&dジグソーブロック', name = 'Jigsaw Block' },
+
['Half Filled Bundle'] = { title = 'バンドル', name = 'Half Filled Bundle' },
  +
['Filled Bundle'] = { title = 'バンドル', name = 'Filled Bundle' },
   
 
-- Weapons --
 
-- Weapons --
 
['Trident'] = { name = 'Trident', text = '/&7利き手に持ったとき:/ &2 攻撃速度 1.1/ &2 攻撃力 9'},
 
['Trident'] = { name = 'Trident', text = '/&7利き手に持ったとき:/ &2 攻撃速度 1.1/ &2 攻撃力 9'},
  +
['Trident BE'] = { name = 'Trident', text = '/&9 +8 攻撃力'},
   
 
-- Bedrock and Education Edition display names --
 
-- Bedrock and Education Edition display names --
['Elytra Wings'] = { title = '&eエリトラ', name = 'Elytra' },
+
['Elytra Wings'] = { title = 'エリトラ', name = 'Elytra' },
 
['Cooked Beef'] = { title = '調理された牛肉', name = 'Steak' },
 
['Cooked Beef'] = { title = '調理された牛肉', name = 'Steak' },
 
['Map (no markers)'] = { title = '地図', name = 'Map', text = 'マーカーを表示:&cいいえ' },
 
['Map (no markers)'] = { title = '地図', name = 'Map', text = 'マーカーを表示:&cいいえ' },
77行目: 81行目:
 
'Head',
 
'Head',
 
'Heart of the Sea',
 
'Heart of the Sea',
  +
'Piglin Head',
 
'Player Head',
 
'Player Head',
 
'Skeleton Skull',
 
'Skeleton Skull',
99行目: 104行目:
 
'Dragon Egg',
 
'Dragon Egg',
 
'Structure Block',
 
'Structure Block',
  +
'Structure Void',
  +
'Jigsaw Block',
  +
'Barrier',
 
}
 
}
 
for _, name in ipairs( lightPurpleTooltips ) do
 
for _, name in ipairs( lightPurpleTooltips ) do
108行目: 116行目:
 
}
 
}
 
for _, name in ipairs( orangeItalicTooltips ) do
 
for _, name in ipairs( orangeItalicTooltips ) do
aliases[name] = { title = '&6&o', name = name }
+
aliases[name] = { title = '&6&o' .. Autolink.invlink(name, 'nolink'), name = name }
 
end
 
end
   
 
-- Animated icons --
 
-- Animated icons --
 
local animatedIcons = {
 
local animatedIcons = {
  +
'Blue Key',
 
'Bubble Column',
 
'Bubble Column',
  +
'Calibrated Sculk Sensor',
'Compass',
 
'Clock',
+
'Compass',
  +
'Clock',
'Crimson Hyphae',
 
'Crimson Stem',
+
'Crimson Hyphae',
  +
'Crimson Stem',
 
'Debug Stick',
 
'Debug Stick',
 
'Fire',
 
'Fire',
  +
'Gear',
 
'Heat Block',
 
'Heat Block',
 
'Lava',
 
'Lava',
 
'Lodestone Compass',
 
'Lodestone Compass',
 
'Magma Block',
 
'Magma Block',
  +
'Magma Block BE',
 
'Nether Portal',
 
'Nether Portal',
 
'Prismarine',
 
'Prismarine',
129行目: 141行目:
 
'Prismarine Stairs',
 
'Prismarine Stairs',
 
'Prismarine Wall',
 
'Prismarine Wall',
  +
'Recovery Compass',
  +
'Red Key',
 
'Sea Lantern',
 
'Sea Lantern',
 
'Stonecutter',
 
'Stonecutter',
 
'Soul Fire',
 
'Soul Fire',
  +
'Sculk',
  +
'Sculk Shrieker';
  +
'Sculk Shrieker BE',
  +
'Sculk Sensor',
  +
'Sculk Sensor BE',
  +
'Sculk Vein',
 
'Warped Hyphae',
 
'Warped Hyphae',
 
'Warped Stem',
 
'Warped Stem',
 
'Water',
 
'Water',
'Written Book'
+
'Written Book',
  +
'Yellow Key'
 
}
 
}
 
for _, icon in ipairs( animatedIcons ) do
 
for _, icon in ipairs( animatedIcons ) do
167行目: 188行目:
 
}
 
}
 
for _, name in ipairs( animatedIconsPurpleTooltips ) do
 
for _, name in ipairs( animatedIconsPurpleTooltips ) do
aliases[name] = { title = '&d' .. Autolink.invlink(name, 'nolink'), name = name .. '.gif' }
+
aliases[name] = { title = '&d', name = name .. '.gif' }
 
end
 
end
   
173行目: 194行目:
 
local animatedEditionItems = {
 
local animatedEditionItems = {
 
BE = {
 
BE = {
'Lodestone Compass',
+
'Lodestone Compass',
 
},
 
},
 
LCE = {
 
LCE = {
229行目: 250行目:
 
for _, toolProps in ipairs( tools ) do
 
for _, toolProps in ipairs( tools ) do
 
local aliasName = toolProps[1] .. ' ' .. toolProps[2]
 
local aliasName = toolProps[1] .. ' ' .. toolProps[2]
  +
local damagedName = 'Damaged ' .. aliasName
aliases[aliasName] = { title = toolProps[5], name = aliasName, text = '/&7利き手に持ったとき:/ &2 攻撃速度 ' .. toolProps[3] .. '/ &2 攻撃力 ' .. toolProps[4] }
 
  +
local text = '/&7利き手に持ったとき:/ &2 攻撃速度 ' .. toolProps[3] .. '/ &2 攻撃力 ' .. toolProps[4]
  +
aliases[aliasName] = { title = toolProps[5], name = aliasName, text = text }
  +
-- add damaged here as well so it gets the proper tooltip
  +
aliases[damagedName] = { title = toolProps[5], name = damagedName, text = text }
 
 
 
local materialGroup = toolProps[1]:lower();
 
local materialGroup = toolProps[1]:lower();
248行目: 273行目:
 
for toolGroup, items in pairs( toolGroups ) do
 
for toolGroup, items in pairs( toolGroups ) do
 
aliases['Any ' .. toolGroup] = items
 
aliases['Any ' .. 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 = toolProps[4], name = aliasName, text = '/&9+' .. toolProps[3] .. ' 攻撃力'}
 
end
 
end
   
275行目: 343行目:
 
'Brown Terracotta', 'Green Terracotta', 'Red Terracotta', 'Black Terracotta',
 
'Brown Terracotta', 'Green Terracotta', 'Red Terracotta', 'Black Terracotta',
 
},
 
},
  +
['Dyed Candle'] = {
['Flower'] = { 'Oxeye Daisy', 'Cornflower', 'Lily of the Valley', 'Wither Rose', 'Red Tulip', 'Orange Tulip', 'White Tulip', 'Pink Tulip', 'Azure Bluet', 'Allium', 'Blue Orchid', 'Poppy', 'Dandelion' },
 
  +
'White Candle', 'Orange Candle', 'Magenta Candle', 'Light Blue Candle',
  +
'Yellow Candle', 'Lime Candle', 'Pink Candle', 'Gray Candle',
  +
'Light Gray Candle', 'Cyan Candle', 'Purple Candle', 'Blue Candle',
  +
'Brown Candle', 'Green Candle', 'Red Candle', 'Black Candle',
  +
},
  +
['Flower'] = { 'Oxeye Daisy', 'Cornflower', 'Lily of the Valley', 'Wither Rose', 'Red Tulip', 'Orange Tulip', 'White Tulip', 'Pink Tulip', 'Azure Bluet', 'Allium', 'Blue Orchid', 'Poppy', 'Dandelion', 'Torchflower' },
 
['Mushroom'] = { 'Red Mushroom', 'Brown Mushroom' },
 
['Mushroom'] = { 'Red Mushroom', 'Brown Mushroom' },
 
['Quartz Block'] = { 'Block of Quartz', 'Chiseled Quartz Block', 'Quartz Pillar' },
 
['Quartz Block'] = { 'Block of Quartz', 'Chiseled Quartz Block', 'Quartz Pillar' },
284行目: 358行目:
 
'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',
 
'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',
 
'Smooth Red Sandstone Slab', 'Brick Slab', { title = 'Prismarine Slab', name = 'Prismarine Slab.gif' }, 'Prismarine Brick Slab', 'Dark Prismarine Slab', 'Nether Brick Slab', 'Red Nether Brick Slab', 'Quartz Slab',
 
'Smooth Red Sandstone Slab', 'Brick Slab', { title = 'Prismarine Slab', name = 'Prismarine Slab.gif' }, 'Prismarine Brick Slab', 'Dark Prismarine Slab', 'Nether Brick Slab', 'Red Nether Brick Slab', 'Quartz Slab',
'Smooth Quartz Slab', 'Purpur Slab', 'End Stone Brick Slab', 'Petrified Oak Slab', 'Blackstone Slab', 'Polished Blackstone Slab', 'Polished Blackstone Brick Slab' },
+
'Smooth Quartz Slab', 'Purpur Slab', 'End Stone Brick Slab', 'Petrified Oak Slab', 'Blackstone Slab', 'Polished Blackstone Slab', 'Polished Blackstone Brick Slab', 'Cobbled Deepslate Slab', 'Deepslate Brick Slab',
  +
'Deepslate Tile Slab', 'Polished Deepslate Slab' },
 
['Stone Stairs'] = { 'Stone Stairs', 'Cobblestone Stairs', 'Mossy Cobblestone Stairs', 'Stone Brick Stairs', 'Mossy Stone Brick Stairs', 'Andesite Stairs', 'Polished Andesite Stairs',
 
['Stone Stairs'] = { 'Stone Stairs', 'Cobblestone Stairs', 'Mossy Cobblestone Stairs', 'Stone Brick Stairs', 'Mossy Stone Brick Stairs', 'Andesite Stairs', 'Polished Andesite Stairs',
 
'Diorite Stairs', 'Polished Diorite Stairs', 'Granite Stairs', 'Polished Granite Stairs', 'Sandstone Stairs', 'Smooth Sandstone Stairs', 'Red Sandstone Stairs', 'Smooth Red Sandstone Stairs',
 
'Diorite Stairs', 'Polished Diorite Stairs', 'Granite Stairs', 'Polished Granite Stairs', 'Sandstone Stairs', 'Smooth Sandstone Stairs', 'Red Sandstone Stairs', 'Smooth Red Sandstone Stairs',
 
'Brick Stairs', { title = 'Prismarine Stairs', name = 'Prismarine Stairs.gif' }, 'Prismarine Brick Stairs', 'Dark Prismarine Stairs', 'Nether Brick Stairs', 'Red Nether Brick Stairs', 'Quartz Stairs', 'Smooth Quartz Stairs', 'Purpur Stairs',
 
'Brick Stairs', { title = 'Prismarine Stairs', name = 'Prismarine Stairs.gif' }, 'Prismarine Brick Stairs', 'Dark Prismarine Stairs', 'Nether Brick Stairs', 'Red Nether Brick Stairs', 'Quartz Stairs', 'Smooth Quartz Stairs', 'Purpur Stairs',
'End Stone Brick Stairs', 'Blackstone Stairs', 'Polished Blackstone Stairs', 'Polished Blackstone Brick Stairs' },
+
'End Stone Brick Stairs', 'Blackstone Stairs', 'Polished Blackstone Stairs', 'Polished Blackstone Brick Stairs', 'Cobbled Deepslate Stairs', 'Deepslate Brick Stairs', 'Deepslate Tile Stairs',
  +
'Polished Deepslate Stairs' },
 
['Purpur Block'] = { 'Purpur Block', 'Purpur Pillar' },
 
['Purpur Block'] = { 'Purpur Block', 'Purpur Pillar' },
 
['Stone'] = { 'Stone', 'Andesite', 'Granite', 'Diorite', 'Polished Andesite', 'Polished Granite', 'Polished Diorite' },
 
['Stone'] = { 'Stone', 'Andesite', 'Granite', 'Diorite', 'Polished Andesite', 'Polished Granite', 'Polished Diorite' },
 
['Tulip'] = { 'Red Tulip', 'Orange Tulip', 'White Tulip', 'Pink Tulip' },
 
['Tulip'] = { 'Red Tulip', 'Orange Tulip', 'White Tulip', 'Pink Tulip' },
 
['Prismarine'] = { { title = 'Prismarine', name = 'Prismarine.gif' }, 'Prismarine Bricks', 'Dark Prismarine' },
 
['Prismarine'] = { { title = 'Prismarine', name = 'Prismarine.gif' }, 'Prismarine Bricks', 'Dark Prismarine' },
['Ore'] = { 'Coal Ore', 'Iron Ore', 'Gold Ore', 'Lapis Lazuli Ore', 'Redstone Ore', 'Emerald Ore', 'Diamond Ore', 'Nether Quartz Ore', 'Nether Gold Ore' },
+
['Ore'] = { 'Coal Ore', 'Iron Ore', 'Gold Ore', 'Lapis Lazuli Ore', 'Redstone Ore', 'Emerald Ore', 'Diamond Ore', 'Nether Quartz Ore', 'Nether Gold Ore', 'Deepslate Coal Ore',
  +
'Deepslate Copper Ore', 'Deepslate Emerald Ore', 'Deepslate Iron Ore', 'Deepslate Gold Ore', 'Deepslate Lapis Lazuli Ore', 'Deepslate Redstone Ore', 'Deepslate Diamond Ore'},
 
['Dead Coral Block'] = { 'Dead Tube Coral Block', 'Dead Brain Coral Block', 'Dead Bubble Coral Block', 'Dead Fire Coral Block', 'Dead Horn Coral Block' },
 
['Dead Coral Block'] = { 'Dead Tube Coral Block', 'Dead Brain Coral Block', 'Dead Bubble Coral Block', 'Dead Fire Coral Block', 'Dead Horn Coral Block' },
 
['Coral Block'] = { 'Tube Coral Block', 'Brain Coral Block', 'Bubble Coral Block', 'Fire Coral Block', 'Horn Coral Block' },
 
['Coral Block'] = { 'Tube Coral Block', 'Brain Coral Block', 'Bubble Coral Block', 'Fire Coral Block', 'Horn Coral Block' },
302行目: 379行目:
 
['Wall'] = { 'Cobblestone Wall', 'Mossy Cobblestone Wall', 'Stone Brick Wall', 'Mossy Stone Brick Wall', 'Andesite Wall', 'Diorite Wall', 'Granite Wall', 'Sandstone Wall',
 
['Wall'] = { 'Cobblestone Wall', 'Mossy Cobblestone Wall', 'Stone Brick Wall', 'Mossy Stone Brick Wall', 'Andesite Wall', 'Diorite Wall', 'Granite Wall', 'Sandstone Wall',
 
'Red Sandstone Wall', 'Brick Wall', { title = 'Prismarine Wall', name = 'Prismarine Wall.gif' }, 'Nether Brick Wall', 'Red Nether Brick Wall', 'End Stone Brick Wall', 'Blackstone Wall', 'Polished Blackstone Wall',
 
'Red Sandstone Wall', 'Brick Wall', { title = 'Prismarine Wall', name = 'Prismarine Wall.gif' }, 'Nether Brick Wall', 'Red Nether Brick Wall', 'End Stone Brick Wall', 'Blackstone Wall', 'Polished Blackstone Wall',
'Polished Blackstone Brick Wall' },
+
'Polished Blackstone Brick Wall', 'Cobbled Deepslate Wall', 'Deepslate Brick Wall', 'Deepslate Tile Wall', 'Polished Deepslate Wall' },
 
['Torch'] = { 'Torch', 'Soul Torch' },
 
['Torch'] = { 'Torch', 'Soul Torch' },
 
['Lantern'] = { 'Lantern', 'Soul Lantern' },
 
['Lantern'] = { 'Lantern', 'Soul Lantern' },
321行目: 398行目:
 
['Nether Wood Door'] = { 'Crimson Door', 'Warped Door' },
 
['Nether Wood Door'] = { 'Crimson Door', 'Warped Door' },
 
['Nether Wood Sign'] = { 'Crimson Sign', 'Warped Sign' },
 
['Nether Wood Sign'] = { 'Crimson Sign', 'Warped Sign' },
  +
['Candle'] = { 'Candle', 'White Candle', 'Orange Candle', 'Magenta Candle', 'Light Blue Candle', 'Yellow Candle', 'Lime Candle', 'Pink Candle', 'Gray Candle', 'Light Gray Candle',
  +
'Cyan Candle', 'Purple Candle', 'Blue Candle', 'Brown Candle', 'Green Candle', 'Red Candle', 'Black Candle' },
  +
['Copper Block'] = { 'Copper Block', 'Exposed Copper Block', 'Weathered Copper Block', 'Oxidized Copper Block', 'Waxed Copper Block', 'Waxed Exposed Copper Block', 'Waxed Weathered Copper Block' },
  +
['Cut Copper'] = { 'Cut Copper', 'Exposed Cut Copper', 'Weathered Cut Copper', 'Oxidized Cut Copper', 'Waxed Cut Copper', 'Waxed Exposed Cut Copper', 'Waxed Weathered Cut Copper' },
  +
['Cut Copper Stairs'] = { 'Cut Copper Stairs', 'Exposed Cut Copper Stairs', 'Weathered Cut Copper Stairs', 'Oxidized Cut Copper Stairs', 'Waxed Cut Copper Stairs',
  +
'Waxed Exposed Cut Copper Stairs', 'Waxed Weathered Cut Copper Stairs' },
  +
['Cut Copper Slab'] = { 'Cut Copper Slab', 'Exposed Cut Copper Slab', 'Weathered Cut Copper Slab', 'Oxidized Cut Copper Slab', 'Waxed Cut Copper Slab', 'Waxed Exposed Cut Copper Slab',
  +
'Waxed Weathered Cut Copper Slab' },
 
}
 
}
 
table.insert( itemVariants['Dye'], 1, 'White Dye' )
 
table.insert( itemVariants['Dye'], 1, 'White Dye' )
326行目: 411行目:
 
aliases['Any ' .. aliasName] = aliasItems
 
aliases['Any ' .. aliasName] = aliasItems
 
aliases['Matching ' .. aliasName] = aliasItems
 
aliases['Matching ' .. aliasName] = 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', 'C418', },
+
{ '13', 'C418', },
{ 'Cat', 'C418', 'cat' },
+
{ 'Cat', 'C418', 'cat' },
{ 'Blocks', 'C418', 'blocks' },
+
{ 'Blocks', 'C418', 'blocks' },
{ 'Chirp', 'C418', 'chirp' },
+
{ 'Chirp', 'C418', 'chirp' },
{ 'Far', 'C418', 'far' },
+
{ 'Far', 'C418', 'far' },
{ 'Mall', 'C418', 'mall' },
+
{ 'Mall', 'C418', 'mall' },
{ 'Mellohi', 'C418', 'mellohi' },
+
{ 'Mellohi', 'C418', 'mellohi' },
{ 'Stal', 'C418', 'stal' },
+
{ 'Stal', 'C418', 'stal' },
{ 'Strad', 'C418', 'strad' },
+
{ 'Strad', 'C418', 'strad' },
{ 'Ward', 'C418', 'ward' },
+
{ 'Ward', 'C418', 'ward' },
{ '11', 'C418', },
+
{ '11', 'C418', },
{ 'Wait', 'C418', 'wait' },
+
{ 'Wait', 'C418', 'wait' },
{ 'Pigstep', 'Lena Raine', },
+
{ 'Otherside', 'Lena Raine', 'otherside' },
  +
{ 'Pigstep', 'Lena Raine', },
  +
{ '5', 'Samuel Åberg', },
  +
{ 'Relic', 'Aaron Cherof', },
 
}
 
}
 
for _, disc in ipairs( discs ) do
 
for _, disc in ipairs( discs ) do
354行目: 464行目:
 
end
 
end
   
  +
-- Disc Fragments --
-- Damaged armor, tools and weapons --
 
  +
local disc_fragments = {
  +
{ '5', },
  +
}
  +
for _, disc_fragment in ipairs( disc_fragments ) do
  +
local name = 'Disc Fragment ' .. disc_fragment[1]
  +
local trackname = disc_fragment[1]
  +
if disc_fragment[2] ~= nil then
  +
trackname = disc_fragment[2]
  +
end
  +
aliases[name] = { title = '&fレコードの破片', name = name, text = '&7レコード - ' .. trackname }
  +
end
  +
  +
-- Damaged armor, note it skips tools and weapons as they are handled above to add the damage tooltip --
 
local damagedItems = {
 
local damagedItems = {
 
'Bow',
 
'Bow',
  +
'Brush',
 
'Carrot on a Stick',
 
'Carrot on a Stick',
 
'Chainmail Boots',
 
'Chainmail Boots',
363行目: 487行目:
 
'Chainmail Leggings',
 
'Chainmail Leggings',
 
'Crossbow',
 
'Crossbow',
'Diamond Axe',
 
 
'Diamond Boots',
 
'Diamond Boots',
 
'Diamond Chestplate',
 
'Diamond Chestplate',
 
'Diamond Helmet',
 
'Diamond Helmet',
'Diamond Hoe',
 
 
'Diamond Leggings',
 
'Diamond Leggings',
'Diamond Pickaxe',
 
'Diamond Shovel',
 
'Diamond Sword',
 
 
'Elytra',
 
'Elytra',
 
'Fishing Rod',
 
'Fishing Rod',
 
'Flint and Steel',
 
'Flint and Steel',
'Golden Axe',
 
 
'Golden Boots',
 
'Golden Boots',
 
'Golden Chestplate',
 
'Golden Chestplate',
 
'Golden Helmet',
 
'Golden Helmet',
'Golden Hoe',
 
 
'Golden Leggings',
 
'Golden Leggings',
'Golden Pickaxe',
 
'Golden Shovel',
 
'Golden Sword',
 
'Iron Axe',
 
 
'Iron Boots',
 
'Iron Boots',
 
'Iron Chestplate',
 
'Iron Chestplate',
 
'Iron Helmet',
 
'Iron Helmet',
'Iron Hoe',
 
 
'Iron Leggings',
 
'Iron Leggings',
'Iron Pickaxe',
 
'Iron Shovel',
 
'Iron Sword',
 
 
'Leather Boots',
 
'Leather Boots',
 
'Leather Tunic',
 
'Leather Tunic',
 
'Leather Cap',
 
'Leather Cap',
 
'Leather Pants',
 
'Leather Pants',
'Netherite Axe',
 
 
'Netherite Boots',
 
'Netherite Boots',
 
'Netherite Chestplate',
 
'Netherite Chestplate',
 
'Netherite Helmet',
 
'Netherite Helmet',
'Netherite Hoe',
 
 
'Netherite Leggings',
 
'Netherite Leggings',
'Netherite Pickaxe',
 
'Netherite Shovel',
 
'Netherite Sword',
 
 
'Shears',
 
'Shears',
'Shield',
+
'Shield'
'Stone Axe',
 
'Stone Hoe',
 
'Stone Pickaxe',
 
'Stone Shovel',
 
'Stone Sword',
 
'Wooden Axe',
 
'Wooden Hoe',
 
'Wooden Pickaxe',
 
'Wooden Shovel',
 
'Wooden Sword'
 
 
}
 
}
 
for _, item in ipairs( damagedItems ) do
 
for _, item in ipairs( damagedItems ) do
470行目: 564行目:
 
-- 日本語対応版 --
 
-- 日本語対応版 --
 
local patterns_ja = {
 
local patterns_ja = {
'下に$1の方形',
+
'に$1の方形',
'下に$1の横帯',
+
'下に$1の横帯',
'に$1のグラデーション',
+
'に$1のグラデーション',
'下に$1の形',
+
'下に$1の上向き山',
'下に$1の方形',
+
'に$1の方形',
'$1の斜め帯',
+
'右下向きに$1の斜め帯',
'$1の斜め帯',
+
'左下向きに$1の斜め帯',
 
'$1の縁取り',
 
'$1の縁取り',
'$1の形の縁取り',
+
'$1のの縁取り',
'$1の山形',
+
'下半に$1の上向き山形',
'上に$1の方形',
+
'に$1の方形',
'上に$1の横帯',
+
'上に$1の横帯',
'上に$1の形',
+
'上に$1の下向き山',
'上に$1の方形',
+
'に$1の方形',
 
'$1のクリーパー模様',
 
'$1のクリーパー模様',
 
'$1の十字',
 
'$1の十字',
'$1の横帯',
+
'中央に$1の横帯',
 
'$1のレンガ模様',
 
'$1のレンガ模様',
 
'$1の花模様',
 
'$1の花模様',
 
'$1の地球の模様',
 
'$1の地球の模様',
 
'上に$1のグラデーション',
 
'上に$1のグラデーション',
'$1の下向き山形',
+
'上半に$1の下向き山形',
 
'$1の菱形',
 
'$1の菱形',
 
'$1の何かの模様',
 
'$1の何かの模様',
'$1の縦帯',
+
'中央に$1の縦帯',
'に$1の縦帯',
+
'左端に$1の縦帯',
'に$1の縦帯',
+
'右端に$1の縦帯',
 
'$1の縦縞',
 
'$1の縦縞',
'上に$1の斜め分割',
+
'に$1の斜め分割',
'下に$1の斜め分割',
+
'に$1の斜め分割',
'上に$1の斜め分割',
+
'に$1の斜め分割',
'下に$1の斜め分割',
+
'に$1の斜め分割',
'上に$1の横分割',
+
'上に$1の横分割',
'下に$1の横分割',
+
'下に$1の横分割',
'に$1の縦分割',
+
'左半に$1の縦分割',
'に$1の縦分割',
+
'右半に$1の縦分割',
'ピグリンの模様',
+
'$1のブタの鼻の模様',
'ピグリンの模様',
+
'$1のブタの鼻の模様',
 
'$1の円形',
 
'$1の円形',
 
'$1の斜め十字',
 
'$1の斜め十字',
694行目: 788行目:
 
-- 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 = {}
+
local potionName = type.text .. effect.name
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
726行目: 815行目:
 
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 = potionName, text = effect.effect}
+
aliases[name] = { name = potionName, text = effect.effect }
 
aliases[name .. ' Enhanced'] = { name = potionName, text = effect.effect .. ' ' .. effect.enhanced }
 
aliases[name .. ' Enhanced'] = { name = potionName, text = effect.effect .. ' ' .. effect.enhanced }
 
end
 
end
743行目: 832行目:
 
-- Wood --
 
-- Wood --
 
local woodTypes = {
 
local woodTypes = {
overworld = {
+
overworld = {
'Oak',
+
'Oak',
'Spruce',
+
'Spruce',
'Birch',
+
'Birch',
'Jungle',
+
'Jungle',
'Acacia',
+
'Acacia',
'Dark Oak',
+
'Dark Oak',
  +
'Mangrove',
},
 
  +
'Cherry',
nether = {
 
  +
'Bamboo',
'Crimson',
 
  +
},
'Warped'
 
  +
nether = {
},
 
  +
'Crimson',
both = {},
 
  +
'Warped',
  +
},
  +
both = {},
 
}
 
}
 
local woodTypeWorld = {}
 
local woodTypeWorld = {}
762行目: 854行目:
 
for _, type in ipairs(woods) do
 
for _, type in ipairs(woods) do
 
woodTypeWorld[type] = world
 
woodTypeWorld[type] = world
table.insert(woodTypes.both, type)
+
table.insert(woodTypes.both, type)
end
+
end
 
end
 
end
 
local woodItems = {
 
local woodItems = {
overworld = {
+
overworld = {
'Wood',
+
'Wood',
'Log',
+
'Log',
'Boat',
+
'Boat',
  +
'Boat with Chest',
'Stripped $1 Log',
 
'Stripped $1 Wood',
+
'Stripped $1 Log',
'Wood Planks',
+
'Stripped $1 Wood',
'Wood Slab',
+
'Wood Planks',
'Wood Stairs',
+
'Wood Slab',
'Wood Pressure Plate',
+
'Wood Stairs',
'Wood Button',
+
'Wood Pressure Plate',
'Wood Door',
+
'Wood Button',
'Wood Trapdoor',
+
'Wood Door',
'Wood Fence Gate',
+
'Wood Trapdoor',
'Wood Fence',
+
'Wood Fence Gate',
'Wood Sign',
+
'Wood Fence',
  +
'Wood Sign',
'Sapling',
 
  +
'Sapling',
},
 
  +
},
nether = {
 
  +
nether = {
'Stem',
 
  +
'Stem',
'Hyphae',
 
  +
'Hyphae',
'Stripped $1 Stem',
 
'Stripped $1 Hyphae',
+
'Stripped $1 Stem',
  +
'Stripped $1 Hyphae',
},
 
  +
},
both = {
 
  +
both = {
'$world Planks',
 
  +
'$world Planks',
'${Wood,Hyphae}',
 
'${Log,Stem}',
+
'${Wood,Hyphae}',
  +
'${Log,Stem}',
'Stripped $1 ${Wood,Hyphae}',
 
'Stripped $1 ${Log,Stem}',
+
'Stripped $1 ${Wood,Hyphae}',
  +
'Stripped $1 ${Log,Stem}',
'Fence Gate',
 
  +
'Fence Gate',
-- '$world Wood Fence',
 
'$wood Fence',
+
-- '$world Wood Fence',
'$wood Door',
+
'$wood Fence',
'$wood Button',
+
'$wood Door',
'$wood Pressure Plate',
+
'$wood Button',
'$wood Trapdoor',
+
'$wood Pressure Plate',
'$world $wood Slab',
+
'$world Hanging Sign',
'$wood Stairs',
+
'$wood Trapdoor',
  +
'$world $wood Slab',
'Sign'
 
  +
'$wood Stairs',
}
 
  +
'Sign'
  +
}
 
}
 
}
 
local woodItemWorld = {}
 
local woodItemWorld = {}
 
for world, items in pairs(woodItems) do
 
for world, items in pairs(woodItems) do
for _, item in ipairs(items) do
+
for _, item in ipairs(items) do
 
-- expand $world (should only happen in "both")
 
-- expand $world (should only happen in "both")
if (item:find('%$world')) and world == 'both' then
+
if (item:find('%$world')) and world == 'both' then
item = item:gsub('%$world ', '')
+
item = item:gsub('%$world ', '')
woodItemWorld['Overworld ' .. item] = 'overworld'
+
woodItemWorld['Overworld ' .. item] = 'overworld'
 
woodItemWorld['Nether ' .. item] = 'nether'
 
woodItemWorld['Nether ' .. item] = 'nether'
 
end
 
end
 
woodItemWorld[item] = world
 
woodItemWorld[item] = world
end
+
end
 
end
 
end
  +
  +
local woodBadItems = {
  +
['Bamboo Hanging Sign'] = 1,
  +
['Bamboo Sapling'] = 1,
  +
['Bamboo Wood'] = 1,
  +
['Bamboo Log'] = 1,
  +
['Stripped Bamboo Wood'] = 1,
  +
['Stripped Bamboo Log'] = 1,
  +
}
  +
  +
local woodNameMapping = {
  +
['Mangrove Sapling'] = 'Mangrove Propagule',
  +
['Bamboo Boat'] = 'Bamboo Raft',
  +
['Bamboo Boat with Chest'] = 'Bamboo Raft with Chest',
  +
}
   
 
for item, world in pairs(woodItemWorld) do
 
for item, world in pairs(woodItemWorld) do
826行目: 935行目:
   
 
-- real "linkable" name
 
-- real "linkable" name
local realItem = item:gsub('^Overworld ', '')
+
local realItem = item:gsub('^Overworld ', '')
realItem = realItem:gsub('^Nether ', '')
+
realItem = realItem:gsub('^Nether ', '')
   
 
for _, wood in ipairs(woodTypes[world]) do
 
for _, wood in ipairs(woodTypes[world]) do
841行目: 950行目:
 
itemName = wood .. ' ' .. itemName
 
itemName = wood .. ' ' .. itemName
 
end
 
end
  +
table.insert(woodAliases, itemName)
 
  +
-- special handling
  +
if woodNameMapping[itemName] then
  +
itemName = woodNameMapping[itemName]
  +
end
  +
  +
if not woodBadItems[itemName] then
  +
table.insert(woodAliases, itemName)
  +
end
 
end
 
end
   
 
-- Parse ${,} (world-select) syntax
 
-- Parse ${,} (world-select) syntax
 
item = item:gsub("%${(.-),(.-)}", "%1 or %2")
 
item = item:gsub("%${(.-),(.-)}", "%1 or %2")
item = item:gsub('%$wood ', 'wood ')
+
item = item:gsub('%$wood ', 'wood ')
item = item:gsub('%$1 ', '')
+
item = item:gsub('%$1 ', '')
aliases['Any ' .. item] = woodAliases
+
aliases['Any ' .. item] = woodAliases
 
aliases['Matching ' .. item] = woodAliases
 
aliases['Matching ' .. item] = woodAliases
 
end
 
end
856行目: 973行目:
 
BE = {
 
BE = {
 
'Acacia Fence Gate',
 
'Acacia Fence Gate',
  +
'Beacon',
 
'Birch Fence Gate',
 
'Birch Fence Gate',
  +
'Black Stained Glass Pane',
  +
'Blue Ice',
  +
'Blue Stained Glass Pane',
 
'Bow',
 
'Bow',
  +
'Brown Stained Glass Pane',
 
'Bucket of Pufferfish',
 
'Bucket of Pufferfish',
 
'Bucket of Tropical Fish',
 
'Bucket of Tropical Fish',
 
'Chest',
 
'Chest',
  +
'Conduit',
 
'Creeper Head',
 
'Creeper Head',
 
'Crimson Fence Gate',
 
'Crimson Fence Gate',
  +
'Crying Obsidian',
  +
'Cyan Stained Glass Pane',
 
'Dark Oak Fence Gate',
 
'Dark Oak Fence Gate',
  +
'Dragon Egg',
 
'Dragon Head',
 
'Dragon Head',
  +
'Enchanting Table',
 
'End Gateway',
 
'End Gateway',
  +
'End Portal Frame',
 
'End Portal',
 
'End Portal',
  +
'End Rod',
 
'Ender Chest',
 
'Ender Chest',
 
'Flowing Lava',
 
'Flowing Lava',
 
'Glass Pane',
 
'Glass Pane',
  +
'Glowstone',
  +
'Gray Stained Glass Pane',
  +
'Green Stained Glass Pane',
 
'Head',
 
'Head',
 
'Honey Block',
 
'Honey Block',
 
'Horn Coral Block',
 
'Horn Coral Block',
 
'Iron Bars',
 
'Iron Bars',
  +
'Jack o\'Lantern',
 
'Jigsaw Block',
 
'Jigsaw Block',
 
'Jungle Fence Gate',
 
'Jungle Fence Gate',
  +
'Jungle Leaves',
 
'Lava',
 
'Lava',
  +
'Leather Horse Armor',
  +
'Light Blue Stained Glass Pane',
  +
'Light Gray Stained Glass Pane',
  +
'Lime Stained Glass Pane',
  +
'Magenta Stained Glass Pane',
  +
'Magma Block',
 
'Map',
 
'Map',
 
'Minecart with Command Block',
 
'Minecart with Command Block',
  +
'Monster Spawner',
 
'Oak Fence Gate',
 
'Oak Fence Gate',
 
'Observer',
 
'Observer',
 
'Ocean Explorer Map',
 
'Ocean Explorer Map',
  +
'Orange Stained Glass Pane',
 
'Peony',
 
'Peony',
  +
'Pink Stained Glass Pane',
  +
'Purple Stained Glass Pane',
  +
'Red Stained Glass Pane',
 
'Rose Bush',
 
'Rose Bush',
 
'Scaffolding',
 
'Scaffolding',
  +
'Sea Lantern',
  +
'Shroomlight',
 
'Skeleton Skull',
 
'Skeleton Skull',
 
'Spawn Cat',
 
'Spawn Cat',
 
'Spawn Panda',
 
'Spawn Panda',
 
'Spawn Wandering Trader',
 
'Spawn Wandering Trader',
  +
'Spawner',
 
'Spruce Fence Gate',
 
'Spruce Fence Gate',
 
'Stonecutter',
 
'Stonecutter',
 
'Structure Void',
 
'Structure Void',
  +
'Trapped Chest',
 
'Warped Fence Gate',
 
'Warped Fence Gate',
  +
'White Stained Glass Pane',
 
'Wither Skeleton Skull',
 
'Wither Skeleton Skull',
 
'Woodland Explorer Map',
 
'Woodland Explorer Map',
  +
'Yellow Stained Glass Pane',
 
'Zombie Head',
 
'Zombie Head',
 
},
 
},
906行目: 1,057行目:
 
for _, item in ipairs(items) do
 
for _, item in ipairs(items) do
 
local name = item .. ' ' .. edition
 
local name = item .. ' ' .. edition
aliases[name] = { title = item, name = name }
+
aliases[name] = { title = Autolink.invlink(item, 'nolink'), name = name }
 
end
 
end
 
end
 
end
   
-- Bedrock Light blocks
+
-- Light blocks
 
for level = 0, 15 do
 
for level = 0, 15 do
 
aliases["Light Block " .. level] = {title = "光ブロック", name = "Light Block " .. level}
 
aliases["Light Block " .. level] = {title = "光ブロック", name = "Light Block " .. level}
  +
aliases["Light " .. level] = {title = "&dライトブロック", name = "Light " .. level}
  +
end
  +
aliases["Light Negative"] = {title = "&dライトブロック", name = "Light Negative"}
  +
  +
-- Smithing Template
  +
local smithing_templates = {
  +
{ 'Netherite Upgrade', 'ネザライト強化', 'ダイヤモンドの装備品','ネザライトインゴット' },
  +
{ 'Coast Armor Trim', '海洋風の装飾', '防具', 'インゴットや鉱物' },
  +
{ 'Dune Armor Trim', '砂丘風の装飾', '防具', 'インゴットや鉱物' },
  +
{ 'Eye Armor Trim', '要塞風の装飾', '防具', 'インゴットや鉱物' },
  +
{ 'Host Armor Trim', '主人風の装飾', '防具', 'インゴットや鉱物' },
  +
{ 'Raiser Armor Trim', '牧者風の装飾', '防具', 'インゴットや鉱物' },
  +
{ 'Rib Armor Trim', 'あばら模様の装飾', '防具', 'インゴットや鉱物' },
  +
{ 'Sentry Armor Trim', '略奪者風の装飾', '防具', 'インゴットや鉱物' },
  +
{ 'Shaper Armor Trim', '職人風の装飾', '防具', 'インゴットや鉱物' },
  +
{ 'Silence Armor Trim', '静寂の装飾', '防具', 'インゴットや鉱物' },
  +
{ 'Snout Armor Trim', 'ブタの鼻風の装飾', '防具', 'インゴットや鉱物' },
  +
{ 'Spire Armor Trim', '尖塔風の装飾', '防具', 'インゴットや鉱物' },
  +
{ 'Tide Armor Trim', '潮流風の装飾', '防具', 'インゴットや鉱物' },
  +
{ 'Vex Armor Trim', 'ヴェックス風の装飾','防具', 'インゴットや鉱物' },
  +
{ 'Ward Armor Trim', '監獄風の装飾', '防具', 'インゴットや鉱物' },
  +
{ 'Wayfinder Armor Trim','先駆者風の装飾', '防具', 'インゴットや鉱物' },
  +
{ 'Wild Armor Trim', '密林風の装飾', '防具', 'インゴットや鉱物' },
  +
  +
}
  +
local smithing_template_array = {}
  +
local armor_trims_array = {}
  +
for _,smithing_template in pairs(smithing_templates) do
  +
local current_alias = {
  +
title = '鍛冶型',
  +
name = smithing_template[1] .. ' Smithing Template',
  +
text = '&7' .. smithing_template[2] .. '//適用先:/ &9' .. smithing_template[3] .. '/&7材料:/ &9' .. smithing_template[4],
  +
}
  +
aliases[smithing_template[1]] = current_alias
  +
aliases[smithing_template[1] .. ' Smithing Template'] = current_alias
  +
table.insert(smithing_template_array,current_alias)
  +
if string.find(smithing_template[1],' Armor Trim$') then
  +
table.insert(armor_trims_array,current_alias)
  +
end
 
end
 
end
  +
aliases['Matching Smithing Template'] = smithing_template_array
  +
aliases['Any Smithing Template'] = smithing_template_array
  +
aliases['Matching Armor Trim'] = armor_trims_array
  +
aliases['Any Armor Trim'] = armor_trims_array
  +
aliases['Matching Armor Trim Smithing Template'] = armor_trims_array
  +
aliases['Any Armor Trim Smithing Template'] = armor_trims_array
   
 
return aliases
 
return aliases

2023年12月5日 (火) 19:06時点における最新版

この表は、モジュール:Inventory slotで使用されるエイリアスを定義します。

[閲覧 | 編集 | 履歴 | キャッシュ破棄]上記の解説は、モジュール:Inventory slot/Aliases/docから参照されています。
local coloredDyes = {
	'Orange Dye', 'Magenta Dye', 'Light Blue Dye', 'Yellow Dye', 'Lime Dye',
	'Pink Dye', 'Gray Dye', 'Light Gray Dye', 'Cyan Dye', 'Purple Dye',
	'Blue Dye', 'Brown Dye', 'Green Dye',
	'Red Dye', 'Black Dye',
}
local aliases = {
	-- Common fuel types for furnace --
	['Any fuel'] = { 'Coal', 'Charcoal', { title = '原木', name = 'Oak Log' }, { title = 'オーバーワールドの板材', name = 'Oak Planks' }, 'Block of Coal' },
	['Any leather armor'] = { 'Leather Cap', 'Leather Tunic', 'Leather Pants', 'Leather Boots' },
	['Any golden armor'] = { 'Golden Helmet', 'Golden Chestplate', 'Golden Leggings', 'Golden Boots' },
	['Any chainmail armor'] = { 'Chainmail Helmet', 'Chainmail Chestplate', 'Chainmail Leggings', 'Chainmail Boots' },
	['Any iron armor'] = { 'Iron Helmet', 'Iron Chestplate', 'Iron Leggings', 'Iron Boots' },
	['Any diamond armor'] = { 'Diamond Helmet', 'Diamond Chestplate', 'Diamond Leggings', 'Diamond Boots' },
	['Any netherite armor'] = { 'Netherite Helmet', 'Netherite Chestplate', 'Netherite Leggings', 'Netherite Boots' },
	['Any Pottery Sherd'] = { 'Angler Pottery Sherd', 'Arms Up Pottery Sherd', 'Archer Pottery Sherd', 'Blade Pottery Sherd', 'Brewer Pottery Sherd', 'Burn Pottery Sherd', 'Danger Pottery Sherd', 'Explorer Pottery Sherd', 'Friend Pottery Sherd', 'Heart Pottery Sherd', 'Heartbreak Pottery Sherd', 'Howl Pottery Sherd', 'Miner Pottery Sherd', 'Mourner Pottery Sherd', 'Plenty Pottery Sherd', 'Prize Pottery Sherd', 'Sheaf Pottery Sherd', 'Shelter Pottery Sherd', 'Skull Pottery Sherd', 'Snort Pottery Sherd', 'Brick' },
	
	-- stones --
	['Any Cobblestone or Blackstone'] = { 'Cobblestone', 'Blackstone' },
	['Any stone-tier block'] = { 'Cobblestone', 'Blackstone', 'Cobbled Deepslate' },

	-- Display names --
	['Broken Elytra'] = { title = '&eエリトラ', name = 'Broken Elytra' },
	['Clay (block)'] = { title = '粘土', name = 'Clay (block)' }, --remove on Nether Update's release if bedrock also changes the item name
	['Clay (ball)'] = { title = '粘土', name = 'Clay (ball)' }, --remove on Nether Update's release if bedrock also changes the item name
	['Banner Pattern Flower'] = { title = '旗の模様', name = 'Banner Pattern', text = '&7花模様'},
	['Banner Pattern Flower Charge'] = { title = '旗の模様', name = 'Banner Pattern', text = '&7花模様'},
	['Banner Pattern Creeper Charge'] = { title = '&e旗の模様', name = 'Banner Pattern', text = '&7クリーパー模様'},
	['Banner Pattern Creeper'] = { title = '&e旗の模様', name = 'Banner Pattern', text = '&7クリーパー模様'},
	['Banner Pattern Bordure Indented'] = { title = '旗の模様', name = 'Banner Pattern', text = '&7波形の縁取り'},
	['Banner Pattern Field Masoned'] = { title = '旗の模様', name = 'Banner Pattern', text = '&7レンガ模様'},
	['Banner Pattern Skull Charge'] = { title = '&e旗の模様', name = 'Banner Pattern', text = '&7骸骨模様'},
	['Banner Pattern Skull'] = { title = '&e旗の模様', name = 'Banner Pattern', text = '&7骸骨模様'},
	['Banner Pattern Thing'] = { title = '&d旗の模様', name = 'Banner Pattern', text = '&7何かの模様'},
	['Banner Pattern Mojang'] = { title = '&d旗の模様', name = 'Banner Pattern', text = '&7何かの模様'},
	['Banner Pattern Globe'] = { title = '旗の模様', name = 'Banner Pattern', text = '&7地球の模様'},
	['Banner Pattern Snout'] = { title = '旗の模様', name = 'Banner Pattern', text = '&7ブタの鼻の模様'},
	['Banner Pattern Piglin'] = { title = '旗の模様', name = 'Banner Pattern', text = '&7ブタの鼻の模様'},
	['Button'] = { title = 'ボタン', name = 'Stone Button'},
	['Wooden Button'] = { title = 'ボタン', name = 'Oak Button'},
	['Arrow Loaded Crossbow'] = { title = 'クロスボウ', name = 'Arrow Loaded Crossbow' },
	['Damaged Arrow Loaded Crossbow'] = { title = 'クロスボウ', name = 'Damaged Arrow Loaded Crossbow' },
	['Firework Loaded Crossbow'] = { title = 'クロスボウ', name = 'Firework Loaded Crossbow' },
	['Damaged Firework Loaded Crossbow'] = { title = 'クロスボウ', name = 'Damaged Firework Loaded Crossbow' },
	['Illager Banner'] = { title = '&6&o不吉な旗', name = 'Illager Banner', text = 
		'&7青緑色の菱形/&7下に薄灰色の横帯/&7灰色の縦帯/&7薄灰色の縁取り/&7黒色の横帯/&7上に薄灰色の横二分割'},
	['Half Filled Bundle'] = { title = 'バンドル', name = 'Half Filled Bundle' },
	['Filled Bundle'] = { title = 'バンドル', name = 'Filled Bundle' },

	-- Weapons --
	['Trident'] = { name = 'Trident', text = '/&7利き手に持ったとき:/ &2 攻撃速度 1.1/ &2 攻撃力 9'},
	['Trident BE'] = { name = 'Trident', text = '/&9 +8 攻撃力'},

	-- Bedrock and Education Edition display names --
	['Elytra Wings'] = { title = 'エリトラ', name = 'Elytra' },
	['Cooked Beef'] = { title = '調理された牛肉', name = 'Steak' },
	['Map (no markers)'] = { title = '地図', name = 'Map', text = 'マーカーを表示:&cいいえ' },
	['Locator Map'] = { title = '地図', name = 'Map', text = 'マーカーを表示:&aはい' },

	-- Chemistry --
	['Lead (element)'] = { title = '鉛', name = 'Lead (element)' },
	['Water (compound)'] = { title = '水', 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' },
}

local Autolink = require( 'モジュール:Autolink' )

-- Tooltip colors --
local yellowTooltips = {
	'Creeper Head',
	'Damaged Elytra',
	'Dragon Head',
	'Dragon\'s Breath',
	'Elytra',
	'Head',
	'Heart of the Sea',
	'Piglin Head',
	'Player Head',
	'Skeleton Skull',
	'Totem of Undying',
	'Wither Skeleton Skull',
	'Zombie Head',
}
for _, name in ipairs( yellowTooltips ) do
	aliases[name] = { title = '&e' .. Autolink.invlink(name, 'nolink'), name = name }
end

local aquaTooltips = {
	'Beacon',
	'Conduit',
	'Golden Apple',
}
for _, name in ipairs( aquaTooltips ) do
	aliases[name] = { title = '&b' .. Autolink.invlink(name, 'nolink'), name = name }
end

local lightPurpleTooltips = {
	'Dragon Egg',
	'Structure Block',
	'Structure Void',
	'Jigsaw Block',
	'Barrier',
}
for _, name in ipairs( lightPurpleTooltips ) do
	aliases[name] = { title = '&d' .. Autolink.invlink(name, 'nolink'), name = name }
end

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

-- Animated icons --
local animatedIcons = {
	'Blue Key',
	'Bubble Column',
	'Calibrated Sculk Sensor',
	'Compass',
	'Clock',
	'Crimson Hyphae',
	'Crimson Stem',
	'Debug Stick',
	'Fire',
	'Gear',
	'Heat Block',
	'Lava',
	'Lodestone Compass',
	'Magma Block',
	'Magma Block BE',
	'Nether Portal',
	'Prismarine',
	'Prismarine Slab',
	'Prismarine Stairs',
	'Prismarine Wall',
	'Recovery Compass',
	'Red Key',
	'Sea Lantern',
	'Stonecutter',
	'Soul Fire',
	'Sculk',
	'Sculk Shrieker';
	'Sculk Shrieker BE',
	'Sculk Sensor',
	'Sculk Sensor BE',
	'Sculk Vein',
	'Warped Hyphae',
	'Warped Stem',
	'Water',
	'Written Book',
	'Yellow Key'
}
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 = {
	{'Wooden', 'Sword', 1.6, 4, '木の剣' },
	{'Stone', 'Sword', 1.6, 5, '石の剣' },
	{'Iron', 'Sword', 1.6, 6, '鉄の剣' },
	{'Golden', 'Sword', 1.6, 4, '金の剣' },
	{'Diamond', 'Sword', 1.6, 7, 'ダイヤモンドの剣' },
	{'Netherite', 'Sword', 1.6, 8, 'ネザライトの剣' },
	
	{'Wooden', 'Pickaxe', 1.2, 2, '木のツルハシ' },
	{'Stone', 'Pickaxe', 1.2, 3, '石のツルハシ' },
	{'Iron', 'Pickaxe', 1.2, 4, '鉄のツルハシ' },
	{'Golden', 'Pickaxe', 1.2, 2, '金のツルハシ' },
	{'Diamond', 'Pickaxe', 1.2, 5, 'ダイヤモンドのツルハシ' },
	{'Netherite', 'Pickaxe', 1.2, 6, 'ネザライトのツルハシ' },
	
	{'Wooden', 'Axe', 0.8, 7, '木の斧' },
	{'Stone', 'Axe', 0.8, 9, '石の斧' },
	{'Iron', 'Axe', 0.9, 9, '鉄の斧' },
	{'Golden', 'Axe', 1, 7, '金の斧' },
	{'Diamond', 'Axe', 1, 9, 'ダイヤモンドの斧' },
	{'Netherite', 'Axe', 1, 10, 'ネザライトの斧' },
	
	{'Wooden', 'Shovel', 1, 2.5, '木のシャベル' },
	{'Stone', 'Shovel', 1, 3.5, '石のシャベル' },
	{'Iron', 'Shovel', 1, 4.5, '鉄のシャベル' },
	{'Golden', 'Shovel', 1, 2.5, '金のシャベル' },
	{'Diamond', 'Shovel', 1, 5.5, 'ダイヤモンドのシャベル' },
	{'Netherite', 'Shovel', 1.6, 6.5, 'ネザライトのシャベル' },
	
	{'Wooden', 'Hoe', 1, 1, '木のクワ' },
	{'Stone', 'Hoe', 2, 1, '石のクワ' },
	{'Iron', 'Hoe', 3, 1, '鉄のクワ' },
	{'Golden', 'Hoe', 1, 1, '金のクワ' },
	{'Diamond', 'Hoe', 4, 1, 'ダイヤモンドのクワ' },
	{'Netherite', 'Hoe', 4, 1, 'ネザライトのクワ' }
}

local materialGroups = {}
local toolGroups = {}

for _, toolProps in ipairs( tools ) do
	local aliasName = toolProps[1] .. ' ' .. toolProps[2]
	local damagedName = 'Damaged ' .. aliasName
	local text = '/&7利き手に持ったとき:/ &2 攻撃速度 ' .. toolProps[3] .. '/ &2 攻撃力 ' .. toolProps[4]
	aliases[aliasName] = { title = toolProps[5], name = aliasName, text = text }
	-- add damaged here as well so it gets the proper tooltip
	aliases[damagedName] = { title = toolProps[5], name = damagedName, text = text }
	
	local materialGroup = toolProps[1]:lower();
	local toolGroup = toolProps[2]:lower();
	
	if toolProps[2] ~= 'Sword' then
		if materialGroups[materialGroup] == nil then materialGroups[materialGroup] = {} end
		table.insert( materialGroups[materialGroup], aliases[aliasName] )
	end
	if toolGroups[toolGroup] == nil then toolGroups[toolGroup] = {} end
	table.insert( toolGroups[toolGroup], aliases[aliasName] )
end

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

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

-- 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 = toolProps[4], name = aliasName, text = '/&9+' .. toolProps[3] .. ' 攻撃力'}
end

-- Lists of item variants --
local itemVariants = {
	['Dye'] = mw.clone( coloredDyes ),
	['Colored Dye'] = coloredDyes,
	['Dyed Wool'] = {
		'Orange Wool', 'Magenta Wool', 'Light Blue Wool', 'Yellow Wool', 'Lime Wool',
		'Pink Wool', 'Gray Wool', 'Light Gray Wool', 'Cyan Wool', 'Purple Wool',
		'Blue Wool', 'Brown Wool', 'Green Wool', 'Red Wool', 'Black Wool',
	},
	['Dyed Bed'] = {
		'Orange Bed', 'Magenta Bed', 'Light Blue Bed', 'Yellow Bed', 'Lime Bed',
		'Pink Bed', 'Gray Bed', 'Light Gray Bed', 'Cyan Bed', 'Purple Bed',
		'Blue Bed', 'Brown Bed', 'Green Bed', 'Red Bed', 'Black Bed',
	},
	['Dyed Carpet'] = {
		'Orange Carpet', 'Magenta Carpet', 'Light Blue Carpet', 'Yellow Carpet', 'Lime Carpet',
		'Pink Carpet', 'Gray Carpet', 'Light Gray Carpet', 'Cyan Carpet', 'Purple Carpet',
		'Blue Carpet', 'Brown Carpet', 'Green Carpet', 'Red Carpet', 'Black Carpet',
	},
	['Dyed Terracotta'] = {
		'White Terracotta', 'Orange Terracotta', 'Magenta Terracotta', 'Light Blue Terracotta',
		'Yellow Terracotta', 'Lime Terracotta', 'Pink Terracotta', 'Gray Terracotta',
		'Light Gray Terracotta', 'Cyan Terracotta', 'Purple Terracotta', 'Blue Terracotta',
		'Brown Terracotta', 'Green Terracotta', 'Red Terracotta', 'Black Terracotta',
	},
	['Dyed Candle'] = {
		'White Candle', 'Orange Candle', 'Magenta Candle', 'Light Blue Candle',
		'Yellow Candle', 'Lime Candle', 'Pink Candle', 'Gray Candle',
		'Light Gray Candle', 'Cyan Candle', 'Purple Candle', 'Blue Candle',
		'Brown Candle', 'Green Candle', 'Red Candle', 'Black Candle',
	},
	['Flower'] = { 'Oxeye Daisy', 'Cornflower', 'Lily of the Valley', 'Wither Rose', 'Red Tulip', 'Orange Tulip', 'White Tulip', 'Pink Tulip', 'Azure Bluet', 'Allium', 'Blue Orchid', 'Poppy', 'Dandelion', 'Torchflower' },
	['Mushroom'] = { 'Red Mushroom', 'Brown Mushroom' },
	['Quartz Block'] = { 'Block of Quartz', 'Chiseled Quartz Block', 'Quartz Pillar' },
	['Red Sandstone'] = { 'Red Sandstone', 'Cut Red Sandstone', 'Chiseled Red Sandstone', 'Smooth Red Sandstone' },
	['Sandstone'] = { 'Sandstone', 'Cut Sandstone', 'Chiseled Sandstone', 'Smooth Sandstone' },
	['Stone Bricks'] = { 'Stone Bricks', 'Mossy Stone Bricks', 'Cracked Stone Bricks', 'Chiseled Stone Bricks' },
	['Stone Slab'] = { 'Stone Slab', 'Smooth Stone Slab', 'Cobblestone Slab', 'Mossy Cobblestone Slab', 'Stone Brick Slab', 'Mossy Stone Brick Slab', 'Andesite Slab', 'Polished Andesite Slab',
		'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', 
		'Smooth Red Sandstone Slab', 'Brick Slab', { title = 'Prismarine Slab', name = 'Prismarine Slab.gif' }, 'Prismarine Brick Slab', 'Dark Prismarine Slab', 'Nether Brick Slab', 'Red Nether Brick Slab', 'Quartz Slab', 
		'Smooth Quartz Slab', 'Purpur Slab', 'End Stone Brick Slab', 'Petrified Oak Slab', 'Blackstone Slab', 'Polished Blackstone Slab', 'Polished Blackstone Brick Slab', 'Cobbled Deepslate Slab', 'Deepslate Brick Slab', 
		'Deepslate Tile Slab', 'Polished Deepslate Slab' },
	['Stone Stairs'] = { 'Stone Stairs', 'Cobblestone Stairs', 'Mossy Cobblestone Stairs', 'Stone Brick Stairs', 'Mossy Stone Brick Stairs', 'Andesite Stairs', 'Polished Andesite Stairs', 
		'Diorite Stairs', 'Polished Diorite Stairs', 'Granite Stairs', 'Polished Granite Stairs', 'Sandstone Stairs', 'Smooth Sandstone Stairs', 'Red Sandstone Stairs', 'Smooth Red Sandstone Stairs', 
		'Brick Stairs', { title = 'Prismarine Stairs', name = 'Prismarine Stairs.gif' }, 'Prismarine Brick Stairs', 'Dark Prismarine Stairs', 'Nether Brick Stairs', 'Red Nether Brick Stairs', 'Quartz Stairs', 'Smooth Quartz Stairs', 'Purpur Stairs', 
		'End Stone Brick Stairs', 'Blackstone Stairs', 'Polished Blackstone Stairs', 'Polished Blackstone Brick Stairs', 'Cobbled Deepslate Stairs', 'Deepslate Brick Stairs', 'Deepslate Tile Stairs', 
		'Polished Deepslate Stairs' },
	['Purpur Block'] = { 'Purpur Block', 'Purpur Pillar' },
	['Stone'] = { 'Stone', 'Andesite', 'Granite', 'Diorite', 'Polished Andesite', 'Polished Granite', 'Polished Diorite' },
	['Tulip'] = { 'Red Tulip', 'Orange Tulip', 'White Tulip', 'Pink Tulip' },
	['Prismarine'] = { { title = 'Prismarine', name = 'Prismarine.gif' }, 'Prismarine Bricks', 'Dark Prismarine' },
	['Ore'] = { 'Coal Ore', 'Iron Ore', 'Gold Ore', 'Lapis Lazuli Ore', 'Redstone Ore', 'Emerald Ore', 'Diamond Ore', 'Nether Quartz Ore', 'Nether Gold Ore', 'Deepslate Coal Ore', 
		'Deepslate Copper Ore', 'Deepslate Emerald Ore', 'Deepslate Iron Ore', 'Deepslate Gold Ore', 'Deepslate Lapis Lazuli Ore', 'Deepslate Redstone Ore', 'Deepslate Diamond Ore'},
	['Dead Coral Block'] = { 'Dead Tube Coral Block', 'Dead Brain Coral Block', 'Dead Bubble Coral Block', 'Dead Fire Coral Block', 'Dead Horn Coral Block' },
	['Coral Block'] = { 'Tube Coral Block', 'Brain Coral Block', 'Bubble Coral Block', 'Fire Coral Block', 'Horn Coral Block' },
	['Dead Coral'] = { 'Dead Tube Coral', 'Dead Brain Coral', 'Dead Bubble Coral', 'Dead Fire Coral', 'Dead Horn Coral' },
	['Dead Coral Fan'] = { 'Dead Tube Coral Fan', 'Dead Brain Coral Fan', 'Dead Bubble Coral Fan', 'Dead Fire Coral Fan', 'Dead Horn Coral Fan' },
	['Coral'] = { 'Tube Coral', 'Brain Coral', 'Bubble Coral', 'Fire Coral', 'Horn Coral' },
	['Coral Fan'] = { 'Tube Coral Fan', 'Brain Coral Fan', 'Bubble Coral Fan', 'Fire Coral Fan', 'Horn Coral Fan' },
	['Wall'] = { 'Cobblestone Wall', 'Mossy Cobblestone Wall', 'Stone Brick Wall', 'Mossy Stone Brick Wall', 'Andesite Wall', 'Diorite Wall', 'Granite Wall', 'Sandstone Wall', 
		'Red Sandstone Wall', 'Brick Wall', { title = 'Prismarine Wall', name = 'Prismarine Wall.gif' }, 'Nether Brick Wall', 'Red Nether Brick Wall', 'End Stone Brick Wall', 'Blackstone Wall', 'Polished Blackstone Wall', 
		'Polished Blackstone Brick Wall', 'Cobbled Deepslate Wall', 'Deepslate Brick Wall', 'Deepslate Tile Wall', 'Polished Deepslate Wall' },
	['Torch'] = { 'Torch', 'Soul Torch' },
	['Lantern'] = { 'Lantern', 'Soul Lantern' },
	['Fungus'] = { 'Crimson Fungus', 'Warped Fungus' },
	['Fungi'] = { 'Crimson Fungus', 'Warped Fungus' },
	['Roots'] = { 'Crimson Roots', 'Warped Roots' },
	['Nylium'] = { 'Crimson Nylium', 'Warped Nylium' },
	['Soul Sand'] = { 'Soul Sand', 'Soul Soil' },
	['Campfire'] = { 'Campfire', 'Soul Campfire' },
	['Blackstone'] = { 'Blackstone', 'Polished Blackstone', 'Chiseled Polished Blackstone', 'Polished Blackstone Bricks', 'Cracked Polished Blackstone Bricks' },
	['Stone Button'] = { 'Stone Button', 'Polished Blackstone Button' },
	['Stone Pressure Plate'] = { 'Stone Pressure Plate', 'Polished Blackstone Pressure Plate' },
	['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' },
	['Candle'] = { 'Candle', 'White Candle', 'Orange Candle', 'Magenta Candle', 'Light Blue Candle', 'Yellow Candle', 'Lime Candle', 'Pink Candle', 'Gray Candle', 'Light Gray Candle', 
		'Cyan Candle', 'Purple Candle', 'Blue Candle', 'Brown Candle', 'Green Candle', 'Red Candle', 'Black Candle' },
	['Copper Block'] = { 'Copper Block', 'Exposed Copper Block', 'Weathered Copper Block', 'Oxidized Copper Block', 'Waxed Copper Block', 'Waxed Exposed Copper Block', 'Waxed Weathered Copper Block' },
	['Cut Copper'] = { 'Cut Copper', 'Exposed Cut Copper', 'Weathered Cut Copper', 'Oxidized Cut Copper', 'Waxed Cut Copper', 'Waxed Exposed Cut Copper', 'Waxed Weathered Cut Copper' },
	['Cut Copper Stairs'] = { 'Cut Copper Stairs', 'Exposed Cut Copper Stairs', 'Weathered Cut Copper Stairs', 'Oxidized Cut Copper Stairs', 'Waxed Cut Copper Stairs', 
		'Waxed Exposed Cut Copper Stairs', 'Waxed Weathered Cut Copper Stairs' },
	['Cut Copper Slab'] = { 'Cut Copper Slab', 'Exposed Cut Copper Slab', 'Weathered Cut Copper Slab', 'Oxidized Cut Copper Slab', 'Waxed Cut Copper Slab', 'Waxed Exposed Cut Copper Slab',
		'Waxed Weathered Cut Copper Slab' },
}
table.insert( itemVariants['Dye'], 1, 'White Dye' )
for aliasName, aliasItems in pairs( itemVariants ) do
	aliases['Any ' .. aliasName] = aliasItems
	aliases['Matching ' .. aliasName] = 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'      },
	{ 'Otherside', 'Lena Raine',   'otherside' },
	{ 'Pigstep',   'Lena Raine',               },
	{ '5',         'Samuel Åberg',             },
	{ 'Relic',     'Aaron Cherof',             },
}
for _, disc in ipairs( discs ) do
	local name = 'Music Disc ' .. disc[1]
	local artist = disc[2]
	local trackname = disc[1]
	if disc[3] ~= nil then
		trackname = disc[3]
	end
	aliases[name] = { title = '&bレコード', name = name, text = '&7' .. artist .. ' - ' .. trackname }
end

-- Disc Fragments --
local disc_fragments = { 
	{ '5',    },
}
for _, disc_fragment in ipairs( disc_fragments ) do
	local name = 'Disc Fragment ' .. disc_fragment[1]
	local trackname = disc_fragment[1]
	if disc_fragment[2] ~= nil then
		trackname = disc_fragment[2]
	end
	aliases[name] = { title = '&fレコードの破片', name = name, text = '&7レコード - ' .. trackname }
end

-- Damaged armor, note it skips tools and weapons as they are handled above to add the damage tooltip --
local damagedItems = {
	'Bow',
	'Brush',
	'Carrot on a Stick',
	'Chainmail Boots',
	'Chainmail Chestplate',
	'Chainmail Helmet',
	'Chainmail Leggings',
	'Crossbow',
	'Diamond Boots',
	'Diamond Chestplate',
	'Diamond Helmet',
	'Diamond Leggings',
	'Elytra',
	'Fishing Rod',
	'Flint and Steel',
	'Golden Boots',
	'Golden Chestplate',
	'Golden Helmet',
	'Golden Leggings',
	'Iron Boots',
	'Iron Chestplate',
	'Iron Helmet',
	'Iron Leggings',
	'Leather Boots',
	'Leather Tunic',
	'Leather Cap',
	'Leather Pants',
	'Netherite Boots',
	'Netherite Chestplate',
	'Netherite Helmet',
	'Netherite Leggings',
	'Shears',
	'Shield'
}
for _, item in ipairs( damagedItems ) do
	local name = 'Damaged ' .. item
	aliases[name] = { title = Autolink.invlink(item, 'nolink'), name = name }
end

-- Banners and colored items --
local patterns = {
	'Base Dexter Canton',
	'Base',
	'Base Gradient',
	'Base Indented',
	'Base Sinister Canton',
	'Bend',
	'Bend Sinister',
	'Bordure',
	'Bordure Indented',
	'Chevron',
	'Chief Dexter Canton',
	'Chief',
	'Chief Indented',
	'Chief Sinister Canton',
	'Creeper Charge',
	'Cross',
	'Fess',
	'Field Masoned',
	'Flower Charge',
	'Globe',
	'Gradient',
	'Inverted Chevron',
	'Lozenge',
	'Thing',
	'Pale',
	'Pale Dexter',
	'Pale Sinister',
	'Paly',
	'Per Bend',
	'Per Bend Inverted',
	'Per Bend Sinister',
	'Per Bend Sinister Inverted',
	'Per Fess',
	'Per Fess Inverted',
	'Per Pale',
	'Per Pale Inverted',
	'Piglin',
	'Snout',
	'Roundel',
	'Saltire',
	'Skull Charge'
}
-- 日本語対応版 --
local patterns_ja = {
	'左下隅に$1の方形',
	'下端に$1の横帯',
	'下に$1のグラデーション',
	'下端に$1の上向き山形波',
	'右下隅に$1の方形',
	'右下向きに$1の斜め帯',
	'左下向きに$1の斜め帯',
	'$1の縁取り',
	'$1の山形波の縁取り',
	'下半に$1の上向き山形',
	'左上隅に$1の方形',
	'上端に$1の横帯',
	'上端に$1の下向き山形波',
	'右上隅に$1の方形',
	'$1のクリーパー模様',
	'$1の十字',
	'中央に$1の横帯',
	'$1のレンガ模様',
	'$1の花模様',
	'$1の地球の模様',
	'上に$1のグラデーション',
	'上半に$1の下向き山形',
	'$1の菱形',
	'$1の何かの模様',
	'中央に$1の縦帯',
	'左端に$1の縦帯',
	'右端に$1の縦帯',
	'$1の縦縞',
	'右上半に$1の斜め分割',
	'左下半に$1の斜め分割',
	'左上半に$1の斜め分割',
	'右下半に$1の斜め分割',
	'上半に$1の横分割',
	'下半に$1の横分割',
	'左半に$1の縦分割',
	'右半に$1の縦分割',
	'$1のブタの鼻の模様',
	'$1のブタの鼻の模様',
	'$1の円形',
	'$1の斜め十字',
	'$1の骸骨模様'
}
local colors = {
	'White',
	'Orange',
	'Magenta',
	'Light Blue',
	'Yellow',
	'Lime',
	'Pink',
	'Gray',
	'Light Gray',
	'Cyan',
	'Purple',
	'Blue',
	'Brown',
	'Green',
	'Red',
	'Black'
}
local colorc = {
	'白色',
	'橙色',
	'赤紫色',
	'空色',
	'黄色',
	'黄緑色',
	'桃色',
	'灰色',
	'薄灰色',
	'青緑色',
	'紫色',
	'青色',
	'茶色',
	'緑色',
	'赤色',
	'黒色',
}

-- Firework Stars --
-- 英語版から改変しているので更新の際は注意 --
local fireworkStar = {}
for i, color in ipairs( colors ) do
	local name = color .. ' Firework Star'
	aliases[name] = { title = '花火の星', name = name, text = '&7' .. colorc[i] }
	table.insert( fireworkStar, aliases[name] )
	for _, pattern in ipairs( patterns ) do
		name = color .. ' ' .. pattern .. ' Banner'
		local text = ''
		if patterns_ja[_]:find( '%$1' ) then
			text = string.gsub( patterns_ja[_], '%$1', colorc[i] )
		end
		aliases[name] = { title = '旗', name = name, text = '&7' .. text }
	end
end
aliases['Any Firework Star'] = fireworkStar
aliases['Matching Firework Star'] = fireworkStar

-- Items that use the sixteen colors --
local coloredItems = {
	'Balloon',
	'Banner',
	'Bed',
	'Carpet',
	'Concrete',
	'Concrete Powder',
	'Glazed Terracotta',
	'Hardened $1 Stained Glass',
	'Hardened $1 Stained Glass Pane',
	'Shield',
	'Shulker Box',
	'Stained Glass',
	'Stained Glass Pane',
	'Wool'
}
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 = color .. ' ' .. item
		end
		table.insert( coloredItemAliases, itemName )
	end
	
	item = item:gsub( '%$1 ', '')
	aliases['Any ' .. item] = coloredItemAliases
	aliases['Matching ' .. item] = coloredItemAliases
end
-- list of all potions with no effects
local noEffects = {
	'Water Bottle',
	'Awkward Potion',
	'Thick Potion',
	'Mundane Potion',
	'Uncraftable Potion',
	'Splash Water Bottle',
	'Awkward Splash Potion',
	'Thick Splash Potion',
	'Mundane Splash Potion',
	'Uncraftable Splash Potion',
	'Lingering Water Bottle',
	'Awkward Lingering Potion',
	'Thick Lingering Potion',
	'Mundane Lingering Potion',
	'Uncraftable Lingering Potion',
	'Tipped Arrow',
	'Arrow of Splashing',
	'Uncraftable Tipped Arrow',
}
for _, name in ipairs(noEffects) do
	aliases[name] = { name = name, text = '&7効果なし' }
end

-- start these lists with the no effect items as names are not normal
local potionItems = {
	['Potion'] = {
		aliases['Water Bottle'],
		aliases['Awkward Potion'],
		aliases['Thick Potion'],
		aliases['Mundane Potion'],
	},
	['Splash Potion'] = {
		aliases['Splash Water Bottle'],
		aliases['Awkward Splash Potion'],
		aliases['Thick Splash Potion'],
		aliases['Mundane Splash Potion'],
	},
	['Lingering Potion'] = {
		aliases['Lingering Water Bottle'],
		aliases['Awkward Lingering Potion'],
		aliases['Thick Lingering Potion'],
		aliases['Mundane Lingering Potion'],
	},
	['Tipped Arrow'] = {
		aliases['Arrow of Splashing'],
		aliases['Tipped Arrow'],
		aliases['Tipped Arrow'],
		aliases['Tipped Arrow'],
	},
}

-- Potions --
local effects = {
	-- durations are in the order normal, extended, enhanced
	{name = 'Regeneration', effect = '&9再生能力', 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 = 'Swiftness', effect = '&9移動速度', 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 = 'Fire Resistance', effect = '&9火炎耐性', durations = { normal = { '3:00', '8:00' }, lingering = { '0:45', '2:00' }, arrow = { '0:22', '1:00' }}},
	{ name = 'Poison', effect = '&c毒', 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 = 'Healing', effect = '&9即時回復', enhanced = 'II' },
	{ name = 'Night Vision',    effect = '&9暗視',    durations = { normal = { '3:00', '8:00' }, lingering = { '0:45', '2:00' }, arrow = { '0:22', '1:00' }}},
	{ name = 'Weakness',        effect = '&c弱体化',        durations = { normal = { '1:30', '4:00' }, lingering = { '0:22', '1:00' }, arrow = { '0:11', '0:30' }}},
	{ name = 'Strength', effect = '&9攻撃力上昇', 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 = 'Slowness', effect = '&c移動速度低下', 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 = 'Leaping', effect = '&9跳躍力上昇', 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 = 'Harming', effect = '&c即時ダメージ', enhanced = 'II' },
	{ name = 'Water Breathing', effect = '&9水中呼吸', durations = { normal = { '3:00', '8:00' }, lingering = { '0:45', '2:00' }, arrow = { '0:22', '1:00' }}},
	{ name = 'Invisibility',    effect = '&9透明化',    durations = { normal = { '3:00', '8:00' }, lingering = { '0:45', '2:00' }, arrow = { '0:22', '1:00' }}},
	{ name = 'Slow Falling',    effect = '&9落下速度低下',    durations = { normal = { '1:30', '4:00' }, lingering = { '0:22', '1:00' }, arrow = { '0:11', '0:30' }}},
	{ name = 'Luck',  effect = '&9幸運',   durations = { normal = { '5:00' }, lingering = { '1:15' }, arrow = { '0:37' }}},
	{ name = 'Decay', effect = '&c衰弱', durations = { normal = { '0:40' }, lingering = { '0:10' }, arrow = { '0:05' }}},
	{ name = 'the Turtle Master', text = '&c移動速度低下 IV ($1)/&9耐性 III ($1)', enhanced = '&c移動速度低下 VI ($1)/&9耐性 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 = 'Potion',           durations = 'normal',    text = 'Potion of '},
	{name = 'Splash Potion',    durations = 'normal',    text = 'Splash Potion of '},
	{name = 'Lingering Potion', durations = 'lingering', text = 'Lingering Potion of '},
	{name = 'Tipped Arrow',     durations = 'arrow',     text = 'Arrow of '},
}

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 = type.text .. effect.name
		
		-- 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 .. ' Extended'] = { name = potionName, text = effect.text:gsub( '%$1', durations[2] ) }
				aliases[name .. ' Enhanced'] = { 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 .. ' Extended'] = { 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 .. ' Enhanced'] = { 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 .. ' Enhanced'] = { 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['Any ' .. item] = potionAliases
	aliases['Matching ' .. item] = potionAliases
end

-- Wood --
local woodTypes = {
	overworld = {
		'Oak',
		'Spruce',
		'Birch',
		'Jungle',
		'Acacia',
		'Dark Oak',
		'Mangrove',
		'Cherry',
		'Bamboo',
	},
	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 = {
		'Wood',
		'Log',
		'Boat',
		'Boat with Chest',
		'Stripped $1 Log',
		'Stripped $1 Wood',
		'Wood Planks',
		'Wood Slab',
		'Wood Stairs',
		'Wood Pressure Plate',
		'Wood Button',
		'Wood Door',
		'Wood Trapdoor',
		'Wood Fence Gate',
		'Wood Fence',
		'Wood Sign',
		'Sapling',
	},
	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',
		'$world Hanging Sign',
		'$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

local woodBadItems = {
	['Bamboo Hanging Sign'] = 1,
	['Bamboo Sapling'] = 1,
	['Bamboo Wood'] = 1,
	['Bamboo Log'] = 1,
	['Stripped Bamboo Wood'] = 1,
	['Stripped Bamboo Log'] = 1,
}

local woodNameMapping = {
	['Mangrove Sapling'] = 'Mangrove Propagule',
	['Bamboo Boat'] = 'Bamboo Raft',
	['Bamboo Boat with Chest'] = 'Bamboo Raft with Chest',
}

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 = wood .. ' ' .. itemName
		end
		
		-- special handling
		if woodNameMapping[itemName] then
			itemName = woodNameMapping[itemName]
		end

		if not woodBadItems[itemName] then
			table.insert(woodAliases, itemName)
		end
	end

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

-- Bedrock Edition Items --
local editionItems = {
	BE = {
		'Acacia Fence Gate',
		'Beacon',
		'Birch Fence Gate',
		'Black Stained Glass Pane',
		'Blue Ice',
		'Blue Stained Glass Pane',
		'Bow',
		'Brown Stained Glass Pane',
		'Bucket of Pufferfish',
		'Bucket of Tropical Fish',
		'Chest',
		'Conduit',
		'Creeper Head',
		'Crimson Fence Gate',
		'Crying Obsidian',
		'Cyan Stained Glass Pane',
		'Dark Oak Fence Gate',
		'Dragon Egg',
		'Dragon Head',
		'Enchanting Table',
		'End Gateway',
		'End Portal Frame',
		'End Portal',
		'End Rod',
		'Ender Chest',
		'Flowing Lava',
		'Glass Pane',
		'Glowstone',
		'Gray Stained Glass Pane',
		'Green Stained Glass Pane',
		'Head',
		'Honey Block',
		'Horn Coral Block',
		'Iron Bars',
		'Jack o\'Lantern',
		'Jigsaw Block',
		'Jungle Fence Gate',
		'Jungle Leaves',
		'Lava',
		'Leather Horse Armor',
		'Light Blue Stained Glass Pane',
		'Light Gray Stained Glass Pane',
		'Lime Stained Glass Pane',
		'Magenta Stained Glass Pane',
		'Magma Block',
		'Map',
		'Minecart with Command Block',
		'Monster Spawner',
		'Oak Fence Gate',
		'Observer',
		'Ocean Explorer Map',
		'Orange Stained Glass Pane',
		'Peony',
		'Pink Stained Glass Pane',
		'Purple Stained Glass Pane',
		'Red Stained Glass Pane',
		'Rose Bush',
		'Scaffolding',
		'Sea Lantern',
		'Shroomlight',
		'Skeleton Skull',
		'Spawn Cat',
		'Spawn Panda',
		'Spawn Wandering Trader',
		'Spawner',
		'Spruce Fence Gate',
		'Stonecutter',
		'Structure Void',
		'Trapped Chest',
		'Warped Fence Gate',
		'White Stained Glass Pane',
		'Wither Skeleton Skull',
		'Woodland Explorer Map',
		'Yellow Stained Glass Pane',
		'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 = Autolink.invlink(item, 'nolink'), name = name }
	end
end

-- Light blocks
for level = 0, 15 do
aliases["Light Block " .. level] = {title = "光ブロック", name = "Light Block " .. level}
aliases["Light " .. level] = {title = "&dライトブロック", name = "Light " .. level}
end
aliases["Light Negative"] = {title = "&dライトブロック", name = "Light Negative"}

-- Smithing Template
local smithing_templates = {
	{ 'Netherite Upgrade',   'ネザライト強化',    'ダイヤモンドの装備品','ネザライトインゴット'  },
	{ 'Coast Armor Trim',    '海洋風の装飾',      '防具',             'インゴットや鉱物' },
	{ 'Dune Armor Trim',     '砂丘風の装飾',      '防具',             'インゴットや鉱物' },
	{ 'Eye Armor Trim',      '要塞風の装飾',      '防具',             'インゴットや鉱物' },
	{ 'Host Armor Trim',     '主人風の装飾',      '防具',             'インゴットや鉱物' },
	{ 'Raiser Armor Trim',   '牧者風の装飾',      '防具',             'インゴットや鉱物' },
	{ 'Rib Armor Trim',      'あばら模様の装飾',  '防具',             'インゴットや鉱物' },
	{ 'Sentry Armor Trim',   '略奪者風の装飾',    '防具',             'インゴットや鉱物' },
	{ 'Shaper Armor Trim',   '職人風の装飾',      '防具',             'インゴットや鉱物' },
	{ 'Silence Armor Trim',  '静寂の装飾',        '防具',             'インゴットや鉱物' },
	{ 'Snout Armor Trim',    'ブタの鼻風の装飾',  '防具',             'インゴットや鉱物' },
	{ 'Spire Armor Trim',    '尖塔風の装飾',      '防具',             'インゴットや鉱物' },
	{ 'Tide Armor Trim',     '潮流風の装飾',      '防具',             'インゴットや鉱物' },
	{ 'Vex Armor Trim',      'ヴェックス風の装飾','防具',             'インゴットや鉱物' },
	{ 'Ward Armor Trim',     '監獄風の装飾',      '防具',             'インゴットや鉱物' },
	{ 'Wayfinder Armor Trim','先駆者風の装飾',    '防具',             'インゴットや鉱物' },
	{ 'Wild Armor Trim',     '密林風の装飾',      '防具',             'インゴットや鉱物' },

}
local smithing_template_array = {}
local armor_trims_array = {}
for _,smithing_template in pairs(smithing_templates) do
	local current_alias = {
		title = '鍛冶型',
		name = smithing_template[1] .. ' Smithing Template',
		text = '&7' .. smithing_template[2] .. '//適用先:/ &9' .. smithing_template[3] .. '/&7材料:/ &9' .. smithing_template[4],
	}
	aliases[smithing_template[1]] = current_alias
	aliases[smithing_template[1] .. ' Smithing Template'] = current_alias
	table.insert(smithing_template_array,current_alias)
	if string.find(smithing_template[1],' Armor Trim$') then
		table.insert(armor_trims_array,current_alias)
	end
end
aliases['Matching Smithing Template'] = smithing_template_array
aliases['Any Smithing Template'] = smithing_template_array
aliases['Matching Armor Trim'] = armor_trims_array
aliases['Any Armor Trim'] = armor_trims_array
aliases['Matching Armor Trim Smithing Template'] = armor_trims_array
aliases['Any Armor Trim Smithing Template'] = armor_trims_array

return aliases