새로 오신 분들은 길라잡이위키 규칙을 꼭 읽어주세요.

문서 작성번역을 도와주시면 이 위키에 큰 힘이 됩니다.

Fandom 측에서 진행하는 통합 커뮤니티 플랫폼으로의 이주 작업이 이루어지는 동안 일부 기능이 작동하지 않을 수 있습니다. 양해 부탁드립니다.

"모듈:Inventory slot/Aliases"의 두 판 사이의 차이

Minecraft Wiki
이동: 둘러보기, 검색
잔글
잔글
 
1번째 줄: 1번째 줄:
local Autolink = require( '모듈:Autolink' )
 
 
 
local coloredDyes = {
 
local coloredDyes = {
 
'Orange Dye', 'Magenta Dye', 'Light Blue Dye', 'Yellow Dye', 'Lime Dye',
 
'Orange Dye', 'Magenta Dye', 'Light Blue Dye', 'Yellow Dye', 'Lime Dye',
9번째 줄: 7번째 줄:
 
local aliases = {
 
local aliases = {
 
-- Common fuel types for furnace --
 
-- Common fuel types for furnace --
['Any fuel'] = { 'Coal', 'Charcoal', { title = 'Log', name = 'Oak Log' }, { title = 'Wood Planks', name = 'Oak Planks' }, 'Block of Coal' },
+
['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 leather armor'] = { 'Leather Cap', 'Leather Tunic', 'Leather Pants', 'Leather Boots' },
 
['Any golden armor'] = { 'Golden Helmet', 'Golden Chestplate', 'Golden Leggings', 'Golden Boots' },
 
['Any golden armor'] = { 'Golden Helmet', 'Golden Chestplate', 'Golden Leggings', 'Golden Boots' },
17번째 줄: 15번째 줄:
 
['Any netherite armor'] = { 'Netherite Helmet', 'Netherite Chestplate', 'Netherite Leggings', 'Netherite Boots' },
 
['Any netherite armor'] = { 'Netherite Helmet', 'Netherite Chestplate', 'Netherite Leggings', 'Netherite Boots' },
 
 
-- Wood --
 
['Any Log'] = { 'Oak Log', 'Spruce Log', 'Birch Log', 'Jungle Log', 'Acacia Log', 'Dark Oak Log', 'Crimson Stem', 'Warped Stem' },
 
['Any Stripped Log'] = { 'Stripped Oak Log', 'Stripped Spruce Log', 'Stripped Birch Log', 'Stripped Jungle Log', 'Stripped Acacia Log', 'Stripped Dark Oak Log', 'Stripped Crimson Stem', 'Stripped Warped Stem' },
 
['Any Wood'] = { 'Oak Wood', 'Spruce Wood', 'Birch Wood', 'Jungle Wood', 'Acacia Wood', 'Dark Oak Wood', 'Crimson Hyphae', 'Warped Hyphae' },
 
['Any Stripped Wood'] = { 'Stripped Oak Wood', 'Stripped Spruce Wood', 'Stripped Birch Wood', 'Stripped Jungle Wood', 'Stripped Acacia Wood', 'Stripped Dark Oak Wood', 'Stripped Crimson Hyphae', 'Stripped Warped Hyphae' },
 
['Any Overworld Log'] = { 'Oak Log', 'Spruce Log', 'Birch Log', 'Jungle Log', 'Acacia Log', 'Dark Oak Log' },
 
['Any Overworld Stripped Log'] = { 'Stripped Oak Log', 'Stripped Spruce Log', 'Stripped Birch Log', 'Stripped Jungle Log', 'Stripped Acacia Log', 'Stripped Dark Oak Log' },
 
['Any Overworld Wood'] = { 'Oak Wood', 'Spruce Wood', 'Birch Wood', 'Jungle Wood', 'Acacia Wood', 'Dark Oak Wood' },
 
['Any Overworld Stripped Wood'] = { 'Stripped Oak Wood', 'Stripped Spruce Wood', 'Stripped Birch Wood', 'Stripped Jungle Wood', 'Stripped Acacia Wood', 'Stripped Dark Oak Wood' },
 
['Any Sapling'] = { 'Oak Sapling', 'Spruce Sapling', 'Birch Sapling', 'Jungle Sapling', 'Acacia Sapling', 'Dark Oak Sapling' },
 
['Any Planks'] = { 'Oak Planks', 'Spruce Planks', 'Birch Planks', 'Jungle Planks', 'Acacia Planks', 'Dark Oak Planks', 'Crimson Planks', 'Warped Planks' },
 
['Any wood Stairs'] = { 'Oak Stairs', 'Spruce Stairs', 'Birch Stairs', 'Jungle Stairs', 'Acacia Stairs', 'Dark Oak Stairs', 'Crimson Stairs', 'Warped Stairs' },
 
['Any wood Slab'] = { 'Oak Slab', 'Spruce Slab', 'Birch Slab', 'Jungle Slab', 'Acacia Slab', 'Dark Oak Slab', 'Crimson Slab', 'Warped Slab' },
 
['Any wood Trapdoor'] = { 'Oak Trapdoor', 'Spruce Trapdoor', 'Birch Trapdoor', 'Jungle Trapdoor', 'Acacia Trapdoor', 'Dark Oak Trapdoor', 'Crimson Trapdoor', 'Warped Trapdoor' },
 
['Any wood Button'] = { 'Oak Button', 'Spruce Button', 'Birch Button', 'Jungle Button', 'Acacia Button', 'Dark Oak Button', 'Crimson Button', 'Warped Button' },
 
['Any wood Pressure Plate'] = { 'Oak Pressure Plate', 'Spruce Pressure Plate', 'Birch Pressure Plate', 'Jungle Pressure Plate', 'Acacia Pressure Plate', 'Dark Oak Pressure Plate', 'Crimson Pressure Plate', 'Warped Pressure Plate' },
 
['Any wood Door'] = { 'Oak Door', 'Spruce Door', 'Birch Door', 'Jungle Door', 'Acacia Door', 'Dark Oak Door', 'Crimson Door', 'Warped Door' },
 
['Any wood Fence'] = { 'Oak Fence', 'Spruce Fence', 'Birch Fence', 'Jungle Fence', 'Acacia Fence', 'Dark Oak Fence', 'Crimson Fence', 'Warped Fence' },
 
['Any Fence Gate'] = { 'Oak Fence Gate', 'Spruce Fence Gate', 'Birch Fence Gate', 'Jungle Fence Gate', 'Acacia Fence Gate', 'Dark Oak Fence Gate', 'Crimson Fence Gate', 'Warped Fence Gate' },
 
['Any Sign'] = { 'Oak Sign', 'Spruce Sign', 'Birch Sign', 'Jungle Sign', 'Acacia Sign', 'Dark Oak Sign', 'Crimson Sign', 'Warped Sign' },
 
['Any Boat'] = { 'Oak Boat', 'Spruce Boat', 'Birch Boat', 'Jungle Boat', 'Acacia Boat', 'Dark Oak Boat' },
 
 
 
-- stones --
 
-- stones --
 
['Any Cobblestone or Blackstone'] = { 'Cobblestone', 'Blackstone' },
 
['Any Cobblestone or Blackstone'] = { 'Cobblestone', 'Blackstone' },
 
 
 
-- Display names --
 
-- Display names --
['Broken Elytra'] = { title = '&eElytra', name = 'Broken Elytra' },
+
['Broken Elytra'] = { title = '&eエリトラ', name = 'Broken Elytra' },
['Clay (block)'] = { title = 'Clay', name = 'Clay (block)' }, --remove on Nether Update's release if bedrock also changes the item name
+
['Clay (block)'] = { title = '粘土', name = 'Clay (block)' }, --remove on Nether Update's release if bedrock also changes the item name
['Clay (ball)'] = { title = 'Clay', name = 'Clay (ball)' }, --remove on Nether Update's release if bedrock also changes the item name
+
['Clay (ball)'] = { title = '粘土', name = 'Clay (ball)' }, --remove on Nether Update's release if bedrock also changes the item name
['Banner Pattern Flower'] = { title = 'Banner Pattern', name = 'Banner Pattern', text = '&7Flower Charge'},
+
['Banner Pattern Flower'] = { title = '현수막 무늬', name = 'Banner Pattern', text = '&7꽃 모양'},
['Banner Pattern Flower Charge'] = { title = 'Banner Pattern', name = 'Banner Pattern', text = '&7Flower Charge'},
+
['Banner Pattern Flower Charge'] = { title = '현수막 무늬', name = 'Banner Pattern', text = '&7꽃 모양'},
['Banner Pattern Creeper Charge'] = { title = '&eBanner Pattern', name = 'Banner Pattern', text = '&7Creeper Charge'},
+
['Banner Pattern Creeper Charge'] = { title = '&e현수막 무늬', name = 'Banner Pattern', text = '&7크리퍼 모양'},
['Banner Pattern Creeper'] = { title = '&eBanner Pattern', name = 'Banner Pattern', text = '&7Creeper Charge'},
+
['Banner Pattern Creeper'] = { title = '&e현수막 무늬', name = 'Banner Pattern', text = '&7크리퍼 모양'},
['Banner Pattern Bordure Indented'] = { title = 'Banner Pattern', name = 'Banner Pattern', text = '&7Bordure Indented'},
+
['Banner Pattern Bordure Indented'] = { title = '현수막 무늬', name = 'Banner Pattern', text = '&7크리퍼 모양'},
['Banner Pattern Field Masoned'] = { title = 'Banner Pattern', name = 'Banner Pattern', text = '&7Field Masoned'},
+
['Banner Pattern Field Masoned'] = { title = '현수막 무늬', name = 'Banner Pattern', text = '&7벽돌 무늬'},
['Banner Pattern Skull Charge'] = { title = '&eBanner Pattern', name = 'Banner Pattern', text = '&7Skull Charge'},
+
['Banner Pattern Skull Charge'] = { title = '&e현수막 무늬', name = 'Banner Pattern', text = '&7머리 모양'},
['Banner Pattern Skull'] = { title = '&eBanner Pattern', name = 'Banner Pattern', text = '&7Skull Charge'},
+
['Banner Pattern Skull'] = { title = '&e현수막 무늬', name = 'Banner Pattern', text = '&7머리 모양'},
['Banner Pattern Thing'] = { title = '&dBanner Pattern', name = 'Banner Pattern', text = '&7Thing'},
+
['Banner Pattern Thing'] = { title = '&d현수막 무늬', name = 'Banner Pattern', text = '&7무언가'},
['Banner Pattern Globe'] = { title = 'Banner Pattern', name = 'Banner Pattern', text = '&7Globe'},
+
['Banner Pattern Mojang'] = { title = '&d현수막 무늬', name = 'Banner Pattern', text = '&7무언가'},
['Banner Pattern Piglin'] = { title = 'Banner Pattern', name = 'Banner Pattern', text = '&7Piglin'},
+
['Banner Pattern Globe'] = { title = '&d현수막 무늬', name = 'Banner Pattern', text = '&7지구 모양'},
['Button'] = { title = 'Button', name = 'Stone Button'},
+
['Banner Pattern Snout'] = { title = '현수막 무늬', name = 'Banner Pattern', text = '&7돼지코'},
['Wooden Button'] = { title = 'Button', name = 'Oak Button'},
+
['Banner Pattern Piglin'] = { title = '현수막 무늬', name = 'Banner Pattern', text = '&7돼지코'},
['Arrow Loaded Crossbow'] = { title = 'Crossbow', name = 'Arrow Loaded Crossbow' },
+
['Button'] = { title = '버튼', name = 'Stone Button'},
['Damaged Arrow Loaded Crossbow'] = { title = 'Crossbow', name = 'Damaged Arrow Loaded Crossbow' },
+
['Wooden Button'] = { title = '버튼', name = 'Oak Button'},
['Firework Loaded Crossbow'] = { title = 'Crossbow', name = 'Firework Loaded Crossbow' },
+
['Arrow Loaded Crossbow'] = { title = '쇠뇌', name = 'Arrow Loaded Crossbow' },
['Damaged Firework Loaded Crossbow'] = { title = 'Crossbow', name = 'Damaged Firework Loaded Crossbow' },
+
['Damaged Arrow Loaded Crossbow'] = { title = '쇠뇌', name = 'Damaged Arrow Loaded Crossbow' },
['Illager Banner'] = { title = '&6&oIllager Banner', name = 'Illager Banner', text =
+
['Firework Loaded Crossbow'] = { title = '쇠뇌', name = 'Firework Loaded Crossbow' },
  +
['Damaged Firework Loaded Crossbow'] = { title = '쇠뇌', name = 'Damaged Firework Loaded Crossbow' },
'&7Cyan Lozenge/&7Light Gray Base/&7Gray Pale/&7Light Gray Bordure/&7Black Fess/&7Light Gray Per Fess'},
 
['Jigsaw Block'] = { title = '&dJigsaw Block', name = 'Jigsaw Block' },
+
['Illager Banner'] = { title = '&6&o불길한 현수막', name = 'Illager Banner', text =
  +
'&7청록색 마름모/&7회백색 아래쪽 가로띠/&7회색 중앙 세로띠/&7회백색 테두리/&7검은색 중앙 가로띠/&7회백색 중앙 가로선 상부'},
  +
['Jigsaw Block'] = { title = '&d직소 블록', name = 'Jigsaw Block' },
   
 
-- Weapons --
 
-- Weapons --
['Trident'] = { name = 'Trident', text = '/&7 주로 사용하는 손에 있을 때:/ &2 1.1 공격 속도/ &2 9 공격 피해'},
+
['Trident'] = { name = 'Trident', text = '/&7다른 손에 있을 때:/ &2 공격 속도 1.1/ &2 공격력 9'},
   
 
-- Bedrock and Education Edition display names --
 
-- Bedrock and Education Edition display names --
['Elytra Wings'] = { title = 'Elytra Wings', name = 'Elytra' },
+
['Elytra Wings'] = { title = '&e겉날개의 날개 부위', name = 'Elytra' },
['Cooked Beef'] = { title = 'Cooked Beef', name = 'Steak' },
+
['Cooked Beef'] = { title = '스테이크', name = 'Steak' },
['Map (no markers)'] = { title = 'Map', name = 'Map', text = 'Display Markers: &cNo' },
+
['Map (no markers)'] = { title = '지도', name = 'Map', text = '위치 정보:&c아니오' },
['Locator Map'] = { title = 'Map', name = 'Map', text = 'Display Markers: &aYes' },
+
['Locator Map'] = { title = '지도', name = 'Map', text = '위치 정보:&a예' },
   
 
-- Chemistry --
 
-- Chemistry --
['Lead (element)'] = { title = 'Lead', name = 'Lead (element)' },
+
['Lead (element)'] = { title = '', name = 'Lead (element)' },
['Water (compound)'] = { title = 'Water', name = 'Water (compound)' },
+
['Water (compound)'] = { title = '', name = 'Water (compound)' },
 
['Chloride'] = { 'Calcium Chloride', 'Cerium Chloride', 'Mercuric Chloride', 'Potassium Chloride', 'Tungsten Chloride' },
 
['Chloride'] = { 'Calcium Chloride', 'Cerium Chloride', 'Mercuric Chloride', 'Potassium Chloride', 'Tungsten Chloride' },
 
['Sparkler'] = { 'Orange Sparkler', 'Blue Sparkler', 'Red Sparkler', 'Purple Sparkler', 'Green Sparkler' },
 
['Sparkler'] = { 'Orange Sparkler', 'Blue Sparkler', 'Red Sparkler', 'Purple Sparkler', 'Green Sparkler' },
87번째 줄: 65번째 줄:
 
'Purple Glow Stick', 'Blue Glow Stick', 'Brown Glow Stick', 'Green Glow Stick', 'Red Glow Stick' },
 
'Purple Glow Stick', 'Blue Glow Stick', 'Brown Glow Stick', 'Green Glow Stick', 'Red Glow Stick' },
 
}
 
}
  +
 
