r203

Details

  • Filename
    LibTourist-3.0-r203-alpha.zip
  • Uploaded by
  • Uploaded
    Aug 5, 2018
  • Size
    82.49 KB
  • Downloads
    179
  • MD5
    b9c4bb7e599ad561e9bd3a6380f1bd90

Supported WoW Versions

  • 8.0.1

Changelog

------------------------------------------------------------------------
r203 | Odica | 2018-08-05 22:14:33 +0000 (Sun, 05 Aug 2018) | 1 line
Changed paths:
   M /trunk/lib.xml

...almost. Fixed the path to CallbackHandler in lib.xml
------------------------------------------------------------------------
r202 | Odica | 2018-08-05 21:57:45 +0000 (Sun, 05 Aug 2018) | 27 lines
Changed paths:
   M /trunk/.pkgmeta
   M /trunk/LibTourist-3.0.lua
   M /trunk/LibTourist-3.0.toc
   M /trunk/lib.xml

- added packager external for CallbackHandler and HereBeDragons
- gathered references in lib.xml
- removed obsolete commented code

! THIS IS TEST COMMIT to see if I managed to include HBD correctly...

API CHANGES
-----------

RESTORED FUNCTIONS

- Fixed GetBestZoneCoordinate using the C_Map API. GetBestZoneCoordinate no longer needs parameters and returns an additional fourth value: uiMapID.
- Fixed GetYardDistance using HBD for locations within the same continent, additional return values: delta X and delta Y.
- Fixed GetZoneYardSize using HBD
- Fixed TransposeZoneCoordinate using HBD

REMOVED FUNCTIONS

- Removed GetMapAreaIDByContinentZone
- Removed GetZoneMapIDFromTexture
- Removed GetZoneFromTexture
- Removed GetEnglishZoneFromTexture
- Removed GetZoneYardOffset

SUSPENDED FUNCTIONS

- GetFishingLevel returns 0 for now, minimum fishing skills are incorrect or maybe even obsolete; to be analyzed
------------------------------------------------------------------------
r201 | Odica | 2018-07-28 22:23:28 +0000 (Sat, 28 Jul 2018) | 119 lines
Changed paths:
   M /trunk/LibTourist-3.0.lua

- Added a function GetContinentMapID which uses the map hierarchy in C_Map to get the continent uiMapID for any uiMapID. It is called by GetMapNameByIDAlt to get the continent ID for GetUniqueZoneNameForLookup. This way GetMapNameByIDAlt can return a unique localized zone name for all uiMapIDs of a zone (a zone can have multiple uiMapIDs due to phases or floors).
- All lookup methods that take a unique localized zone name as input, now also accept uiMapIDs. See API changes below.
- Fixed a bug in GetLevelString and GetBattlePetLevelString that caused these functions to return the string "nil" in some cases.
- Fixed IterateBorderZones which unnecessarily used yard data to identify a connection as a zone. This failed because yard data is not available. Now uses Tourist:IsZone.
- Restored localization for 14 zones which occur in LibTourist but have an areaID instead of a uiMapID.
- Corrected spelling for Dire Maul East, North and West

API CHANGES

New functions:

- Tourist:GetMapIDLookupTable() - returns the lookup table with all uiMapIDs as key and the english zone name as value
- Tourist:GetContinentMapID(uiMapID) - returns the uiMapID of the continent for the given uiMapID. Searches up through the C_Map hierarchy until the continent is found.
- Tourist:IterateArgus() - Iterates through the unique localized names of all zones that have player levels defined and are on the Argus continent.
- Tourist:IterateZandalar() - Iterates through the unique localized names of all zones that have player levels defined and are on the Zandalar continent.
- Tourist:IterateKulTiras() - Iterates through the unique localized names of all zones that have player levels defined and are on the Kul'Tiras continent.
- Tourist:IsInArgus(zone) - Returns true if the zone is on the Argus continent.
- Tourist:IsInZandalar(zone) - Returns true if the zone is on the Zandalar continent.
- Tourist:IsInKulTiras(zone) - Returns true if the zone is on the Kul'Tiras continent.

Changed functions:

- Tourist:GetMapContinentsAlt - now returns a table with the uiMapID as key and the localized Continent name as value
- Tourist:GetMapZonesAlt - now returns a table with the uiMapID as key and the localized Zone name as value
- Tourist:GetMapNameByIDAlt - parameter must be a uiMapID
- Tourist:GetUniqueZoneNameForLookup - continent ID parameter must be the uiMapID
- Tourist:GetUniqueEnglishZoneNameForLookup - continent ID parameter must be a uiMapID
- Tourist:GetTexture - as texture names are no longer used by C_Map, this function now returns the uiMapArtID, but only for the uiMapIDs known in the LibTourist zones collection (use Tourist:GetZoneMapID)
- Tourist:GetContinent - return value should now be localized

Important change for all lookup functions:

