Code:
#include <cstdint>
enum class GatherNodeType : int32_t {
Undefined = 0,
Herb = -3,
Mineral = -4
};
struct GatherNode {
const uint32_t id;
const GatherNodeType type;
const char* name;
const uint16_t minskill;
};
const struct GatherNode nodes[] = {
{ 181166, GatherNodeType::Herb, "Bloodthistle" , 1 },
{ 1618, GatherNodeType::Herb, "Peacebloom" , 1 },
{ 1617, GatherNodeType::Herb, "Silverleaf" , 1 },
{ 1619, GatherNodeType::Herb, "Earthroot" , 15 },
{ 1620, GatherNodeType::Herb, "Mageroyal" , 50 },
{ 1621, GatherNodeType::Herb, "Briarthorn" , 70 },
{ 2045, GatherNodeType::Herb, "Stranglekelp" , 85 },
{ 1622, GatherNodeType::Herb, "Bruiseweed" , 100 },
{ 1623, GatherNodeType::Herb, "Wild Steelbloom" , 115 },
{ 1628, GatherNodeType::Herb, "Grave Moss" , 120 },
{ 1624, GatherNodeType::Herb, "Kingsblood" , 125 },
{ 2041, GatherNodeType::Herb, "Liferoot" , 150 },
{ 2042, GatherNodeType::Herb, "Fadeleaf" , 160 },
{ 2046, GatherNodeType::Herb, "Goldthorn" , 170 },
{ 2043, GatherNodeType::Herb, "Khadgar's Whisker" , 185 },
{ 2044, GatherNodeType::Herb, "Wintersbite" , 195 },
{ 2866, GatherNodeType::Herb, "Firebloom" , 205 },
{ 142140, GatherNodeType::Herb, "Purple Lotus" , 210 },
{ 142141, GatherNodeType::Herb, "Arthas' Tears" , 220 },
{ 142142, GatherNodeType::Herb, "Sungrass" , 230 },
{ 142143, GatherNodeType::Herb, "Blindweed" , 235 },
{ 142144, GatherNodeType::Herb, "Ghost Mushroom" , 245 },
{ 142145, GatherNodeType::Herb, "Gromsblood" , 250 },
{ 176583, GatherNodeType::Herb, "Golden Sansam" , 260 },
{ 176584, GatherNodeType::Herb, "Dreamfoil" , 270 },
{ 176586, GatherNodeType::Herb, "Mountain Silversage" , 280 },
{ 176587, GatherNodeType::Herb, "Plaguebloom" , 285 },
{ 176588, GatherNodeType::Herb, "Icecap" , 290 },
{ 176589, GatherNodeType::Herb, "Black Lotus" , 300 },
{ 181270, GatherNodeType::Herb, "Felweed" , 300 },
{ 190174, GatherNodeType::Herb, "Frozen Herb" , 300 },
{ 181271, GatherNodeType::Herb, "Dreaming Glory" , 315 },
{ 181275, GatherNodeType::Herb, "Ragveil" , 325 },
{ 181277, GatherNodeType::Herb, "Terocone" , 325 },
{ 181276, GatherNodeType::Herb, "Flame Cap" , 335 },
{ 181278, GatherNodeType::Herb, "Ancient Lichen" , 340 },
{ 189973, GatherNodeType::Herb, "Goldclover" , 350 },
{ 181279, GatherNodeType::Herb, "Netherbloom" , 350 },
{ 185881, GatherNodeType::Herb, "Netherdust Bush" , 350 },
{ 191303, GatherNodeType::Herb, "Firethorn" , 360 },
{ 181280, GatherNodeType::Herb, "Nightmare Vine" , 365 },
{ 181281, GatherNodeType::Herb, "Mana Thistle" , 375 },
{ 190169, GatherNodeType::Herb, "Tiger Lily" , 375 },
{ 190170, GatherNodeType::Herb, "Talandra's Rose" , 385 },
{ 191019, GatherNodeType::Herb, "Adder's Tongue" , 400 },
{ 190173, GatherNodeType::Herb, "Frozen Herb" , 400 },
{ 190175, GatherNodeType::Herb, "Frozen Herb" , 415 },
{ 190171, GatherNodeType::Herb, "Lichbloom" , 425 },
{ 190172, GatherNodeType::Herb, "Icethorn" , 435 },
{ 190176, GatherNodeType::Herb, "Frost Lotus" , 450 },
{ 188432, GatherNodeType::Mineral, "Black Blood of Yogg-Saron" , 1 },
{ 1731, GatherNodeType::Mineral, "Copper Vein" , 1 },
{ 191844, GatherNodeType::Mineral, "Enchanted Earth" , 1 },
{ 191845, GatherNodeType::Mineral, "Enchanted Earth" , 1 },
{ 188699, GatherNodeType::Mineral, "Strange Ore" , 1 },
{ 1610, GatherNodeType::Mineral, "Incendicite Mineral Vein" , 65 },
{ 1732, GatherNodeType::Mineral, "Tin Vein" , 65 },
{ 2653, GatherNodeType::Mineral, "Lesser Bloodstone Deposit" , 75 },
{ 73940, GatherNodeType::Mineral, "Ooze Covered Silver Vein" , 75 },
{ 1733, GatherNodeType::Mineral, "Silver Vein" , 75 },
{ 1735, GatherNodeType::Mineral, "Iron Deposit" , 125 },
{ 19903, GatherNodeType::Mineral, "Indurium Mineral Vein" , 150 },
{ 1734, GatherNodeType::Mineral, "Gold Vein" , 155 },
{ 73941, GatherNodeType::Mineral, "Ooze Covered Gold Vein" , 155 },
{ 2040, GatherNodeType::Mineral, "Mithril Deposit" , 175 },
{ 123310, GatherNodeType::Mineral, "Ooze Covered Mithril Deposit" , 175 },
{ 123309, GatherNodeType::Mineral, "Ooze Covered Truesilver Deposit" , 205 },
{ 2047, GatherNodeType::Mineral, "Truesilver Deposit" , 205 },
{ 165658, GatherNodeType::Mineral, "Dark Iron Deposit" , 230 },
{ 123848, GatherNodeType::Mineral, "Ooze Covered Thorium Vein" , 230 },
{ 324, GatherNodeType::Mineral, "Small Thorium Vein" , 230 },
{ 180215, GatherNodeType::Mineral, "Hakkari Thorium Vein" , 255 },
{ 177388, GatherNodeType::Mineral, "Ooze Covered Rich Thorium Vein" , 255 },
{ 175404, GatherNodeType::Mineral, "Rich Thorium Vein" , 255 },
{ 181555, GatherNodeType::Mineral, "Fel Iron Deposit" , 275 },
{ 185877, GatherNodeType::Mineral, "Nethercite Deposit" , 275 },
{ 181069, GatherNodeType::Mineral, "Large Obsidian Chunk" , 305 },
{ 181068, GatherNodeType::Mineral, "Small Obsidian Chunk" , 305 },
{ 181556, GatherNodeType::Mineral, "Adamantite Deposit" , 325 },
{ 189978, GatherNodeType::Mineral, "Cobalt Deposit" , 350 },
{ 181569, GatherNodeType::Mineral, "Rich Adamantite Deposit" , 350 },
{ 185557, GatherNodeType::Mineral, "Ancient Gem Vein" , 375 },
{ 181557, GatherNodeType::Mineral, "Khorium Vein" , 375 },
{ 189979, GatherNodeType::Mineral, "Rich Cobalt Deposit" , 375 },
{ 189980, GatherNodeType::Mineral, "Saronite Deposit" , 400 },
{ 189981, GatherNodeType::Mineral, "Rich Saronite Deposit" , 425 },
{ 195036, GatherNodeType::Mineral, "Pure Saronite Deposit" , 450 },
{ 191133, GatherNodeType::Mineral, "Titanium Vein" , 450 }
};