local SLE, T, E, L, V, P, G = unpack(select(2, ...)) local Pr = SLE.Professions local S = E.Skins -- GLOBALS: CreateFrame, hooksecurefunc local _G = _G local UseItemByName = UseItemByName local GetRecipeInfo = C_TradeSkillUI.GetRecipeInfo local IsTradeSkillLinked = C_TradeSkillUI.IsTradeSkillLinked local IsTradeSkillGuild = C_TradeSkillUI.IsTradeSkillGuild local CraftRecipe = C_TradeSkillUI.CraftRecipe function Pr:EnchantButton() local button = CreateFrame("Button", "SLE_EnchScrollButton", _G["ProfessionsFrame"], "MagicButtonTemplate, BackdropTemplate") if E.private.skins.blizzard.tradeskill == true and E.private.skins.blizzard.enable == true then S:HandleButton(button) button:StripTextures() button:SetTemplate('Default', true) button:ClearAllPoints() button:SetPoint("TOPRIGHT", _G["ProfessionsFrame"].CraftingPage.CreateButton, "TOPLEFT", -1, 0) else button:SetPoint("TOPRIGHT", _G["ProfessionsFrame"].CraftingPage.CreateButton, "TOPLEFT") end button:SetScript("OnClick", function() CraftRecipe(_G["ProfessionsFrame"].CraftingPage.SchematicForm:GetRecipeInfo().recipeID) UseItemByName(38682) end) button:SetMotionScriptsWhileDisabled(true) local function UpdateScrollButton(frame) if not frame.SchematicForm then return end if not Pr:IsSkillMine() then _G["SLE_EnchScrollButton"]:Hide() return end local skillInfo = C_TradeSkillUI.GetBaseProfessionInfo() if Pr.baseTradeSkills.Enchanting ~= skillInfo.parentProfessionId and Pr.baseTradeSkills.Enchanting ~= skillInfo.professionID then _G["SLE_EnchScrollButton"]:Hide() return end local recipeInfo = frame.SchematicForm:GetRecipeInfo() if not recipeInfo then return end if IsTradeSkillGuild() or IsTradeSkillLinked() then _G["SLE_EnchScrollButton"]:Hide() elseif recipeInfo.alternateVerb then _G["SLE_EnchScrollButton"]:Show() local scrollnum = GetItemCount(38682) _G["SLE_EnchScrollButton"]:SetText(string.format("%s (%d)", L["Scroll"], scrollnum)) if recipeInfo.craftable and recipeInfo.learned and scrollnum > 0 then _G["SLE_EnchScrollButton"]:Enable() else _G["SLE_EnchScrollButton"]:Disable() end else _G["SLE_EnchScrollButton"]:Hide() end end hooksecurefunc(_G["ProfessionsFrame"].CraftingPage, "Refresh", UpdateScrollButton) end