- Note: At the moment, the Bag and Menu Bars portion of Macaroon Xtras is broken for 3.0.8. Just disable that add-on and don't worry about it. If you're having trouble finding the minor edit you need to perform to get the main Macaroon add-on working again after of the change to secure templates, drop me an email and I'll explain it.
The solution is custom conditionals on a new Macaroon bar.
For those of you new to Macaroon that haven't figured out how to make a pet bar, here's now: Start by typing "/mac create bar" (or use the menu item "Create Bar"). A transparent blue box will appear in the middle of the screen which is your new bar. Right-click on it and on the right-hand side of the menu that appears will be full of little checkboxes, one of which says "Pet". Click that checkbox to flag this bar as a pet bar. Now click on the little arrow button in the lower-right-hand corner, and at the top of the next menu change the text to read "Pet Bar" because we want things labeled neatly in case we want to find them later with ButtonFacade or something. Lastly, since all new bars start with no buttons attached (don't forget this!) we now have to add some, so click the arrow-buttons again to go back to the first menu pane and then click "Button Count"--now scroll up or left-click until you've got ten buttons and then middle-click or move your mouse out of the bar area to stop changing button count. By default the new buttons should actually be assigned to pet action id (a.k.a. "pet id") one through ten, but in case they don't if you select Button Edit from the Macaroon menu, you can then click on them to cycle through whether or not they say "action", "macro", or "pet id:#". Make sure they all say "pet id:" and some number.
- Note: While you might think you can do something clever like add fourteen buttons to the pet bar, and then edit the last four to be "normal" macro buttons and drop some macros in there, some bug/oddity in Macaroon causes the entire pet bar to be repeatedly (but not always) reset to contain only pet buttons.
Now that you have your relatively plain pet bar, we're going to make a magic pet bar that'll go right next to it which will hold our wonderful new macros and generally make life easier. So, again click Create Bar from the Macaroon menu or type "/mac create bar" to get a new pet bar on the screen, then right-click it and put a checkmark next to "Custom" which enables custom states. Click the little arrow buttons to go to the second menu pane and name the bar "Magic Pet Bar". Finally, at the bottom of the second menu pane you'll see a large text-entry box labeled "Custom States". Paste exactly the following into it (you may edit it later):
[bonusbar:5]hide
[mounted]hide
[pet:Cat]show
[pet:Gorilla/Raptor]show
[pet]show
[nopet]show
hide
Each of these lines contains one conditional test (inside the square brackets) and one result (to the right of the brackets). If the bit that inside the square brackets ("[ ]") is true, then the stuff to the right of it is what happens, and it'll stop working it's way down the list the moment the first one that's true is found. The strange "[bonusbar:5]hide" part is there to avoid a conflict with the Vehicle UI--if you're in a vehicle, then [bonusbar:5] is true, which then makes this state one to hide. If you're on your mount, then [mounted] is true and that will make this bar hide in this state. If your pet happens to be a Cat, then [pet:Cat]show makes the bar appear. If you want the same state to apply to more than one pet, you simply separate the pet names with slash, like "Gorilla/Raptor". You want [pet]show there for when you have a pet which doesn't fit into any of the groups you've just defined (because you neglect your wasp terribly) which can happen more often than you'd expect--there are a few quests out there that give everyone temporary pets. Finally [nopet]show makes this bar appear when you don't have a pet. The hide statement at the end is simply a catchall that will keep the bar hidden should none of these conditions be true (and you probably messed up somehow).
Now comes the fun part. Click the "Done" button so this giant mess of custom stateness will be saved. In Button Edit mode start left-clicking on the bar and you will see the bar change through each of these custom states! You may now have an entirely different set of buttons appearing on this bar for each of these custom states--simply select Button Count while the bar is set to a specific state and add some button slots just like you would with any new bar.
Now decide which of those pet conditionals you're going to change (because I know you're going to if you didn't already ignore me when I said "paste exactly") and change them now to avoid a bug in Macaroon. Each conditional is assigned to an array element and the button settings are tied to that array and not the conditional, so if you insert a new conditional at the top of the list and your cat buttons which may have been third in the list of states before will still be third in the list of states, but that third state might now be [pet:Gorilla] instead of [pet:Cat] and you'll have to go fix all the states again. There is another bug in Macaroon you should be aware of... If you ever see the state listed as "custom homestate" or saying "(not indexed)" it's because the editor has freaked out--just keep left-clicking until the thing changes to a state you recognize. Any changes you make to the bar while it's showing either of those two things won't work properly and may appear over the top of other states (and will not be editable, requiring you to delete the entire bar and start it all over again).
I strongly suggest this Magic Pet Bar be the place where you put your Dismiss Pet button, a Mend Pet button, the macro for FizzWidget's Feed-O-Matic (or just your own Feed Pet macro) and your Master's Call macro, just for starters. The nopet state is a good place to put Beast Lore, Tame Beast, Call Pet and probably Revive Pet as well. It's also probably worth mentioning that you should stick the "common" buttons like Dismiss Pet on one end of the Magic Pet Bar in each applicable state so they'll always be in the same order and relative position on your screen.
No comments:
Post a Comment