local Autolink = require( '모듈:Autolink' )
   
 
-- Tooltip colors --
 
-- Tooltip colors --
110번째 줄: 90번째 줄:
 
'Beacon',
 
'Beacon',
 
'Conduit',
 
'Conduit',
'End Crystal',
 
 
'Golden Apple',
 
'Golden Apple',
 
}
 
}
128번째 줄: 107번째 줄:
 
local animatedIcons = {
 
local animatedIcons = {
 
'Bubble Column',
 
'Bubble Column',
  +
'Compass',
  +
'Crimson Hyphae',
  +
'Crimson Stem',
 
'Debug Stick',
 
'Debug Stick',
 
'Fire',
 
'Fire',
142번째 줄: 124번째 줄:
 
'Stonecutter',
 
'Stonecutter',
 
'Soul Fire',
 
'Soul Fire',
  +
'Warped Hyphae',
  +
'Warped Stem',
 
'Water',
 
'Water',
 
'Written Book'
 
'Written Book'
156번째 줄: 140번째 줄:
 
}
 
}
 
for _, name in ipairs( animatedIconsYellowTooltips ) do
 
for _, name in ipairs( animatedIconsYellowTooltips ) do
aliases[name] = { title = '&e' .. Autolink.invlink(name, 'nolink'), name = name .. '.gif' }
+
aliases[name] = { title = '&e', name = name .. '.gif' }
 
