local _, core = ...; -- Namespace

local AceGUI = LibStub("AceGUI-3.0")


function core.HerbalismGoldFarming(container)

local frame = AceGUI:Create("Frame")
frame:SetTitle("Herbalism Levelling / Gold Farming Full Guide")
frame:SetStatusText("|cff00C78CWorthIt-Guides")
frame:SetWidth(400)
frame:SetHeight(500)
frame:SetLayout("Fill")


scrollcontainer = AceGUI:Create("SimpleGroup") -- "InlineGroup" is also good
scrollcontainer:SetFullWidth(true)
scrollcontainer:SetFullHeight(true) -- probably?
scrollcontainer:SetLayout("Fill") -- important!

frame:AddChild(scrollcontainer)

scroll = AceGUI:Create("ScrollFrame")
scroll:SetLayout("Flow") -- probably?
scrollcontainer:AddChild(scroll)
  
  
  -- Intro
  
  local desc = AceGUI:Create("Label")
  desc:SetText("|cffFFC125Herbalism:")
  desc:SetFullWidth(true)
  desc:SetFont("Fonts\\FRIZQT__.TTF", 20, '')
  scroll:AddChild(desc)
  
  local Space = AceGUI:Create("Label")
  Space:SetText("  ")
  Space:SetFullWidth(true)
  scroll:AddChild(Space)
  
  local desc = AceGUI:Create("Label")
  desc:SetText("To start with  Herbalism, we will need to pick up our Professions depending on what we are going to start farming first. For most people tend to go with Current Content farm first and go from there. However I would suggest a different approach to get you acquainted with this profession.")
  desc:SetFullWidth(true)
  desc:SetFont("Fonts\\FRIZQT__.TTF", 13, '')
  scroll:AddChild(desc)
  
  local Space = AceGUI:Create("Label")
  Space:SetText("  ")
  Space:SetFullWidth(true)
  scroll:AddChild(Space)  
 
-- Vanilla

  local desc = AceGUI:Create("Label")
  desc:SetText("|cffFFC125Vanilla:")
  desc:SetFullWidth(true)
  desc:SetFont("Fonts\\FRIZQT__.TTF", 20, '')
  scroll:AddChild(desc)
  
  local Space = AceGUI:Create("Label")
  Space:SetText("  ")
  Space:SetFullWidth(true)
  scroll:AddChild(Space)
  
  local desc = AceGUI:Create("Label")
  desc:SetText("If you move towards going to Vanilla Farming and progress your way up to the Current Expansion. You will gain are good idea on node spacing and formations as in the early days of the game these were placed in the game with the aim of flying not being a thing in the old world and gradually they started spacing through expansions.")
  desc:SetFullWidth(true)
  desc:SetFont("Fonts\\FRIZQT__.TTF", 13, '')
  scroll:AddChild(desc)
  
  local Space = AceGUI:Create("Label")
  Space:SetText("  ")
  Space:SetFullWidth(true)
  scroll:AddChild(Space)   
  
   local desc = AceGUI:Create("Label")
  desc:SetText("If you are looking for which trainer to go to for starting farming with Vanilla then I would suggest going to Stormwind or Orgrimmar and speaking to the respective trainer either if you are Alliance or Horde.")
  desc:SetFullWidth(true)
  desc:SetFont("Fonts\\FRIZQT__.TTF", 13, '')
  scroll:AddChild(desc)
  
  local Space = AceGUI:Create("Label")
  Space:SetText("  ")
  Space:SetFullWidth(true)
  scroll:AddChild(Space)   

  local desc = AceGUI:Create("Label")
  desc:SetText("Generally starting off with Herbalism it would be wise to start out farming old world materials but which ones? Well this is pretty simple as due to world scaling you are able to herb anywhere in vanilla zones and still obtain skill points. However, you do not get the full herbs at the start unless you are farming the old way. I would suggest farming in sections, for instance Duskwood is a prime place to start as there is a high density of nodes meaning you will be able to skill up faster along with this you will pick up a large array of herbs from the old world which some sell for a good amount of gold.")
  desc:SetFullWidth(true)
  desc:SetFont("Fonts\\FRIZQT__.TTF", 13, '')
  scroll:AddChild(desc)
  
  local Space = AceGUI:Create("Label")
  Space:SetText("  ")
  Space:SetFullWidth(true)
  scroll:AddChild(Space)   

  local desc = AceGUI:Create("Label")
  desc:SetText("The aim for picking this and also others into the future would be to farm places with a good gold value along with skilling up a relatively fast manor. Following on from this the next area to choose would definitely be Feralas as this has a good density of nodes and gets you used to flying through foliage which is something that happens quite a bit so you will need to learn to focus on your mini map for guides as some nodes are not always so easy to find.")
  desc:SetFullWidth(true)
  desc:SetFont("Fonts\\FRIZQT__.TTF", 13, '')
  scroll:AddChild(desc)
  
  local Space = AceGUI:Create("Label")
  Space:SetText("  ")
  Space:SetFullWidth(true)
  scroll:AddChild(Space)   

  local desc = AceGUI:Create("Label")
  desc:SetText("Lastly for vanilla levelling and gold farming a spot that would be a go to for Herbalism and Mining is Felwood. This is single handedly one of the best farming spots in the game as this has a keynote item that comes from there which is Gromsblood. With this farm finishing off you levelling for Vanilla Herbalism you will get a ton of herbs that have a very good return across most servers prices and this can be carried into the future as a frequent farming location as this always tends to sell rather well throughout the years and expansions. There are many ways to level up your Herbalism in Vanilla zones but these as typically the ones that will give you the best returns overall and also have some of the highest density of nodes making it a great place to start with your Gold Farming Journey.")
  desc:SetFullWidth(true)
  desc:SetFont("Fonts\\FRIZQT__.TTF", 13, '')
  scroll:AddChild(desc)
  
  local Space = AceGUI:Create("Label")
  Space:SetText("  ")
  Space:SetFullWidth(true)
  scroll:AddChild(Space)  

