Since for some reason we aren't actually getting the itemlink for the currencies, we are collecting the currencies ids by collecting finding out what currencies a vendor takes and storing the id, localized name and icon name. In the item info, we store the localized name and the texture (excepting the path elements, they should always be the same).
Basically, all lua tables will have keys that are equal to their DB table names and their data will have a key that contains the row data in a tab delimited format.
Note: This is still a work in progress and some things need to be revisited... i.e. collect_merchant.lua, since we want to extract the currency id from the currency link... no documentation is thus far found for what the type part of a currency link is, so we're going to collect a little data and see.
Put all session info into a tab delimited string containing, in order, svnversion (QH build), realm, buildInfo (WoW version), locale and faction. This string is inserted into a sub-table of QuestHelper_Collector called sessions, with a key of session time.
Put all data into a sub-table of QuestHelper_Collector called data.
Creates session data table on the new data sub-table and sets the key to session time.
QH_Collector_SetupData now returns QuestHelper_Collector.data[sessiontime]
Changed Collector Current Version to 9... This might be useful for future changes to data layout.
Modified collect_location
Made BolusizeLocation accept the right arguments.
Calculated the distance from either Azeroth map center or Outland map center to the provided point for inclusion. (See comments in code for what is collected and why.)
Converted the information into a string. If we couldn't compute a distance to either map center, we leave it out for now, since we are probably in an instance.
WARNING: THESE MODIFICATIONS ARE NOT TESTED AND ARE LIKELY TO CAUSE CATASTROPHIC ISSUES AT THIS TIME. ANY ATTEMPT TO USE THIS REVISION IS NOT RECOMMENDED.
Added LibMapData and began transitioning map data needs to use LibMapData.
Began changing the data collection, yet again. Once this goes beta, the new collection system will be in place... My hope is to allow QH to "learn" as you play, eliminating any need for data compilation, though I will still make attempts to compile said data into a full on db.
Added some code that will eventually be usable to get data from LightHeaded. This is not yet implemented in full, but will be the preferred method of QH doesn't know about a quest. Order of preference will eventually be: 1) Learned data, 2) Internal DB, 3) LightHeaded, 4) WoW client.
NOTE: THIS COMMIT IS ON THE WOW-DB-GET BRANCH. An alpha release will be up on the downloads page by 6:30 US EST on February 29, 2012 (tomorrow).
I THINK I have covered all the changes in this, but I have done so much since my last commit, I cannot be sure.
"/qh find elder[s] achievement [elder_or_achievement]" will track the incomplete achievements of the specified elder or achievement, or all incomplete elder achievements if none is specified.
"/qh find elder[s] clear" will clear the tracker of all tracked elders regardless of completion.
This works for a brand new character, but is untested on an established character that has previously completed the achievements. Theoretically it should work on such a character, since the quests are annual quests and the completion status should reset each year.
Please note that tracking of regular quests is still not working in this branch. QH WILL, repeat WILL break if you have ANY quests in your log.
Removed the ugly database hacks, they are not necessary with the planes set to be the map ID's and no calls going out to the built in database.
Fixed the elders in Stranglethorn.
Also changed planes to be the same as the equivalent mapID. Eliminated instances for the time being, as this whole scheme may go by the wayside in upcoming iterations.
WARNING: This revision MAY NOT work at all (and if it does, Elder tracking won't work). With that said, feel free to test and note any issues you discover, with the exception of Elder tracking not working (I didn't touch that at all).
Please note that though these files have been added, nothing has changed yet in the main system to support this separation... i.e. no files have been removed and no files have been changed in the main system for this.