end
 
end
   
 
-- Some things are both animated and aqua --
 
-- Some things are both animated and aqua --
 
local animatedIconsAquaTooltips = {
 
local animatedIconsAquaTooltips = {
 
'End Crystal',
 
}
 
}
 
for _, name in ipairs( animatedIconsAquaTooltips ) do
 
for _, name in ipairs( animatedIconsAquaTooltips ) do
aliases[name] = { title = '&b' .. Autolink.invlink(name, 'nolink'), name = name .. '.gif' }
+
aliases[name] = { title = '&b', name = name .. '.gif' }
 
end
 
end
   
175번째 줄: 160번째 줄:
 
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' .. Autolink.invlink(name, 'nolink'), name = name .. '.gif' }
  +
end
  +
  +
-- Bedrock Edition Items --
  +
local animatedEditionItems = {
  +
BE = {
  +
'Lodestone Compass',
  +
},
  +
LCE = {
  +
 
}
  +
}
  +
for edition, items in pairs(animatedEditionItems) do
 
for _, item in ipairs(items) do
  +
local name = item .. ' ' .. edition
  +
aliases[name] = { title = item, name = name .. '.gif' }
  +
end
 
end
 
end
   
 
-- Tools and weapons --
 
-- Tools and weapons --
 
local tools = {
 
local tools = {
{'Wooden', 'Sword', 1.6, 4 },
+
{'Wooden', 'Sword', 1.6, 4, '나무 검' },
{'Stone', 'Sword', 1.6, 5 },
+
{'Stone', 'Sword', 1.6, 5, '돌 검' },
{'Iron', 'Sword', 1.6, 6 },
+
{'Iron', 'Sword', 1.6, 6, '철 검' },
{'Golden', 'Sword', 1.6, 4 },
+
{'Golden', 'Sword', 1.6, 4, '황금 검' },
{'Diamond', 'Sword', 1.6, 7 },
+
{'Diamond', 'Sword', 1.6, 7, '다이아몬드 검' },
{'Netherite', 'Sword', 1.6, 8 },
+
{'Netherite', 'Sword', 1.6, 8, '네더라이트 검' },
 
 
{'Wooden', 'Pickaxe', 1.2, 2 },
+
{'Wooden', 'Pickaxe', 1.2, 2, '나무 곡괭이' },
{'Stone', 'Pickaxe', 1.2, 3 },
+
{'Stone', 'Pickaxe', 1.2, 3, '돌 곡괭이' },
{'Iron', 'Pickaxe', 1.2, 4 },
+
{'Iron', 'Pickaxe', 1.2, 4, '철 곡괭이' },
{'Golden', 'Pickaxe', 1.2, 2 },
+
{'Golden', 'Pickaxe', 1.2, 2, '황금 곡괭이' },
{'Diamond', 'Pickaxe', 1.2, 5 },
+
{'Diamond', 'Pickaxe', 1.2, 5, '다이아몬드 곡괭이' },
{'Netherite', 'Pickaxe', 1.2, 6 },
+
{'Netherite', 'Pickaxe', 1.2, 6, '네더라이트 곡괭이' },
 
 
{'Wooden', 'Axe', 0.8, 7 },
+
{'Wooden', 'Axe', 0.8, 7, '나무 도끼' },
{'Stone', 'Axe', 0.8, 9 },
+
{'Stone', 'Axe', 0.8, 9, '돌 도끼' },
{'Iron', 'Axe', 0.9, 9 },
+
{'Iron', 'Axe', 0.9, 9, '철 도끼' },
{'Golden', 'Axe', 1, 7 },
+
{'Golden', 'Axe', 1, 7, '황금 도끼' },
{'Diamond', 'Axe', 1, 9 },
+
{'Diamond', 'Axe', 1, 9, '다이아몬드 도끼' },
{'Netherite', 'Axe', 1, 9 },
+
{'Netherite', 'Axe', 1, 9, '네더라이트 도끼' },
 
 
{'Wooden', 'Shovel', 1, 2.5 },
+
{'Wooden', 'Shovel', 1, 2.5, '나무 삽' },
{'Stone', 'Shovel', 1, 3.5 },
+
{'Stone', 'Shovel', 1, 3.5, '돌 삽' },
{'Iron', 'Shovel', 1, 4.5 },
+
{'Iron', 'Shovel', 1, 4.5, '철 삽' },
{'Golden', 'Shovel', 1, 2.5 },
+
{'Golden', 'Shovel', 1, 2.5, '황금 삽' },
{'Diamond', 'Shovel', 1, 5.5 },
+
{'Diamond', 'Shovel', 1, 5.5, '다이아몬드 삽' },
{'Netherite', 'Shovel', 1.6, 6.5 },
+
{'Netherite', 'Shovel', 1.6, 6.5, '네더라이트 삽' },
 
 
{'Wooden', 'Hoe', 1, 1 },
+
{'Wooden', 'Hoe', 1, 1, '나무 괭이' },
{'Stone', 'Hoe', 2, 1 },
+
{'Stone', 'Hoe', 2, 1, '돌 괭이' },
{'Iron', 'Hoe', 3, 1 },
+
{'Iron', 'Hoe', 3, 1, '철 괭이' },
{'Golden', 'Hoe', 1, 1 },
+
{'Golden', 'Hoe', 1, 1, '황금 괭이' },
{'Diamond', 'Hoe', 4, 1 },
+
{'Diamond', 'Hoe', 4, 1, '다이아몬드 괭이' },
{'Netherite', 'Hoe', 4, 1 }
+
{'Netherite', 'Hoe', 4, 1, '네더라이트 괭이' }
 
}
 
}
   