All lookup functions that previously required a unique localized zone name, instance name or complex name as provided by LibTourist, now also accept uiMapID as input. If an ID is passed the lookup functions use GetMapNameByIDAlt to convert the uiMapID to the zone name.

The following functions can now take a uiMapID as parameter:

DoesZoneHaveComplexes
DoesZoneHaveInstances
GetBattlePetLevel
GetBattlePetLevelColor
GetBattlePetLevelString
GetComplex
GetComplexZone
GetContinent
GetEntrancePortalLocation
GetFactionColor
GetFishingLevel
GetInstanceAltGroupSize
GetInstanceGroupMaxSize
GetInstanceGroupMinSize
GetInstanceGroupSize
GetInstanceGroupSizeString
GetInstanceZone
GetLevel
GetLevelColor
GetLevelString
GetScaledZoneLevel
GetTexture
GetType
IsAlliance
IsArena
IsBattleground
IsCity
IsComplex
IsContested
IsContinent
IsFriendly
IsHorde
IsHostile
IsInArgus
IsInBrokenIsles
IsInDraenor
IsInEasternKingdoms
IsInKalimdor
IsInKulTiras
IsInNorthrend
IsInOutland
IsInPandaria
IsInstance
IsInTheMaelstrom
IsInZandalar
IsPvPZone
IsSanctuary
IsTransport
IsZone
IsZoneOrInstance
IterateBorderZones
IteratePath
IterateZoneComplexes
IterateZoneInstances

NOTE: Not all functions have been tested with uiMapIDs. Please report unexpected results; try to use a unique localized name instead.

Broken functions:

The following functions are still present but will return nil values.
They will be removed eventually if no way can be found to retrieve the required data.

- Tourist:GetZoneYardSize
- Tourist:GetZoneYardOffset
- Tourist:GetYardDistance
- Tourist:TransposeZoneCoordinate

Deprecated functions:

The following functions will be REMOVED from the API in the next version.

- Tourist:GetBestZoneCoordinate - use C_Map.GetBestMapForUnit("player") instead
- Tourist:GetMapAreaIDByContinentZone - obsolete, zoneIndex is no longer in use
- Tourist:GetZoneMapIDFromTexture - obsolete, texture name is no longer in use
- Tourist:GetZoneFromTexture - obsolete, texture name is no longer in use
- Tourist:GetEnglishZoneFromTexture - obsolete, texture name is no longer in use

------------------------------------------------------------------------
r200 | Odica | 2018-07-26 21:58:34 +0000 (Thu, 26 Jul 2018) | 8 lines
Changed paths:
   M /trunk/LibTourist-3.0.lua

Important update: Replaced old continent IDs with new uiMapIDs to make functions
- GetUniqueZoneNameForLookup
- GetUniqueEnglishZoneNameForLookup
- GetMapNameByIDAlt
work properly again.
You need these to get a unique localized zone name for the Lookup functions of LibTourist.
Note: these methods require the new C_Map uiMapIDs, which can be retrieved through the C_Map interface or by calling GetMapContinentsAlt or GetMapZonesAlt of the LibTourist API.

------------------------------------------------------------------------
r199 | Odica | 2018-07-24 09:56:56 +0000 (Tue, 24 Jul 2018) | 107 lines
Changed paths:
   M /trunk/LibTourist-3.0.lua
   M /trunk/LibTourist-3.0.toc

=================
*** IMPORTANT ***
=================

Blizzard has completely removed the old World Map API to replace it by the new C_Map API.
Besides that, all mapID's have been reassigned.

LibTourist has been adapted to use the new C_Map interface, but there are some limitations.

YARDS

The C_Map API does not seem to return any data expressed in yards.
This causes the following LibTourist API functions to be currently BROKEN:

- GetZoneYardSize
- GetZoneYardOffset
- GetYardDistance
- TransposeZoneCoordinate
- GetBestZoneCoordinate

These methods are still part of the LibTourist API but return nil values because zone sizes and offsets in yards can no longer be calculated.
If this can't be replaced by new functionality, the functions will eventually be removed from LibTourist.

TEXTURE NAMES

I haven't found the texture name in the C_Map interface yet, so for now the new uiMapArtID is used instead.
The following LibTourist functions should work, but ONLY if a uiMapArtID is passed as parameter:

- GetZoneMapIDFromTexture
- GetZoneFromTexture
- GetEnglishZoneFromTexture

The uiMapArtID can be retrieved using C_Map.GetMapArtID.
This part of the functionality is still to be revised.

ALL OTHER FUNCTIONALITY

...should be working, though I am currently unable to properly test it.
In this version, TRACING is turned ON (can be disabled by commenting line 29).

=================

TOC
---

TOC version set to 80000.

API CHANGES
-----------

In addition to the API changes mentioned above:

- GetMapContinentsAlt
now returns the new uiMapID as key in the return collection instead of the continent index that was used for SetMapZoom (which has been removed)

