I have been tinkering with the compass yesterday and found that there is not much to tinker with.
The compass is a black box and there is no way to do most of the things that I want to do.
Some practical example what I would like to be able to do:
- Modify the color and icon of a ping based on its unitTag
- Hide an existing pin based on certain conditions
- Create a custom compass pin for an already existing custom map pin
- Change the label of a compass pin without the need to hook into GetCenterOveredPinInfo
This should be possible if you add the following features to the compass:
- Register, add and remove custom pins
- Modify pin types (e.g. disable, change icon, color, ...)
- Modify individual pins (e.g. hide, change icon, color, alpha, size, label, ...)
Basically getters and setters for everything on the compass. I know that there is a library that can "add" custom pins, but that just creates pin lookalikes instead of adding real pins to the real compass.
I'd also like to have some insight into what the alpha and scale coefficients are supposed to do. I tried a few different values, but couldn't really see any difference.