220번째 줄: 221번째 줄:
 
for _, toolProps in ipairs( tools ) do
 
for _, toolProps in ipairs( tools ) do
 
local aliasName = toolProps[1] .. ' ' .. toolProps[2]
 
local aliasName = toolProps[1] .. ' ' .. toolProps[2]
aliases[aliasName] = { title = Autolink.invlink(aliasName, 'nolink'), name = aliasName, text = '/&7주로 사용하는 손에 있을 때:/ &2' .. toolProps[3] .. ' 공격 속도/ &2' .. toolProps[4] .. ' 공격 피해' }
+
aliases[aliasName] = { title = toolProps[5], name = aliasName, text = '/&7주로 사용하는 손에 있을 때:/ &2 공격 속도 ' .. toolProps[3] .. '/ &2 공격 피해 ' .. toolProps[4] }
 
 
 
local materialGroup = toolProps[1]:lower();
 
local materialGroup = toolProps[1]:lower();
274번째 줄: 275번째 줄:
 
['Stone Slab'] = { 'Stone Slab', 'Smooth Stone Slab', 'Cobblestone Slab', 'Mossy Cobblestone Slab', 'Stone Brick Slab', 'Mossy Stone Brick Slab', 'Andesite Slab', 'Polished Andesite Slab',
 
['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',
 
'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', 'Prismarine Slab', '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' },
 
['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', 'Prismarine Stairs', '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' },
 
['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'] = { 'Prismarine', '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' },
 
['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' },
292번째 줄: 293번째 줄:
 
['Coral Fan'] = { 'Tube Coral Fan', 'Brain Coral Fan', 'Bubble Coral Fan', 'Fire Coral Fan', 'Horn Coral Fan' },
 
['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',
 
['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', 'Prismarine Wall', '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' },
['Torch'] = { 'Torch', 'Soul Fire Torch' },
+
['Torch'] = { 'Torch', 'Soul Torch' },
['Lantern'] = { 'Lantern', 'Soul Fire Lantern' },
+
['Lantern'] = { 'Lantern', 'Soul Lantern' },
 
['Fungus'] = { 'Crimson Fungus', 'Warped Fungus' },
 
['Fungus'] = { 'Crimson Fungus', 'Warped Fungus' },
 
['Fungi'] = { 'Crimson Fungus', 'Warped Fungus' },
 
['Roots'] = { 'Crimson Roots', 'Warped Roots' },
 
['Roots'] = { 'Crimson Roots', 'Warped Roots' },
 
['Nylium'] = { 'Crimson Nylium', 'Warped Nylium' },
 
['Nylium'] = { 'Crimson Nylium', 'Warped Nylium' },
['Nether Planks'] = { 'Crimson Planks', 'Warped Planks' },
+
['Soul Sand'] = { 'Soul Sand', 'Soul Soil' },
['Stem'] = { 'Crimson Stem', 'Warped Stem' },
+
['Campfire'] = { 'Campfire', 'Soul Campfire' },
 
['Blackstone'] = { 'Blackstone', 'Polished Blackstone', 'Chiseled Polished Blackstone', 'Polished Blackstone Bricks', 'Cracked Polished Blackstone Bricks' },
['Stripped Stem'] = { 'Stripped Crimson Stem', 'Stripped Warped Stem' },
 
['Hyphae'] = { 'Crimson Hyphae', 'Warped Hyphae' },
+
['Stone Button'] = { 'Stone Button', 'Polished Blackstone Button' },
['Stripped Hyphae'] = { 'Stripped Crimson Hyphae', 'Stripped Warped Hyphae' },
+
['Stone Pressure Plate'] = { 'Stone Pressure Plate', 'Polished Blackstone Pressure Plate' },
['Nether Wood Button'] = { 'Crimson Button', 'Warped Button' },
 
 
['Nether Wood Pressure Plate'] = { 'Crimson Pressure Plate', 'Warped Pressure Plate' },
 
['Nether Wood Pressure Plate'] = { 'Crimson Pressure Plate', 'Warped Pressure Plate' },
 
['Nether Wood Fence'] = { 'Crimson Fence', 'Warped Fence' },
 
['Nether Wood Fence'] = { 'Crimson Fence', 'Warped Fence' },
312번째 줄: 313번째 줄:
 
['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' },
['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' },
 
 
}
 
}
 
table.insert( itemVariants['Dye'], 1, 'White Dye' )
 
table.insert( itemVariants['Dye'], 1, 'White Dye' )
341번째 줄: 337번째 줄:
 
}
 
}
 
for _, disc in ipairs( discs ) do
 
for _, disc in ipairs( discs ) do
local name = '음반 ' .. disc[1]
+
local name = 'Music Disc ' .. disc[1]
 
local artist = disc[2]
 
local artist = disc[2]
 
local trackname = disc[1]
 
