Default Actionbars and ActionButtons
I started updating my actionbars.
https://github.com/zorker/rothui/tre...7.0/rActionBar Found sth really odd with the global cooldown swipe (that 1.5second cooldown). If you move an action button around on screen the global cooldown swipe will stay on its position until you /reload. That is not the case for abilities that actually have a cooldown. Those work fine and move with the button. Is the global cooldown frame different from the normal one? Seems like it is parented differently. *EDIT* Bug is fixed on last Beta build! ~~~~~~~~~~~~~~ Just to note it down somewhere. If you want to test the ExtraActionButton1 go outside of Deathwings instance in Tanaris and enter RaidFinder for the second part. Ultraxxion has that button. Combat is not needed. Button will appear before the fight. If you want to test the override bar you can do the zombie flower game in Silverspine forest (where Dalaran once was). |
Yes, cooldown spirals are rendering incorrectly if their parent frames are moved after the cooldown has played once (but while they are still hidden). After a bit of troubleshooting on IRC we came up with a simple test case which I submitted to Blizzard as a bug report. For now, a useful workaround is to call a function which gets or sets the position/size of the frame. Something as simple as :GetLeft() will trigger the cooldown to render in its correct position again.
|
Well that was quick. Thanks. :)
*edit* Released the first version of rActionBar for Legion: http://www.wowinterface.com/download...ActionBar.html |
Wonder if the cooldown thing is the same reason this bug happens
http://www.wowinterface.com/forums/s...ad.php?t=53469 |
ActionButton1 Template Routing
Code:
ActionButton1 <CheckButton name="ActionButton1" inherits="ActionBarButtonTemplate" parent="MainMenuBarArtFrame" id="1"> Code:
<CheckButton name="ActionButtonTemplate" virtual="true"> Lua Code:
WoW API CheckButton: http://wowprogramming.com/docs/widgets/CheckButton Other bars Code:
--OverrideActionBarButtonTemplate Notable differences: PetActionBar has 3 new objects
StanceBar has one new object
ExtraActionBar ExtraActionButton1 has its own template and thus needs a different style function. ExtraActionButton1.style is the wierd art around the ExtraActionButton1. ExtraActionButton1 has two Textures with $parentname = "Flash". Not sure if that is a bug. |
That's a really lovely overview, Zork! Been rooting a lot around your action bar code to figure out how to easily handle and alter the action bars, haha.
Here's a curious question though. The button textures, at least the normal button texture, it's shown me an awful tendency to be about twice the size of the button itself when replaced with a custom texture. Is that intended? Is it just a bad idea to pass the texture path directly through :SetNormalTexture() ? |
Quote:
You need to adjust the texture size with Lua Code:
|
Yes that is intended. That is because of the default quickslot texture. It is double the size of the actual button. Normally you do this if your border is bigger than your actual button and you want to put it 1:1 over the button without any pixel conversion.
You can easily fix it by doing normalTexture:SetAllPoints(). |
I need some help on macro conditions.
The biggest issues is this mess: https://github.com/tomrus88/Blizzard...roller.lua#L99 That is Blizzard code to change the mainactionbar to the overridebar under certain conditions. Here is the problem. I need to reflect that function only using the macro conditions here: http://wow.gamepedia.com/Macro_conditionals Those are the conditons that make sense: Code:
actionbar:1/.../6 or bar:1/.../6 — Given action bar page is selected. One that shows the OverrideActionBar when actions are loaded into it. And a second one that shows the actions in the MainActionbar if the OverrideActionBar is not used. Currently my conditions are like this: OverrideActionBar Blizzard conditions: Lua Code:
Code:
"[overridebar][vehicleui][possessbar,@vehicle,exists] show; hide" Blizzard conditions: Lua Code:
Code:
"[petbattle][overridebar][vehicleui][possessbar,@vehicle,exists] hide; show" I have no macro condition that reflects the first Blizzard condition where they check for UnitVehicleSkin or OverrideBarSkin. That would problably solve my issue. *edit* One way out may be this right here: https://github.com/tomrus88/Blizzard...onment.lua#L86 Most importantly: HasOverrideUI. That does not exist right? http://us.battle.net/wow/en/forum/topic/7350045197 Any ideas? Sources: Code:
/run local s=SecureCmdOptionParse print(s("[bonusbar]bb;nobb"),s("[canexitvehicle]cev;nocev"),s("[overridebar]ob;noob"),s("[possessbar]pb;nopb"),s("[shapeshift]tss;notss"),s("[vehicleui]vui;novui"),s("[@vehicle,exists]ve;nove")) http://wow.gamepedia.com/Macro_conditionals http://www.wowinterface.com/forums/s...ad.php?t=45083 |
You can take a look at the conditions I use for my actionbars, they should all work, although I haven't tested possessed myself.
|
@p3lim
We are using the same conditions: https://github.com/p3lim-wow/pAction...verride.lua#L5 https://github.com/zorker/rothui/blo...onfig.lua#L210 Currently the issue is no big deal because only one quest may be affected. Just wanted to gather all the information available. Just in case. Btw...where the hell can one find information about valid macro conditionals other than wowpedia? Thank you internet archive: http://web.archive.org/web/201208080...pic/6079671818 Quote:
Some more old sources from MoP http://www.wowinterface.com/forums/s...ad.php?t=44097 http://www.wowinterface.com/forums/s...ht=overridebar http://www.wowinterface.com/forums/s...ht=overridebar |
Quote:
A friend of mine, he's a JS developer IRL, recently tried to write addons for fun, but he was baffled by the fact that there's no official documentation at all. |
Quote:
Rift does have newer APIs than when Zorba was lead API developer, but none of the additions, removals, and changes are documented officially. Of course, as we know, Blizzard has never released official documentation for WoW's API, as as far as I know, no other developer documents their APIs either. MMO developers love their AddOn communities, but don't seem to be inclined to participate. :( |
I checked DuffedUI and to my suprise liquidbase is still using the page-swapping technique that I was using aswell in Cataclysm.
rActionBarStyler Cataclysm https://github.com/zorker/rothui/blo...s/bar1.lua#L34 DuffedUI https://github.com/liquidbase/Duffed...nbars/Bar1.lua Hmmm. I got rid of the page swap because I could not get it working properly in MoP. Benefit is that you can merge the possessbar, vehicle and overridebar into the actionbar1. Basically what can be done is what Tuller wrote here: http://www.wowinterface.com/forums/s...29&postcount=8 Thanks to the additions to the RestrictedEnvironment we can determine the current page in secure environment: https://github.com/tomrus88/Blizzard...onment.lua#L86 Means we can emulate what the actionbar controller is doing aswell: https://github.com/tomrus88/Blizzard...oller.lua#L117 With the exception that we do not load possessbar/overridebar but instead change the page of the first actionbar. http://wowprogramming.com/docs/secure_template http://wowwiki.wikia.com/wiki/Secure...rStateTemplate http://www.wowace.com/addons/libacti...1-0/pages/api/ http://git.tukui.org/Elv/elvui/commi...41c06c21.patch Bigger problem is finding good documentation on how to work with secure environments. |
I tested it. It is in fact still really simple to do. This is all you need:
https://github.com/zorker/rothui/blo...rTest/bar1.lua Currently debating if I want to add it. It helps merging a lot of bars. One does not even need to create a vehicle exit button. One can just reparent the OverrideActionBar.LeaveButton and change its visibility based on the canexitvehicle macro condition. Ok I did change it. Was super easy to implement: https://github.com/zorker/rothui/com...85cc2000a2091d The main part is this macro condition: Code:
"[vehicleui] 1; [possessbar] 2; [overridebar] 3; [shapeshift] 4; [bar:2] 5; [bar:3] 6; [bar:4] 7; [bar:5] 8; [bar:6] 9; [bonusbar:1] 10; [bonusbar:2] 11; [bonusbar:3] 12; [bonusbar:4] 13; 14" Lua Code:
Result: https://github.com/zorker/rothui/blo.../init.lua#L100 |
Quote:
|
Quote:
Usages of the new conditional is something I may dig into another day, if someone doesn't figure it out by then. Enjoy, Zork. Always respect your work and tenacity for documentation clarity. |
"pvptalent" is presumably to check if a given pvp talent is selected in the same way that the "talent" macro condition is used.
[pvptalent:<row#>/<col#>] |
I just uploaded the latest version. Here is what I ended up using:
Page condition: Code:
"[vehicleui]vui; [possessbar]pb; [overridebar]ob; [shapeshift]ss; [bonusbar:1]bb1; [bonusbar:2]bb2; [bonusbar:3]bb3; [bonusbar:4]bb4; [bonusbar:5]bb5; [bar:2]b2; [bar:3]b3; [bar:4]b4; [bar:5]b5; [bar:6]b6; [form]frm; [bar:1]b1; xx" Page Statedriver: Lua Code:
|
Man...just had the error for the first time that someone posted me (1 out of 100 or the like...)
Page swap macro conditions trigger before the actionbar controller functions return the correct bar id. Since there is no condition change thereafter the bar stays on the wrong page. Currently trying to reproduce it. No chance. Always works atm. Error in the matrix. >_< |
All times are GMT -6. The time now is 06:52 AM. |
vBulletin © 2024, Jelsoft Enterprises Ltd
© 2004 - 2022 MMOUI