Wonderous Wavewhisker as a Swimming mount macro

TL;DR:

Is there a function to check if I am sitting on top of the water?


Full story:

I normally just use the Random mount function, but due to Wonderous Wavewhisker not being recognized as a swimming mount it will not be summoned while swimming.
This would be really handy for normal flying zones so I can be swimming and fly straight away.

So I created a basic mount macro:

#showtooltip Wonderous Wavewhisker
/use [swimming] Wonderous Wavewhisker
/stopmacro [swimming]
/click MountJournalSummonRandomFavoriteButton

Due to a bug it will not work until you open the journal at least once.


Next I ā€˜upgradedā€™ it a little bit to avoid the bug:

#showtooltip Wonderous Wavewhisker
/run local id; if IsSubmerged() then id = 1692 else id = 0 end; C_MountJournal.SummonByID(id)

I noticed that it didnā€™t work if floating IE sitting on top of the water. It would also summon the Wonderous Wavewhisker, which is bad for dragon flying zones where you want to swap mounts when out of the water.


So I created this macro to check for breathing timer bar (Not as good as random summon still because even if you have the breathing timer but you are close to the top it will still summon your dragon):

#showtooltip Wonderous Wavewhisker
/run local id; if GetMirrorTimerInfo(2)==ā€œBREATHā€ and IsSubmerged() then id = 1692 else id = 0 end; C_MountJournal.SummonByID(id)

Which works UNLESS you have an underwater breathing buff. Which I guess is probably rarer but will not work in zones where you might have breathing


So I was wondering if anyone knew another way to check for IsFloating() etc? Or even a better way than what I am doing now (Iā€™m not very good at this stuff TBH but want to improve)

There is probably addons out there for it but I this old fossil kind of feels like I already have way to many and prefer to make macros where I can (though feel free to suggest them)

Syntax in the first one is incorrect, [swimming] needs to come before the mount name in the /use

As for addons, LiteMount likely does what you want.

Iā€™d just take the first one and include a modifer as an override to the swimming condition.

#showtooltip Wonderous Wavewhisker
/use [nomod,swimming] Wonderous Wavewhisker
/stopmacro [nomod,swimming]
/run C_MountJournal.SummonByID(0)

You donā€™t need the stopmacro as the act of mounting one mount will block the 2nd attempt from happening.

1 Like

Thatā€™s my draft version I actually corrected it earlier :stuck_out_tongue: silly me uploaded from my running note pad file :rofl:

Thanks for the suggestions. Iā€™ve seen that pretty much everywhere under the mount addon recommendation, I probably should give it a try :slight_smile:
The other one I was going to try if I couldnā€™t get a fix is called Worgan Mount or something like that BUT I kind of have a work around.


Basically the breath conditional Iā€™m pretty happy with, not the best, not the worse but I set one swimming mount to favorites (I took them off for testing).
So now when Iā€™m on my Warlock and have underwater breathing it will just use the normal swimming mount instead of my Wavewhisker but at least itā€™s doing what I want 99% of the time.

I was considering just making the mod conditional though but I was thinking of using that for my tmog mount as its taking up a slot on my bars :thinking:

I gave this a whirl and it only used Wavewhisker in Valdrakken, did you mean like this (Iā€™m not in game anymore so canā€™t test it):

#showtooltip Wonderous Wavewhisker
/use [mod,swimming]Wonderous Wavewhisker
/run C_MountJournal.SummonByID(0)

I normally use the stopmacro to prevent it dismounting and remounting if they are different actions (Not 100% sure if run/use will do it though, itā€™s been a minute).


Side note: I saw the ``` thatā€™s a awesome way to do a block quote! Iā€™ve learnt something new :slight_smile:

1 Like

Oh lol, I cut the conditions over to the stopmacro rather than copying them, thanks mobile.

#showtooltip Wonderous Wavewhisker
/use [nomod,swimming] Wonderous Wavewhisker
/stopmacro [nomod,swimming]
/run C_MountJournal.SummonByID(0)

``` is for code, block quotes are >

words

1 Like