local trackname = disc[1]
416번째 줄: 412번째 줄:
 
}
 
}
 
for _, item in ipairs( damagedItems ) do
 
for _, item in ipairs( damagedItems ) do
local name = '손상된 ' .. item
+
local name = 'Damaged ' .. item
 
aliases[name] = { title = Autolink.invlink(item, 'nolink'), name = name }
 
aliases[name] = { title = Autolink.invlink(item, 'nolink'), name = name }
 
end
 
end
458번째 줄: 454번째 줄:
 
'Per Pale',
 
'Per Pale',
 
'Per Pale Inverted',
 
'Per Pale Inverted',
  +
'Piglin',
 
'Snout',
 
'Roundel',
 
'Roundel',
 
'Saltire',
 
'Saltire',
 
'Skull Charge'
 
'Skull Charge'
 
}
 
}
-- 한국어 현수막 패턴 이름 --
+
-- 한글 현수막 패턴 이름 --
 
local patterns_ko = {
 
local patterns_ko = {
 
'Base Dexter Canton',
 
'Base Dexter Canton',
500번째 줄: 498번째 줄:
 
'Per Pale',
 
'Per Pale',
 
'Per Pale Inverted',
 
'Per Pale Inverted',
  +
'Piglin',
 
'Snout',
 
'Roundel',
 
'Roundel',
 
'Saltire',
 
'Saltire',
521번째 줄: 521번째 줄:
 
'Red',
 
'Red',
 
'Black'
 
'Black'
  +
}
  +
local colorc = {
  +
'하얀색',
  +
'주황색',
  +
'자홍색',
  +
'하늘색',
  +
'노란색',
  +
'연두색',
  +
'분홍색',
  +
'회색',
  +
'회백색',
  +
'청록색',
  +
'보라색',
  +
'파란색',
  +
'갈색',
  +
'초록색',
  +
'빨간색',
  +
'검은색',
 
}
 
}
   
 
-- Firework Stars --
 
-- Firework Stars --
  +
-- 영어 위키에서 수정중에 있으므로 업데이트 시 주의 --
-- 英語版から改変しているので更新の際は注意 --
 
 
local fireworkStar = {}
 
local fireworkStar = {}
for _, color in ipairs( colors ) do
+
for i, color in ipairs( colors ) do
 
local name = color .. ' Firework Star'
 
local name = color .. ' Firework Star'
aliases[name] = { title = 'Firework Star', name = name, text = '&7' .. Autolink.invlink(color, 'nolink') }
+
aliases[name] = { title = '폭죽 탄약', name = name, text = '&7' .. colorc[i] }
 
table.insert( fireworkStar, aliases[name] )
 
table.insert( fireworkStar, aliases[name] )
 
for _, pattern in ipairs( patterns ) do
 
for _, pattern in ipairs( patterns ) do
534번째 줄: 552번째 줄:
 
local text = ''
 
local text = ''
 
if patterns_ko[_]:find( '%$1' ) then
 
if patterns_ko[_]:find( '%$1' ) then
text = string.gsub( patterns_ko[_], '%$1', Autolink.invlink(color, 'nolink') )
+
text = string.gsub( patterns_ko[_], '%$1', colorc[i] )
 
end
 
end
aliases[name] = { title = 'Banner', name = name, text = '&7' .. text }
+
aliases[name] = { title = '', name = name, text = '&7' .. text }
 
end
 
end
 
end
 
end
565번째 줄: 583번째 줄:
 
for _, color in ipairs( colors ) do
 
for _, color in ipairs( colors ) do
 
if item:find( '%$1' ) then
 
if item:find( '%$1' ) then
itemName = string.gsub( item, '%$1', color )
+
itemName = item:gsub( '%$1', color )
 
else
 
else
 
itemName = color .. ' ' .. item
 
itemName = color .. ' ' .. item
576번째 줄: 594번째 줄:
 
aliases['Matching ' .. item] = coloredItemAliases
 
aliases['Matching ' .. item] = coloredItemAliases
 
end
 
end
  +
-- list of all potions with no effects
-- 효과가 없는 물약 목록
 
 
local noEffects = {
 
local noEffects = {
 
'Water Bottle',
 
'Water Bottle',
598번째 줄: 616번째 줄:
 
}
 
}
 
for _, name in ipairs(noEffects) do
 
for _, name in ipairs(noEffects) do
aliases[name] = { name = name, text = '&7효과 없음' }
+
aliases[name] = { name = name, text = '&7効果なし' }
 
end
 
end
   
629번째 줄: 647번째 줄:
 
}
 
}
   
-- Potions --
 
 
-- Potions --
 
-- Potions --
 
local effects = {
 
local effects = {
 
-- durations are in the order normal, extended, enhanced
 
-- durations are in the order normal, extended, enhanced
{name = 'Regeneration', effect = '&9Regeneration', enhanced = 'II',
+
{name = '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' }}},
 
durations = { normal = { '0:45', '1:30', '0:22' }, lingering = { '0:11', '0:22', '0:05' }, arrow = { '0:05', '0:11', '0:02' }}},
{ name = 'Swiftness', effect = '&9Speed', enhanced = 'II',
+
{ name = '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' }}},
 
durations = { normal = { '3:00', '8:00', '1:30' }, lingering = { '0:45', '2:00', '0:22' }, arrow = { '0:22', '1:00', '0:11' }}},
{ name = 'Fire Resistance', effect = '&9Fire Resistance', durations = { normal = { '3:00', '8:00' }, lingering = { '0:45', '2:00' }, arrow = { '0:22', '1:00' }}},
+
{ name = 'Fire Resistance', effect = '&9화염 저항', durations = { normal = { '3:00', '8:00' }, lingering = { '0:45', '2:00' }, arrow = { '0:22', '1:00' }}},
{ name = 'Poison', effect = '&cPoison', enhanced = 'II',
+
{ 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' }}},
 
durations = { normal = { '0:45', '1:30', '0:21' }, lingering = { '0:11', '0:22', '0:05' }, arrow = { '0:05', '0:11', '0:02' }}},
{ name = 'Healing', effect = '&9Instant Health', enhanced = 'II' },
+
{ name = 'Healing', effect = '&9즉시 회복', enhanced = 'II' },
{ name = 'Night Vision', effect = '&9Night Vision', durations = { normal = { '3:00', '8:00' }, lingering = { '0:45', '2:00' }, arrow = { '0:22', '1:00' }}},
+
{ name = 'Night Vision', effect = '&9야간 투시', durations = { normal = { '3:00', '8:00' }, lingering = { '0:45', '2:00' }, arrow = { '0:22', '1:00' }}},
{ name = 'Weakness', effect = '&cWeakness', durations = { normal = { '1:30', '4:00' }, lingering = { '0:22', '1:00' }, arrow = { '0:11', '0:30' }}},
+
{ name = 'Weakness', effect = '&c나약함', durations = { normal = { '1:30', '4:00' }, lingering = { '0:22', '1:00' }, arrow = { '0:11', '0:30' }}},
{ name = 'Strength', effect = '&9Strength', enhanced = 'II',
+
{ 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' }}},
 
durations = { normal = { '3:00', '8:00', '1:30'}, lingering = {'0:45', '2:00', '0:22'}, arrow = { '0:22', '1:00', '0:11' }}},
{ name = 'Slowness', effect = '&cSlowness', enhanced = 'IV',
+
{ name = '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' }}},
 
durations = { normal = { '1:30', '4:00', '0:20'}, lingering = {'0:22', '1:00', '0:05'}, arrow = { '0:11', '0:30', '0:02' }}},
{ name = 'Leaping', effect = '&9Jump Boost', enhanced = 'II',
+
{ name = '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' }}},
 