-- TBC to wod
  
   local desc = AceGUI:Create("Label")
  desc:SetText("|cffFFC125Burning Crusade towards Warlords of Dreanor:")
  desc:SetFullWidth(true)
  desc:SetFont("Fonts\\FRIZQT__.TTF", 20, '')
  scroll:AddChild(desc)
  
  local Space = AceGUI:Create("Label")
  Space:SetText("  ")
  Space:SetFullWidth(true)
  scroll:AddChild(Space)
  
  local desc = AceGUI:Create("Label")
  desc:SetText("Now we move into Burning Crusade farming for Herbalism and not many of these herbs from this expansions are really noted as worth much as many of the herbs farmed from these areas are not used to be crafted into anything of higher value unless you are farming to Mill them into the pigments for the Inscription profession.")
  desc:SetFullWidth(true)
  desc:SetFont("Fonts\\FRIZQT__.TTF", 13, '')
  scroll:AddChild(desc)
  
  local Space = AceGUI:Create("Label")
  Space:SetText("  ")
  Space:SetFullWidth(true)
  scroll:AddChild(Space)   
  
   local desc = AceGUI:Create("Label")
  desc:SetText("However for levelling we will be wanting to follow on Zangarmarsh for levelling this profession as this zone is prefect for levelling due to it's density of node for farming but this will not get you all the way to max on Herbalism alone. Following onto this you would need to follow up levelling your Herbalism by going around the Outland zone of Nagrand to really max out this profession. This should not take long for levelling as the requirements for maxing out most professions will be considerably lower than vanilla and will take you around an hour for each expansion.")
  desc:SetFullWidth(true)
  desc:SetFont("Fonts\\FRIZQT__.TTF", 13, '')
  scroll:AddChild(desc)
  
  local Space = AceGUI:Create("Label")
  Space:SetText("  ")
  Space:SetFullWidth(true)
  scroll:AddChild(Space)   
 

 
  -- Legion
  
    local desc = AceGUI:Create("Label")
  desc:SetText("|cffFFC125Legion:")
  desc:SetFullWidth(true)
  desc:SetFont("Fonts\\FRIZQT__.TTF", 20, '')
  scroll:AddChild(desc)
  
  local Space = AceGUI:Create("Label")
  Space:SetText("  ")
  Space:SetFullWidth(true)
  scroll:AddChild(Space)
  
  local desc = AceGUI:Create("Label")
  desc:SetText("This is where we get into ranks within the next expansion. Legion, this is the place you will start to see some good returns on all herbs ( excluding some herb from cataclysm ) and this will require you to obtain ranks within them. This is done by farming all the zones for there specific herbs which are, Dreamleaf in Val'Sharah, Aethril in Azsuna, Foxflower in High Mountain, Fjarnskaggl in Stormheim and Starlight Rose within Suramar.")
  desc:SetFullWidth(true)
  desc:SetFont("Fonts\\FRIZQT__.TTF", 13, '')
  scroll:AddChild(desc)
  
  local Space = AceGUI:Create("Label")
  Space:SetText("  ")
  Space:SetFullWidth(true)
  scroll:AddChild(Space)  
  
  
   local desc = AceGUI:Create("Label")
  desc:SetText("Each of these zone you will need to farm and this will take you more time to rank up because when you go to one of these zone say for instance Azsuna for Aethril you will need to start farming this until you loot an item for your ranks. This happen for a total of three time and it will requires you to do a quest in order to reach that rank. This happens for every herb in this zone bringing a total of fifteen quests to do and farm for to max out Legion Herbalism but alas there is one more herb you are able to do. I leave this one separate as this is commonly not worth a great deal and you are able to max out the high value farms for these herbs without it but you will need to go to Argus in order to do this farm.")
  desc:SetFullWidth(true)
  desc:SetFont("Fonts\\FRIZQT__.TTF", 13, '')
  scroll:AddChild(desc)
  
  local Space = AceGUI:Create("Label")
  Space:SetText("  ")
  Space:SetFullWidth(true)
  scroll:AddChild(Space)   

  local desc = AceGUI:Create("Label")
  desc:SetText("Astral Glory, this can only be obtained by farming herbs on argus and if you are wanting to fully max out Legion gathering then this herb is for you. Though you will need to start the Argus storyline for you to continue and reach argus moving forward. Once you have reached argus you will need to start farming like you did before and complete another three quests to reach rank three with Astral Glory but I leave this one as optional as this does not go for a great deal due to it not being used in any relevant crafts for it to derive its value from and will most commonly before along the same pricing as Mists of Pandaria herbs.")
  desc:SetFullWidth(true)
  desc:SetFont("Fonts\\FRIZQT__.TTF", 13, '')
  scroll:AddChild(desc)
  
  local Space = AceGUI:Create("Label")
  Space:SetText("  ")
  Space:SetFullWidth(true)
  scroll:AddChild(Space)   

 
 -- BFA 

    local desc = AceGUI:Create("Label")
  desc:SetText("|cffFFC125Battle for Azeroth:")
  desc:SetFullWidth(true)
  desc:SetFont("Fonts\\FRIZQT__.TTF", 20, '')
  scroll:AddChild(desc)
  
  local Space = AceGUI:Create("Label")
  Space:SetText("  ")
  Space:SetFullWidth(true)
  scroll:AddChild(Space)
  
  local desc = AceGUI:Create("Label")
  desc:SetText("Moving onto Battle for Azeroth we will be needing to do the same with ranks but this time it is only three zone you will need to do to rank up all herbs in this expansion. For the beginning you will need to learn the basic Kul'tiran or Zandalari Herbalism. Next we will be wanting to start farming in Tiraguard sound for starting off with Alliance and with Horde it would be Vol'Dun this is so when a quest pops for there respective herbs you are able to go back to your capital city and complete said quests faster. However this may take a while to level up your skill points while ranking your herbs so pay that in mind but ones this is complete for those respective zones you will need to switch to the other zone ( Horde would go to Alliance and Alliance would go to Horde ). This should finish off your levelling and your ranks quite nicely until you are ready for the last herb on the BFA list.")
  desc:SetFullWidth(true)
  desc:SetFont("Fonts\\FRIZQT__.TTF", 13, '')
  scroll:AddChild(desc)
  
  local Space = AceGUI:Create("Label")
  Space:SetText("  ")
  Space:SetFullWidth(true)
  scroll:AddChild(Space)   
  
   local desc = AceGUI:Create("Label")
  desc:SetText("Zin'anthid, a herb that can only be farmed in Nazjatar and can sell for a decent chunk even today but this does come with a catch. Ranking your Zin'anthid will be easy and much like the ones you did prior to this for rank one but for rank two it is a little different. With learning rank two this will require you to obtain the “germinating seed”, you should have this while levelling up your skill point with rank one. This is then used to spawn a rare in the zone called “Carnivorous Lasher” which can be found in Nazjatar at coordinates 54.8 41.8. You will then need to spawn this rare by using this seed and thus once defeated you will be rewarded with your rank two in Zin'anthid.")
  desc:SetFullWidth(true)
  desc:SetFont("Fonts\\FRIZQT__.TTF", 13, '')
  scroll:AddChild(desc)
  
  local Space = AceGUI:Create("Label")
  Space:SetText("  ")
  Space:SetFullWidth(true)
  scroll:AddChild(Space)  

  local desc = AceGUI:Create("Label")
  desc:SetText("As for rank three this is fairly straight forward as this will just require you to farm up Zin'anthid more. This should also bring you in quite a lot of herbs to sell on the auction house and typically this still has a good gold per hour for your time spent so you will not be missing out while you are levelling.")
  desc:SetFullWidth(true)
  desc:SetFont("Fonts\\FRIZQT__.TTF", 13, '')
  scroll:AddChild(desc)
  
  local Space = AceGUI:Create("Label")
  Space:SetText("  ")
  Space:SetFullWidth(true)
  scroll:AddChild(Space)    
  
 -- Shadowlands

    local desc = AceGUI:Create("Label")
  desc:SetText("|cffFFC125Shadowlands:")
  desc:SetFullWidth(true)
  desc:SetFont("Fonts\\FRIZQT__.TTF", 20, '')
  scroll:AddChild(desc)
  
  local Space = AceGUI:Create("Label")
  Space:SetText("  ")
  Space:SetFullWidth(true)
  scroll:AddChild(Space)
  
  local desc = AceGUI:Create("Label")
  desc:SetText("Finally to bring things to the current expansion, you will need to learn Herbalism in Oribos for Shadowlands. This is by far any easy one to level as the ranking system has been removed and so this will require you to farm any of the Shadowlands herbs which are, Vigil's Torch, Marrowroot, Widowbloom and Rising Glory. These are zone specific and do come with other herbs that are expansion wide which is Death Blossom and Nightshade.")
  desc:SetFullWidth(true)
  desc:SetFont("Fonts\\FRIZQT__.TTF", 13, '')
  scroll:AddChild(desc)
  
  local Space = AceGUI:Create("Label")
  Space:SetText("  ")
  Space:SetFullWidth(true)
  scroll:AddChild(Space)    
  
   local desc = AceGUI:Create("Label")
  desc:SetText("Nightshade is the rarest of the herbs and can be sold for a lot more gold than most other herbs whereas Death Blossom is the most common and will not sell for overly that much gold. In regards to levelling farming in Maldraxxus for Marrowroot or Ardenweald for Vigil's Torch will take you the least amount of time and the common farming routes for these are very simplistic to do, with also a good gold return for your time.")
  desc:SetFullWidth(true)
  desc:SetFont("Fonts\\FRIZQT__.TTF", 13, '')
  scroll:AddChild(desc)
  
  local Space = AceGUI:Create("Label")
  Space:SetText("  ")
  Space:SetFullWidth(true)
  scroll:AddChild(Space)     
  
 -- Overview 
  
      local desc = AceGUI:Create("Label")
  desc:SetText("|cffFFC125Overview:")
  desc:SetFullWidth(true)
  desc:SetFont("Fonts\\FRIZQT__.TTF", 20, '')
  scroll:AddChild(desc)
  
  local Space = AceGUI:Create("Label")
  Space:SetText("  ")
  Space:SetFullWidth(true)
  scroll:AddChild(Space)
  
  local desc = AceGUI:Create("Label")
  desc:SetText("Weather it be the current expansion or even older expansions Herbalism is always a safe bet to start making gold. While you have been levelling and ranking up your Herbalism you should have seen quite a lot of herbs have been gathered, this should a least pay for your token for the month. Now we should look at farms that are worth your time for gold farm with Herbalism.")
  desc:SetFullWidth(true)
  desc:SetFont("Fonts\\FRIZQT__.TTF", 13, '')
  scroll:AddChild(desc)
  
  local Space = AceGUI:Create("Label")
  Space:SetText("  ")
  Space:SetFullWidth(true)
  scroll:AddChild(Space)    
  
    local desc = AceGUI:Create("Label")
  desc:SetText("When you are looking to make gold with Herbalism you should be asking what would other people buy. So for instance an easy one would be Current Content. This is by far the most easy as when a current expansion is ongoing you will tend to see mass sales everyday for these materials but where as a strong sell rate is important, it should not be a defining factor in this.")
  desc:SetFullWidth(true)
  desc:SetFont("Fonts\\FRIZQT__.TTF", 13, '')
  scroll:AddChild(desc)
  
  local Space = AceGUI:Create("Label")
  Space:SetText("  ")
  Space:SetFullWidth(true)
  scroll:AddChild(Space)    
  
    local desc = AceGUI:Create("Label")
  desc:SetText("The gold you make per hour should also be considered as well as a strong sell rate. Take the current expansion herb farms, this may have a high sell rate and large volume of sales but, this could very well be a highly competitive market to start farming in. how ever if you went and did a gold farming for Azshara's Veil, this has a good sell rate on average and also fetches a good return for your time spent to time selling. The perfect formula would be to farm materials that can provide a happy medium for sales and gold this is what should be considered the true gold per hour because this could be taken in another way. Say you farm a herb with an insanely high gold per hour but, the sell rate for this is around 0.03? Well you will be waiting quite a while for that to sell though. Alas that is just an example and not a regular seller ate for herbs, they tend to sell most of the time around 0.1 to 0.3 in most respects but this is to make sure to take some thought into this before you start farming so you are able to get the best return for you time invested with Herbalism.")
  desc:SetFullWidth(true)
  desc:SetFont("Fonts\\FRIZQT__.TTF", 13, '')
  scroll:AddChild(desc)
  
  local Space = AceGUI:Create("Label")
  Space:SetText("  ")
  Space:SetFullWidth(true)
  scroll:AddChild(Space)    
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  

end