- GetMapZonesAlt
now returns the new uiMapID as key in the return collection instead of the zone index that was used for SetMapZoom (which has been removed)

- GetMapNameByIDAlt
now expects a uiMapID as parameter

ADDED
-----

Continents:
- Zandalar (Horde)
- Kul Tiras (Alliance)

Zones:
- Nazmir
- Vol'dun
- Zuldazar
- Stormsong Valley
- Drustvar
- Tiragarde Sound
- Trueshot Lodge (Hunter class hall, Highmountain) because it is reported by C_Map as a 'zone'

Cities:
- Dazar'alor (Horde)
- Boralus (Alliance)

Boats:
- Dazar'alor - Echo Isles (Horde)
- Boralus - Stormwind City (Alliance)

Portals:
- Dazar'alor - Silvermoon City v.v.
- Dazar'alor - Orgrimmar v.v.
- Dazar'alor - Thunder Bluff v.v.
- Boralus - Stormwind City v.v.
- Boralus - Ironforge v.v.
- Boralus - The Exodar v.v.

Dungeons:
- Shrine of the Storm (Stormsong Valley, Kul Tiras)
- Tol Dagor (Tiragarde Sound, Kul Tiras)
- The MOTHERLODE!! (Kezan, The Maelstrom)

Any feedback, tips or test results are much appreciated, thank you.
------------------------------------------------------------------------
r198 | Odica | 2018-01-21 23:59:41 +0000 (Sun, 21 Jan 2018) | 11 lines
Changed paths:
   M /trunk/LibTourist-3.0.lua

- added 8 missing map ID's to lookup table.
- updated all level ranges for zones (and dungeons/complexes) that now scale to the player's level.
- API: function GetLegionZoneLevel has been removed, use GetScaledZoneLevel instead.
- API: added function GetScaledZoneLevel(zone) - returns the player level if player level is  between min and max zone level, otherwise returns min or max zone level.
- API: function GetLevel: added a third return value. Now returns high, low and scaled level. Returns nil for 'scaled' if not applicable, otherwise uses GetScaledZoneLevel to calculate it.
- API: function GetLevelColor: For scaled zones the level color is not determined by the zone's minimum and maximum level, but by it's scaled level (calculated by GetScaledZoneLevel).
- API: IterateRecommendedZones: the list recommended zones is now based on the scaled level of the zones, as calculated by GetScaledZoneLevel.
- API: function GetLevelString: the format for the level string of a scaling zone is now "<scaled level> (<minimum level>-<maximum level>)".

Note: not all min and max zone levels have been verified, please let me know if values are incorrect.

------------------------------------------------------------------------
r197 | Odica | 2017-09-05 21:48:06 +0000 (Tue, 05 Sep 2017) | 1 line
Changed paths:
   M /trunk/LibTourist-3.0.lua

- Corrected typo in Antorus, the Burning Throne
------------------------------------------------------------------------
r196 | Odica | 2017-09-05 19:20:20 +0000 (Tue, 05 Sep 2017) | 2 lines
Changed paths:
   M /trunk/LibTourist-3.0.lua

- Added raid Antorus, The Burning Throne
- Removed altGroupSize value for The Emerald Nightmare and The Nighthold
------------------------------------------------------------------------
r195 | Odica | 2017-09-03 18:33:26 +0000 (Sun, 03 Sep 2017) | 1 line
Changed paths:
   M /trunk/LibTourist-3.0.lua

Fixed a bug caused by unknown player level (probably a timing issue)
------------------------------------------------------------------------
r194 | Odica | 2017-09-02 21:28:45 +0000 (Sat, 02 Sep 2017) | 8 lines
Changed paths:
   M /trunk/LibTourist-3.0.lua
   M /trunk/LibTourist-3.0.toc

- updated TOC to 70300
- added continent Argus
- added zones Krokuum, Antoran Wastes and Mac'Aree
- added dungeon The Seat of the Triumvirate
- renamed Maw of Souls to Hellmouth Cliffs
- renamed Small Battleground C to Shado-Pan Showdown
- added 25 map IDs

------------------------------------------------------------------------
r193 | Odica | 2017-04-08 22:25:05 +0000 (Sat, 08 Apr 2017) | 8 lines
Changed paths:
   M /trunk/LibTourist-3.0.lua

- updated documentation URL
- added lookup mechanism for ZoneMapIDs
- API: added Tourist:GetZoneMapID(zone)
Returns the MapAreaID of a zone based on the zone name. Use unique zone name, see API reference page for details
- API: added Tourist:GetMapAreaIDByContinentZone(continentID, zoneIndex)
Returns the MapAreaID for a given continent ID and zone Index (the index of the zone within the continent)
- API: added Tourist:GetZoneMapIDFromTexture(texture)
Returns the MapAreaID of a zone based on the texture name
------------------------------------------------------------------------