durations = { normal = { '3:00', '8:00', '1:30' }, lingering = {'0:45', '2:00', '0:22'}, arrow = { '0:22', '1:00', '0:11' }}},
{ name = 'Harming', effect = '&cInstant Damage', enhanced = 'II' },
+
{ name = 'Harming', effect = '&c즉시 피해', enhanced = 'II' },
{ name = 'Water Breathing', effect = '&9Water Breathing', durations = { normal = { '3:00', '8:00' }, lingering = { '0:45', '2:00' }, arrow = { '0:22', '1:00' }}},
+
{ name = 'Water Breathing', effect = '&9수중 호흡', durations = { normal = { '3:00', '8:00' }, lingering = { '0:45', '2:00' }, arrow = { '0:22', '1:00' }}},
{ name = 'Invisibility', effect = '&9Invisibility', durations = { normal = { '3:00', '8:00' }, lingering = { '0:45', '2:00' }, arrow = { '0:22', '1:00' }}},
+
{ name = 'Invisibility', effect = '&9투명화', durations = { normal = { '3:00', '8:00' }, lingering = { '0:45', '2:00' }, arrow = { '0:22', '1:00' }}},
{ name = 'Slow Falling', effect = '&9Slow Falling', durations = { normal = { '1:30', '4:00' }, lingering = { '0:22', '1:00' }, arrow = { '0:11', '0:30' }}},
+
{ name = 'Slow Falling', effect = '&9느린 낙하', durations = { normal = { '1:30', '4:00' }, lingering = { '0:22', '1:00' }, arrow = { '0:11', '0:30' }}},
{ name = 'Luck', effect = '&9Luck', durations = { normal = { '5:00' }, lingering = { '1:15' }, arrow = { '0:37' }}},
+
{ name = 'Luck', effect = '&9행운', durations = { normal = { '5:00' }, lingering = { '1:15' }, arrow = { '0:37' }}},
{ name = 'Decay', effect = '&cWither', durations = { normal = { '0:40' }, lingering = { '0:10' }, arrow = { '0:05' }}},
+
{ name = 'Decay', effect = '&c시듦', durations = { normal = { '0:40' }, lingering = { '0:10' }, arrow = { '0:05' }}},
{ name = 'the Turtle Master', text = '&cSlowness IV ($1)/&9Resistance III ($1)', enhanced = '&cSlowness VI ($1)/&9Resistance IV ($1)',
+
{ name = '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' }}}
 
durations = { normal = { '0:20', '0:40', '0:20' }, lingering = { '0:15', '0:45', '0:15' }, arrow = { '0:07', '0:22', '0:07' }}}
 
}
 
}
 
local types = {
 
local types = {
{name = 'Potion', durations = 'normal', text = ' 물약'},
+
{name = 'Potion', durations = 'normal', text = 'Potion of '},
{name = 'Splash Potion', durations = 'normal', text = ' 투척용 물약'},
+
{name = 'Splash Potion', durations = 'normal', text = 'Splash Potion of '},
{name = 'Lingering Potion', durations = 'lingering', text = ' 잔류형 물약'},
+
{name = 'Lingering Potion', durations = 'lingering', text = 'Lingering Potion of '},
{name = 'Tipped Arrow', durations = 'arrow', text = ' 화살'},
+
{name = 'Tipped Arrow', durations = 'arrow', text = 'Arrow of '},
 
}
 
}
   
 
for _, effect in ipairs(effects) do
 
for _, effect in ipairs(effects) do
 
for _, type in ipairs(types) do
 
for _, type in ipairs(types) do
  +
-- form name, it will be reused
-- 한국어로 변경
 
local name = effect.name .. type.text
+
local name = type.text .. effect.name
  +
local potionName = {}
  +
if type.name == 'Tipped Arrow' then
  +
potionName = type.text .. effect.name
  +
else
  +
potionName = type.text .. effect.name .. '.gif'
  +
end
 
 
 
-- if we have durations, add times
 
-- if we have durations, add times
676번째 줄: 699번째 줄:
 
-- turtle master is weird, so just do a fancy string replacement
 
-- turtle master is weird, so just do a fancy string replacement
 
if effect.text then
 
if effect.text then
aliases[name] = { name = name, text = string.gsub( effect.text, '%$1', durations[1] ) }
+
aliases[name] = { name = potionName, text = effect.text:gsub( '%$1', durations[1] ) }
aliases[name .. ' Extended'] = { name = name, text = string.gsub( effect.text, '%$1', durations[2] ) }
+
aliases[name .. ' Extended'] = { name = potionName, text = effect.text:gsub( '%$1', durations[2] ) }
aliases[name .. ' Enhanced'] = { name = name, text = string.gsub( effect.enhanced, '%$1', durations[3] ) }
+
aliases[name .. ' Enhanced'] = { name = potionName, text = effect.enhanced:gsub( '%$1', durations[3] ) }
 
else
 
else
 
-- we always have normal
 
-- we always have normal
aliases[name] = { name = name, text = string.format( '%s (%s)', effect.effect, durations[1] ) }
+
aliases[name] = { name = potionName, text = string.format( '%s (%s)', effect.effect, durations[1] ) }
 
 
 
-- ensure we have extended
 
-- ensure we have extended
 
if durations[2] then
 
