Sunday, October 28, 2012

mounts, why are they so hard.

Ever since 5.0 came out, I have been trying to mange the mounts properly. In 4.x, what I had done was set up this macro for riding mounts. I mostly wanted Kuan on raptors, with some exceptions (Zulian Tiger, Qiraji Battle tank), and on drakes. To get that in a macro, I just used the order in which they appear in the mount list:

/run if IsMounted() then Dismount() return end local t={5,8,9,16,20,21,31,43,46,47,48,52,52,55,60,61} CallCompanion("MOUNT",t[random(#t)])
/dismount

to save buttons, I wanted flying and Vashj'ir on the same macro:

/run if not IsMounted() then local t={4,13,15,30,37,38,39,42,42,56,61}; local mapid={610, 614, 615}; for z,n in ipairs(mapid) do if (n==GetCurrentMapAreaID() and IsSwimming()) then t={1} end end CallCompanion("MOUNT",t[random(#t)]) end
/dismount

I used the IDs becuase the names popped it way past 255 char limit on macro.  Note the above macros are for Kuan, but only the value of t changes for Eeyan.

However with 5.0, this doesn't work.  Blizzard combined the mounts - shifting the IDs - and moreover, reorders the mounts based on zone, instead of keeping them in a consistent ascii order.  ...I found it pretty distressing to have Kuan tumble off the edge of the top of Orgrimmar, becuase he's really on a Purple Skeletal Warhorse instead of a Rusted Iron Proto-drake.

it turns out there aren't actually, a lot of addons with this kind of functionality: randomly select from a user-selected subset of all mounts based on character!  they are all about auto selecting this and that based on zone and flying and whatnot, which I really just don't need.  I finally found Yay Mounts (creative name, I know), but while it could be keybound, it had no macro - and I've discovered I am seriously used to clicking a button, for mounting - keybindings are for battle, right...

anyhow now Yay Mounts lets you put /click YayMountsButton in a macro, so I'm going to do that.  for ground-only there's a /click YayMountsButton2 - but the '2' button doesn't handle dismounting right, so the macro has to be:


/click [nomounted] YayMountsButton2
/dismount

now I just have to set it up all properly for all my characters.

No comments: