would anyone want to try writing an addon that indicates the range of active totems on the minimap? Basic functionality would be:
When the player (obviously a shaman) drops a totem, the addon saves the position of the player on the zone map and puts a symbol on the minimap, indicating the totem's position
Draw a circle with the totem's position as center and the totem's range (where applicable) as radius on the minimap
Move circle and totem icon on minimap when player moves around
Remove icon and circle when the totem is destroyed, recalled or expires
Additional features would include:
List of players in group / raid that are out of range, filtered by class (mages won't need a strength totem). I think there are addons out there that already do that, so it's relatively unimportant
Broadcast totem positions and ranges to group / raid so that non-shamans with the addon installed can see the ranges on their minimaps and can check whether they need to change position.
I'd try writing this myself, but I'm packed with work and personal projects as it is. As I understand from the documentation of GetPlayerMapPosition, the obstacle that the API doesn't give coordinates inside of instances has been removed, so with a little coordinate translation magic, this should be possible. Or is there some step in the process of coordinate acquisition and circle drawing that won't work because of API limitations?
It sounds like you're saying the minimap already recomputes and redisplays every geographically fixed feature on the map every time the player moves. I don't believe it. Or maybe you're saying the totem would not be geographically fixed. Seems to me that it should be. No matter, since I'm not gonna be coding it, either way. :-)
I don't think you can "anchor" things on the minimap so you don't have to move them around manually. Case in point: minimap pings. If you click the minimap while running, the ping will be stationary relative to the player blip in the center, not relative to the graphics scrolling along as you run.
It's not really about shaman vs non-shaman. Many totems don't have a corresponding buff so it is problematic to know if you are within range or not be it your own totems or others'. Frankly the reason is beyond me since they seem to share with regular totems that provide auras the need to update at regular intervals. The lack of a visible buff makes it that much more difficult to ascertain range at times. (Think multiple group only cleansing totems Yogg phase 2 for example.) Though I would prefer displaying the information in the form of artificial auras appended to the player buff bar. Using the minimap instead of the conventional place seems impractical to me.
GetPlayerMapPosition does return coordinates inside of instances since at least 3.1.1. But this function returns normalized coordinates between 0.0 and 1.0. Since we only know the totem ranges in yards, we'd have to transform these normalized coordinates into yards as well. For this transformation, we need the actual size of the zone in yards. That size can be extracted from the zone map. Since only WotLK instances have zone maps, such an addon will not work in earlier instances.
Astrolabe provides functions to get the zone coordinates in yards, but it only has the zone sizes for outdoor maps. Someone would have to add them for WotLK instances.
Quote from nailertn »
Though I would prefer displaying the information in the form of artificial auras appended to the player buff bar. Using the minimap instead of the conventional place seems impractical to me.
Nice idea, I haven't thought of "virtual" buffs for totems. Unfortunately, many players use custom buff frames, so it would be a PITA to support them all. Maybe a separate frame (or Databroker addon?) that shows which totems the player is in range of? Anyway, displaying totem ranges on the minimap would still be useful. When the player knows that he is not in range of a totem, he / she still does not know in which direction to move to get in range.
Would be cool to make a little frame that had icons for the different totem buffs that would light up when you have them. You could also use it to filter out buffs you don't care about either on the panel display or the minimap or both.