if durations[2] then
aliases[name .. ' Extended'] = { name = name, text = string.format( '%s (%s)', effect.effect, durations[2] ) }
+
aliases[name .. ' 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
 
-- and enhanced, currently there is nothing with a duration that can be extended but not enhanced
 
if effect.enhanced then
 
if effect.enhanced then
aliases[name .. ' Enhanced'] = { name = name, text = string.format( '%s %s (%s)', effect.effect, effect.enhanced, durations[3] ) }
+
aliases[name .. ' Enhanced'] = { name = potionName, text = string.format( '%s %s (%s)', effect.effect, effect.enhanced, durations[3] ) }
 
end
 
end
 
end
 
end
695번째 줄: 718번째 줄:
 
else
 
else
 
-- otherwise its just effect, currently every potion with no duration can be enhanced
 
-- otherwise its just effect, currently every potion with no duration can be enhanced
aliases[name] = { name = name, text = effect.effect}
+
aliases[name] = { name = potionName, text = effect.effect}
aliases[name .. ' Enhanced'] = { name = name, text = effect.effect .. ' ' .. effect.enhanced }
+
aliases[name .. ' Enhanced'] = { name = potionName, text = effect.effect .. ' ' .. effect.enhanced }
 
end
 
end
 
 
711번째 줄: 734번째 줄:
   
 
-- Wood --
 
-- Wood --
local logs = {
+
local woodTypes = {
  +
overworld = {
'Oak',
 
  +
'Oak',
'Spruce',
 
'Birch',
+
'Spruce',
'Jungle',
+
'Birch',
'Acacia',
+
'Jungle',
  +
'Acacia',
'Dark Oak',
+
'Dark Oak',
  +
},
  +
nether = {
  +
'Crimson',
  +
'Warped'
  +
},
  +
both = {},
 
}
 
}
  +
local woodTypeWorld = {}
  +
for _, world in ipairs({'overworld', 'nether'}) do
  +
local woods = woodTypes[world]
  +
for _, type in ipairs(woods) do
  +
woodTypeWorld[type] = world
  +
table.insert(woodTypes.both, type)
  +
end
  +
end
 
local woodItems = {
 
local woodItems = {
  +
overworld = {
'Wood',
 
  +
'Wood',
'Log',
+
'Log',
'Planks',
 
 
'Boat',
'Fence Gate',
 
 
'Stripped $1 Log',
'Boat',
 
  +
'Stripped $1 Wood',
'wood Door',
 
 
'Wood Planks',
'wood Fence',
 
 
'Wood Slab',
'wood Button',
 
 
'Sapling',
'wood Pressure Plate',
 
  +
},
'wood Trapdoor',
 
  +
nether = {
'wood Slab',
 
  +
'Stem',
'wood Stairs',
 
  +
'Hyphae',
'Stripped $1 Log',
 
'Stripped $1 Wood',
+
'Stripped $1 Stem',
  +
'Stripped $1 Hyphae',
'Wood Planks',
 
  +
},
'Wood Slab',
 
  +
both = {
'Wood Stairs',
 
 
'$world Planks',
'Sign',
 
  +
'${Wood,Hyphae}',
'Sapling',
 
  +
'${Log,Stem}',
  +
'Stripped $1 ${Wood,Hyphae}',
  +
'Stripped $1 ${Log,Stem}',
 
'Fence Gate',
  +
-- '$world Wood Fence',
 
'$wood Fence',
 
'$wood Door',
 
'$wood Button',
 
'$wood Pressure Plate',
 
'$wood Trapdoor',
 
'$world $wood Slab',
 
'$wood Stairs',
  +
'Sign'
  +
}
 
}
 
}
  +
local woodItemWorld = {}
  +
for world, items in pairs(woodItems) do
  +
for _, item in ipairs(items) do
  +
-- expand $world (should only happen in "both")
  +
if (item:find('%$world')) and world == 'both' then
 
item = item:gsub('%$world ', '')
  +
woodItemWorld['Overworld ' .. item] = 'overworld'
  +
woodItemWorld['Nether ' .. item] = 'nether'
  +
end
  +
woodItemWorld[item] = world
  +
end
  +
end
   
for _, item in ipairs( woodItems ) do
+
for item, world in pairs(woodItemWorld) do
 
local itemName = ''
 
local itemName = ''
 
local woodAliases = {}
 
local woodAliases = {}
  +
 
  +
-- real "linkable" name
for _, wood in ipairs( logs ) do
 
  +
local realItem = item:gsub('^Overworld ', '')
if item:find('wood') then
 
itemName = string.gsub( item, 'wood', wood )
+
realItem = realItem:gsub('^Nether ', '')
  +
elseif item:find('%$1') then
 
  +
for _, wood in ipairs(woodTypes[world]) do
itemName = string.gsub( item, '%$1', wood )
 
  +
-- Parse ${,} (world-select) syntax
  +
local selector = (woodTypeWorld[wood] == 'overworld') and "%1" or "%2"
  +
itemName = realItem:gsub("%${(.-),(.-)}", selector)
  +
 
if itemName:find('%$wood') then
  +
itemName = itemName:gsub('%$wood', wood)
 
elseif itemName:find('%$1') then
 
itemName = itemName:gsub( '%$1', wood)
 
else
 
else
itemName = wood .. ' ' .. item
+
itemName = wood .. ' ' .. itemName
 
end
 
end
table.insert( woodAliases, itemName )
+
table.insert(woodAliases, itemName)
 
end
 
end
  +
 
  +
-- Parse ${,} (world-select) syntax
item = string.gsub( item, '%$1 ', '' )
 
  +
item = item:gsub("%${(.-),(.-)}", "%1 or %2")
  +
item = item:gsub('%$wood ', 'wood ')
  +
item = item:gsub('%$1 ', '')
  +
aliases['Any ' .. item] = woodAliases
 
aliases['Matching ' .. item] = woodAliases
 
aliases['Matching ' .. item] = woodAliases
 
end
 
end
779번째 줄: 855번째 줄:
 
'Mossy Cobblestone Wall',
 
'Mossy Cobblestone Wall',
 
'Oak Fence Gate',
 
'Oak Fence Gate',
  +
'Birch Fence Gate',
 
'Spruce Fence Gate',
  +
'Jungle Fence Gate',
  +
'Acacia Fence Gate',
  +
'Dark Oak Fence Gate',
  +
'Crimson Fence Gate',
  +
'Warped Fence Gate',
 
'Observer',
 
'Observer',
 
'Spawn Panda',
 
'Spawn Panda',
792번째 줄: 875번째 줄:
 
'Creeper Head',
 
'Creeper Head',
 
'Dragon Head',
 
'Dragon Head',
  +
'End Portal',
  +
'End Gateway',
 
},
 
},
 
