local PT = AhUI
if not PT then return end
local G = PT.ProfessionGuides

G.guides.DRAGONFLIGHT = G.guides.DRAGONFLIGHT or {}

G.guides.DRAGONFLIGHT.ALCHEMY = {
	profession  = "Alchemy",
	skillLineID = 2823, -- Dragon Isles Alchemy
	name = "Алхимия — Dragonflight (1–40)",
	
	trainers = {
		alliance = {
			{
				npcID = 185545, -- Conflago
				name  = "Conflago",
				mapID = 2112, -- Valdrakken
				x = 36.6,
				y = 71.4,
			},
		},
		horde = {
			{
				npcID = 185545, -- Conflago
				name  = "Conflago",
				mapID = 2112, -- Valdrakken
				x = 36.6,
				y = 71.4,
			},
		},
	},
	
	vendors = {
		alliance = {
			{
				npcID = 194057,
				name  = "Rabul", -- можешь оставить nil
				mapID = 2112, -- Valdrakken
				x = 35.5,
				y = 59.1,

				sells = {
					{
						itemID = 191586, -- Recipe: Sagacious Incense
						price  = {
							{ itemID = 190456, count = 75 }, -- Artisan's Mettle
						},
					},
				},
			},
		},
		horde = {
			{
				npcID = 194057,
				name  = "Rabul",
				mapID = 2112, -- Valdrakken
				x = 35.5,
				y = 59.1,

				sells = {
					{
						itemID = 191586,
						price  = {
							{ itemID = 190456, count = 75 },
						},
					},
				},
			},
		},
	},

	steps = {

		-- =====================================
		-- 1–7 Refreshing Healing Potion
		-- =====================================
		{
			min = 1,
			max = 7,
			useEffectiveSkill = true,
			recipes = {
				{
					spellID = 370539, -- Refreshing Healing Potion
					crafts = 2,
					reagents = {
						{ itemID = 190328, count = 1 }, -- Rousing Frost
						{ itemID = 191474, count = 5, crafted = true }, -- Draconic Vial
						{ -- Hochenblume 
							anyOf = {
								{ itemID = 191460 }, -- Hochenblume Q1
								{ itemID = 191461 }, -- Hochenblume Q2
								{ itemID = 191462 }, -- Hochenblume Q3
							},
							count = 8,
						},	
					},
				},
			},
			note = "Качество реагента не играет роль.\n|cff00ff00Покупайте тот, что дешевле|r."			
		},

		-- =====================================
		-- 7–10 Aerated Mana Potion
		-- =====================================
		{
			min = 7,
			max = 10,
			useEffectiveSkill = true,
			recipes = {
				{
					spellID = 370547, -- Aerated Mana Potion
					crafts = 1,
					reagents = {
						{ itemID = 190328, count = 1 }, -- Rousing Frost
						{ itemID = 191474, count = 5, crafted = true },
						{-- Hochenblume 
							anyOf = {
								{ itemID = 191460 }, -- Hochenblume Q1
								{ itemID = 191461 }, -- Hochenblume Q2
								{ itemID = 191462 }, -- Hochenblume Q3
							},
							count = 8,
						},	
					},
				},
			},
			note = "Качество реагента не играет роль.\n|cff00ff00Покупайте тот, что дешевле|r."			
		},

		-- =====================================
		-- 10–13 Reclaim Concoctions
		-- =====================================
		{
			min = 10,
			max = 13,
			useEffectiveSkill = true,
			recipes = {
				{
					spellID = 370748, -- Reclaim Concoctions
					crafts = 3,

					reagentsAny = {
						{ itemID = 191380, count = 5, crafted = true }, -- Refreshing Healing Potion
						{ itemID = 191384, count = 5, crafted = true }, -- Aerated Mana Potion
					},
				},
			},
			disablesCraft = true,
			disablesShopping = true,
			disablesCraftAll = true,

			note =
				"Используйте зелья, приготовленные на предыдущих шагах.\n" ..
				"Можно использовать любые подходящие зелья.\n",
		},

		-- =====================================
		-- 13–15 Omnium Draconis
		-- =====================================
		{
			min = 13,
			max = 15,
			useEffectiveSkill = true,
			recipes = {
				{
					spellID = 370722, -- Omnium Draconis
					crafts = 2,
					reagents = {

						-- Writhebark (любой грейд)
						{
							anyOf = {
								{ itemID = 191470 }, -- Q1
								{ itemID = 191471 }, -- Q2
								{ itemID = 191472 }, -- Q3
							},
							count = 1,
						},

						-- Saxifrage (любой грейд)
						{
							anyOf = {
								{ itemID = 191464 }, -- Q1
								{ itemID = 191465 }, -- Q2
								{ itemID = 191466 }, -- Q3
							},
							count = 1,
						},

						-- Bubble Poppy (любой грейд)
						{
							anyOf = {
								{ itemID = 191468 }, -- Q1
								{ itemID = 191467 }, -- Q2
								{ itemID = 191469 }, -- Q3
							},
							count = 1,
						},

						-- Hochenblume (любой грейд)
						{
							anyOf = {
								{ itemID = 191462 }, -- Q1
								{ itemID = 191460 }, -- Q2
								{ itemID = 191461 }, -- Q3
							},
							count = 5,
						},
					},
				},
			},
		},

		-- =====================================
		-- 15–16 Basic Potion Experimentation
		-- =====================================
		{
		  min = 15,
		  max = 16,
		  useEffectiveSkill = true,
		  experiment = "potion",

		  recipes = {
			{
			  spellID = 370743, -- Basic Potion Experimentation
			  crafts  = 1,
			  reagents = {
				{ itemID = 190456, count = 5, crafted = true }, -- Artisan's Mettle
				{ itemID = 191570, count = 2, crafted = true }, -- Dragon's Alchemical Solution
				{
				  anyOf = {
					{ itemID = 191496 }, -- Omnium Draconis Q1
					{ itemID = 191497 }, -- Omnium Draconis Q2
					{ itemID = 191498 }, -- Omnium Draconis Q3
				  },
				  count   = 1,
				  crafted = true,
				},
			  },
			},
		  },

		  disablesCraftAll = true,
		  disablesShopping = true,

		  note =
			"Эксперимент не гарантирует изучение нового рецепта.\n" ..
			"Если рецепт не изучен — продолжайте попытки.\n"..
			"Если не хватает рвения, то сделайте дейлик у Томаса Макбрайта\n"..
			"Он сидит неподалеку на скамеечке 39.41, 70,01",
		},


		-- -- =====================================
		-- -- 16–17 Basic Phial Experimentation
		-- -- =====================================
		{
			min = 16,
			max = 17,
			useEffectiveSkill = true,
			experiment = "phial",

			recipes = {
				{
					spellID = 370746, -- Basic Phial Experimentation
					crafts  = 1,
					reagents = {
						{ itemID = 190456, count = 5, crafted = true }, -- Artisan's Mettle
						{ itemID = 191570, count = 2, crafted = true }, -- Dragon's Alchemical Solution
						{
						  anyOf = {
							{ itemID = 191496 }, -- Omnium Draconis Q1
							{ itemID = 191497 }, -- Omnium Draconis Q2
							{ itemID = 191498 }, -- Omnium Draconis Q3
						  },
						  count   = 1,
						  crafted = true,
						},
					},
				},
			},

			disablesCraftAll = true,
			disablesShopping = true,

			note =
				"Эксперимент с флаконами.\n" ..
				"Не гарантирует изучение нового рецепта.\n" ..
				"Если рецепт не получен — продолжайте попытки.\n"..
				"Если не хватает рвения, то сделайте дейлик у Томаса Макбрайта\n"..
				"Он сидит неподалеку на скамеечке 39.41, 70,01",
		},


		-- -- =====================================
		-- -- 17–40 Any +3 Air Potion
		-- -- =====================================
		{
			min = 17,
			max = 40,

			experiment = "potion",

			recipes = {
				{
					spellID = 370556, -- Potion of the Hushed Zephyr
				},
				{
					spellID = 370561, -- Potion of Shocking Disclosure
				},
				{
					spellID = 370558, -- Potion of Gusts
				},
				{
					spellID = 370743, -- Basic Potion Experimentation
				},
			},

			disablesCraftAll = true,
			disablesShopping = true,

			note =
				"Крафтите любой из указанных Air Potion,\n" ..
				"дающих +3 к навыку.\n\n" ..
				"Если ни один из рецептов не изучен —\n" ..
				"продолжайте Basic Potion Experimentation.\n"..
				"В список покупок эти зелья не попадают.\n"..
				"Закупайтесь вручную.",
		},
		
		{
			min = 40,
			max = 50,

			experiment = "phial",

			recipes = {
				{
					spellID = 370746, -- Basic Phial Experimentation
					crafts  = 1,      -- всегда по 1 эксперименту
					reagents = {
						{ itemID = 190456, count = 5, crafted = true }, -- Artisan's Mettle
						{ itemID = 191570, count = 2, crafted = true }, -- Dragon's Alchemical Solution

						-- Omnium Draconis (любой грейд)
						{
							anyOf = {
								{ itemID = 191496 }, -- Q1
								{ itemID = 191497 }, -- Q2
								{ itemID = 191498 }, -- Q3
							},
							count   = 1,
							crafted = true,
						},
					},
				},
			},

			-- ❌ нельзя автокрафтить
			disablesCraftAll = true,

			-- ❌ нельзя создавать shopping list
			disablesShopping = true,

			note =
				"Эксперимент с флаконами.\n" ..
				"Не гарантирует изучение нового рецепта.\n\n" ..
				"Если новый флакон не изучен —\n" ..
				"продолжайте Basic Phial Experimentation.",
		},		
		
		{
			min = 50,
			max = 56,

			recipes = {
				{
					spellID = 370551, -- Elemental Potion of Power
					crafts  = 2,
					reagents = {
						-- Draconic Vial (crafted)
						{ itemID = 191474, count = 5, crafted = true },

						-- Omnium Draconis (любой грейд)
						{
							anyOf = {
								{ itemID = 191496 }, -- Q1
								{ itemID = 191497 }, -- Q2
								{ itemID = 191498 }, -- Q3
							},
							count = 3,
						},

						-- Primal Convergent (любой грейд)
						{
							anyOf = {
								{ itemID = 191493 }, -- Q1
								{ itemID = 191494 }, -- Q2
								{ itemID = 191495 }, -- Q3
							},
							count = 1,
						},
					},
				},
			},

			note =
				"Обычный крафт.\n" ..
				"Качество реагентов не влияет на прокачку навыка.\n" ..
				"Используйте любой доступный грейд.",
		},
		{
			min = 56,
			max = 65,

			recipes = {
				{
					spellID = 370723, -- Sagacious Incense
					crafts  = 10,

					requires = {
						{
							type   = "recipe_item",
							itemID = 191586, -- Recipe: Sagacious Incense
						},
					},

					reagents = {
						{
							anyOf = {
								{ itemID = 191493 }, -- Q1
								{ itemID = 191494 }, -- Q2
								{ itemID = 191495 }, -- Q3
							},
							count = 1,
						},
						{
							anyOf = {
								{ itemID = 191464 }, -- Q1
								{ itemID = 191465 }, -- Q2
								{ itemID = 191466 }, -- Q3
							},
							count = 5,
						},
					},
				},
			},

			note =
				"Рецепт продаётся у торговца.\n" ..
				"Последние ~5 очков навыка крафт будет жёлтым.\n" ..
				"Навык повышается не гарантированно —\n" ..
				"возможно, потребуется скрафтить немного больше.",
		},
		-- {
			-- min = 65,
			-- max = 80,

			-- recipes = {
				-- {
					-- spellID = 370743, -- Basic Potion Experimentation
				-- },
				-- {
					-- spellID = 370746, -- Basic Phial Experimentation
				-- },
			-- },

			-- disablesCraftAll = true,
			-- disablesShopping = true,

			-- note =
				-- "Крафтите любой из экспериментов:\n" ..
				-- "• Basic Potion Experimentation\n" ..
				-- "• Basic Phial Experimentation\n\n" ..
				-- "Какой именно — не имеет значения.\n" ..
				-- "Навык повышается не гарантированно,\n" ..
				-- "возможно, потребуется больше попыток.",
		-- },
	}
}
