HereBeDragons-1.0

HereBeDragons is a data API for the World of Warcraft mapping system

HereBeDragons offers a clean and modern API to retrieve the players position, calculate distances and angles between positions, both in global world coordinates and local zone coordinates. The primary goal of this library is to provide an up-to-date and low maintenance alternative to the legacy map libraries like Astrolabe and LibMapData, which both unfortunately are unmaintained and have their own issues due to changes in WoWs API.

On top of a clean API for all map math, HereBeDragons will also provide a second library, HereBeDragons-Pins, which replaces the world map and minimap pin management functionality of Astrolabe. This library is roughly based on the pin management code from GatherMate2, which has been thoroughly tested in years of use.

API:
API/HereBeDragons-1.0
API/HereBeDragons-Pins-1.0

You must login to post a comment. Don't have an account? Register to get one!

  • 3 comments
  • Avatar of burny_dd burny_dd Oct 05, 2015 at 08:42 UTC - 0 likes

    Not quite. What I'm missing with just UnitPosition(unit) is the handling of the coordinate transformation and the override IDs.

    Basically what I'm wishing for is:

    function HereBeDragons:GetUnitWorldPosition(unit)
        -- get the current position
        local y, x, z, instanceID = UnitPosition(unit)
    
        -- return transformed coordinates
        return applyCoordinateTransforms(x, y, instanceID)
    end
    

    The first rule of Tautology Club is the first rule of Tautology Club.

  • Avatar of Nevcairiel Nevcairiel Oct 02, 2015 at 07:13 UTC - 0 likes

    @burny_dd: Go

    You can just use UnitPosition, the x/y value it returns are the same as HBD:GetPlayerWorldPosition would give you.

  • Avatar of burny_dd burny_dd Sep 30, 2015 at 09:00 UTC - 0 likes

    Thanks for the library. :-) I was waiting impatiently for LibMapData to update to get one of my addons running properly again.

    The transition to HereBeDragons went smoothly. I'm just missing a query function to get the position for a valid unit string. So far you provide that only for the player with GetPlayerZonePosition() but I need party or raid units also. Any chance for adding this in the future?

  • 3 comments

Facts

Date created
Aug 16, 2015
Categories
Last update
Oct 26, 2016
Development stage
Release
License
BSD License
Curse link
HereBeDragons-1.0
Reverse relationships
20
Downloads
61,444
Recent files

Authors

Relationships

Embedded library
CallbackHandler-1.0
LibStub