LCE = {
 
LCE = {
808번째 줄: 893번째 줄:
 
-- Bedrock Light blocks
 
-- Bedrock Light blocks
 
for level = 0, 15 do
 
for level = 0, 15 do
aliases["Light Block " .. level] = {title = "Light Block", name = "Light Block " .. level}
+
aliases["Light Block " .. level] = {title = "광원 블록", name = "Light Block " .. level}
 
end
 
end
   

2020년 9월 27일 (일) 04:04 기준 최신판

[만들기 | 역사 | 캐시 제거]설명문서
이 모듈의 설명문서가 없습니다. 이 모듈의 사용 방법을 안다면, 설명문서를 만들어 주십시오.
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' },
	
    -- stones --
	['Any Cobblestone or Blackstone'] = { 'Cobblestone', 'Blackstone' },
	
	-- 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 = '&d현수막 무늬', 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회백색 중앙 가로선 상부'},
	['Jigsaw Block'] = { title = '&d직소 블록', name = 'Jigsaw Block' },

	-- Weapons --
	['Trident'] = { name = 'Trident', text = '/&7다른 손에 있을 때:/ &2 공격 속도 1.1/ &2 공격력 9'},

	-- Bedrock and Education Edition display names --
	['Elytra Wings'] = { title = '&e겉날개의 날개 부위', 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',
	'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',
}
for _, name in ipairs( lightPurpleTooltips ) do
	aliases[name] = { title = '&d' .. Autolink.invlink(name, 'nolink'), name = name }
end

-- Animated icons --
local animatedIcons = {
	'Bubble Column',
    'Compass',
    'Crimson Hyphae',
    'Crimson Stem',
	'Debug Stick',
	'Fire',
	'Heat Block',
	'Lava',
	'Lodestone Compass',
	'Magma Block',
	'Nether Portal',
	'Prismarine',
	'Prismarine Slab',
	'Prismarine Stairs',
	'Prismarine Wall',
	'Sea Lantern',
	'Stonecutter',
	'Soul Fire',
	'Warped Hyphae',
	'Warped Stem',
	'Water',
	'Written Book'
}
for _, icon in ipairs( animatedIcons ) do
	aliases[icon] = icon .. '.gif'
end

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

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

-- Some things are both animated and purple --
local animatedIconsPurpleTooltips = {
	'Command Block',
	'Chain Command Block',
	'Repeating Command Block',
	'Enchanted Golden Apple',
}
for _, name in ipairs( animatedIconsPurpleTooltips ) do
	aliases[name] = { title = '&d' .. Autolink.invlink(name, 'nolink'), 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, 9, '네더라이트 도끼' },
	
	{'Wooden', 'Shovel', 1, 2.5, '나무 삽' },
	{'Stone', 'Shovel', 1, 3.5, '돌 삽' },
	{'Iron', 'Shovel', 1, 4.5, '철 삽' },
	{'Golden', 'Shovel', 1, 2.5, '황금 삽' },
	{'Diamond', 'Shovel', 1, 5.5, '다이아몬드 삽' },
	{'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]
	aliases[aliasName] = { title = toolProps[5], name = aliasName, text = '/&7주로 사용하는 손에 있을 때:/ &2 공격 속도 ' .. toolProps[3] .. '/ &2 공격 피해 ' .. toolProps[4] }
	
	local materialGroup = toolProps[1]:lower();
	local toolGroup = toolProps[2]:lower();
	
	if toolProps[2] ~= 'Sword' then
		if materialGroups[materialGroup] == nil then materialGroups[materialGroup] = {} end
		table.insert( materialGroups[materialGroup], aliases[aliasName] )
	end
	if toolGroups[toolGroup] == nil then toolGroups[toolGroup] = {} end
	table.insert( toolGroups[toolGroup], aliases[aliasName] )
end

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

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

-- Lists of item variants --
local itemVariants = {
	['Dye'] = mw.clone( coloredDyes ),
	['Colored Dye'] = coloredDyes,
	['Dyed Wool'] = {
		'Orange Wool', 'Magenta Wool', 'Light Blue Wool', 'Yellow Wool', 'Lime Wool',
		'Pink Wool', 'Gray Wool', 'Light Gray Wool', 'Cyan Wool', 'Purple Wool',
		'Blue Wool', 'Brown Wool', 'Green Wool', 'Red Wool', 'Black Wool',
	},
	['Dyed 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',
	},
	['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' },
	['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' },
	['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' },
	['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' },
	['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' },
	['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' },
}
table.insert( itemVariants['Dye'], 1, 'White Dye' )
for aliasName, aliasItems in pairs( itemVariants ) do
	aliases['Any ' .. aliasName] = aliasItems
	aliases['Matching ' .. aliasName] = aliasItems
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 = '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

-- Damaged armor, tools and weapons --
local damagedItems = {
	'Bow',
	'Carrot on a Stick',
	'Chainmail Boots',
	'Chainmail Chestplate',
	'Chainmail Helmet',
	'Chainmail Leggings',
	'Crossbow',
	'Diamond Axe',
	'Diamond Boots',
	'Diamond Chestplate',
	'Diamond Helmet',
	'Diamond Hoe',
	'Diamond Leggings',
	'Diamond Pickaxe',
	'Diamond Shovel',
	'Diamond Sword',
	'Elytra',
	'Fishing Rod',
	'Flint and Steel',
	'Golden Axe',
	'Golden Boots',
	'Golden Chestplate',
	'Golden Helmet',
	'Golden Hoe',
	'Golden Leggings',
	'Golden Pickaxe',
	'Golden Shovel',
	'Golden Sword',
	'Iron Axe',
	'Iron Boots',
	'Iron Chestplate',
	'Iron Helmet',
	'Iron Hoe',
	'Iron Leggings',
	'Iron Pickaxe',
	'Iron Shovel',
	'Iron Sword',
	'Leather Boots',
	'Leather Tunic',
	'Leather Cap',
	'Leather Pants',
	'Netherite Axe',
	'Netherite Boots',
	'Netherite Chestplate',
	'Netherite Helmet',
	'Netherite Hoe',
	'Netherite Leggings',
	'Netherite Pickaxe',
	'Netherite Shovel',
	'Netherite Sword',
	'Shears',
	'Shield',
	'Stone Axe',
	'Stone Hoe',
	'Stone Pickaxe',
	'Stone Shovel',
	'Stone Sword',
	'Wooden Axe',
	'Wooden Hoe',
	'Wooden Pickaxe',
	'Wooden Shovel',
	'Wooden Sword'
}
for _, item in ipairs( damagedItems ) do
	local name = 'Damaged ' .. item
	aliases[name] = { title = 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_ko = {
	'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 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_ko[_]:find( '%$1' ) then
			text = string.gsub( patterns_ko[_], '%$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 = {}
		if type.name == 'Tipped Arrow' then
		potionName = type.text .. effect.name
		else
		potionName = type.text .. effect.name .. '.gif'
		end
		
		-- if we have durations, add times
		if effect.durations then
			local durations = effect.durations[type.durations]
			
			-- turtle master is weird, so just do a fancy string replacement
			if effect.text then
				aliases[name] = { name = potionName, text = effect.text:gsub( '%$1', durations[1] ) }
				aliases[name .. ' 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',
    },
    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',
        'Stripped $1 Log',
        'Stripped $1 Wood',
        'Wood Planks',
        'Wood Slab',
        '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',
        '$wood Trapdoor',
        '$world $wood Slab',
        '$wood Stairs',
        'Sign'
    }
}
local woodItemWorld = {}
for world, items in pairs(woodItems) do
    for _, item in ipairs(items) do
		-- expand $world (should only happen in "both")
        if (item:find('%$world')) and world == 'both' then
            item = item:gsub('%$world ', '')
            woodItemWorld['Overworld ' .. item] = 'overworld'
			woodItemWorld['Nether ' .. item] = 'nether'
		end
		woodItemWorld[item] = world
    end
end

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

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

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

		if itemName:find('%$wood') then
			itemName = itemName:gsub('%$wood', wood)
		elseif itemName:find('%$1') then
			itemName = itemName:gsub( '%$1', wood)
		else
			itemName = wood .. ' ' .. itemName
		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['Any ' .. item] = woodAliases
	aliases['Matching ' .. item] = woodAliases
end

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

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

return aliases