Code Monkey home page Code Monkey logo

modifiedpoweraurastbc's Introduction

Modified Power Auras (MPOWA)

What is Modified Power Auras?

Modified Power Auras is the advanced version of the AddOn Power Auras. It is a lot more powerful and provides every possible function that could be backported from cataclysm. Plus it provides some custom features that are very helpful.

What are the advantages of Modified Power Auras?

  • Use Icons instead of symbols
  • More performant
  • Show stacks of auras
  • Show enemy buffs and debuffs
  • Show your buffs and debuffs
  • Show cooldown on trinkets or abilities
  • Customize your aura and its position on the whole screen
  • Use a lot new conditions to show/hide auras
  • Play a sound if a aura is applied or fades
  • Have some nice animations
  • Group them as they appear

Installing Instructions

  • Download the AddOn here
  • Rename the unziped folder to "zzzModifiedPowerAuras"
  • Place the folder into your AddOn directory in your World of Warcraft folder
  • Start the game
  • Type in /mpowa to open the configuration frame
  • Enjoy

How does it look like?

All frames opened (Profile/EditAura/IconFrame):
SG2B0jW.jpg

Auras on testmode:
Testmode

#Support me!#

  1. report bugs that you found.
  2. Suggest improvements.
  3. You can also donate for my projects if you like or consider becoming an patreon.

modifiedpoweraurastbc's People

Contributors

geigerkind avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

Forkers

macumbafeh

modifiedpoweraurastbc's Issues

Test mode: Timers

Any chance for adding timers to test mode(s)?

I have changed those for now as workaround:

GUI.lua

function MPOWA:TestAll()
	if ConfigButton1 then
		if self.testAll then
			self.testAll = false
			for i=1, self.NumBuffs do
				if not self.active[i] then
					MPOWA:ApplyConfig(i)
					_G("TextureFrame"..i):Hide()
					_G("TextureFrame"..i.."_Timer"):Hide()
				end
				self.SAVE[i]["test"] = false
			end
		else
			self.testAll = true
			for i=1, self.NumBuffs do
				MPOWA:ApplyConfig(i)
				_G("TextureFrame"..i):Show()
				if self.SAVE[i].timer then
					_G("TextureFrame"..i.."_Timer"):SetText(self:FormatDuration(10, {minutes = false, hundredth = false}))
					_G("TextureFrame"..i.."_Timer"):Show()
				end
			end
		end
	end
end

function MPOWA:Test()
	if ConfigButton1 then
		if self.SAVE[self.selected].test then
			self.SAVE[self.selected].test = false
			if not self.active[i] then
				_G("TextureFrame"..self.selected):Hide()
				_G("TextureFrame"..self.selected.."_Timer"):Hide()
			end
		else
			self.SAVE[self.selected].test = true
			_G("TextureFrame"..self.selected):Show()
			if self.SAVE[self.selected].timer then
				_G("TextureFrame"..self.selected.."_Timer"):SetText(self:FormatDuration(10, {minutes = false, hundredth = false}))
				_G("TextureFrame"..self.selected.."_Timer"):Show()
			end
		end
		MPOWA:ApplyConfig(self.selected)
	end
end

Auras.lua

function MPOWA:OnUpdate(elapsed)
	LastUpdate = LastUpdate + elapsed
	if LastUpdate >= UpdateTime then
		local p1, p2
		for cat, val in pairs(self.NeedUpdate) do
			if val then
				local path = self.SAVE[cat]
				if path["enemytarget"] and not UN("target") and not UnitIsFriend("player", "target") then return end
				p1, p2 = self:TernaryReturn(cat, "inparty", self:InParty()), self:TernaryReturn(cat, "inraid", UnitInRaid("player"))
				if not self.active[cat] and self:TernaryReturn(cat, "alive", self:Reverse(UnitIsDeadOrGhost("player"))) 
				and self:TernaryReturn(cat, "mounted", self.mounted) and self:TernaryReturn(cat, "incombat", UnitAffectingCombat("player")) 
				and (((p1 or p2) and ((path["inparty"]==0 or path["inparty"]==true) and (path["inraid"]==0 or path["inraid"]==true))) or (p1 and p2))
				and self:TernaryReturn(cat, "inbattleground", self.bg) and self:TernaryReturn(cat, "inraidinstance", self.instance) then
					self.frames[cat][4]:Hide()
					if path["cooldown"] then
						local duration = self:GetCooldown(path["buffname"]) or 0
						if path["cdclockanimout"] and duration<=path["animduration"]+0.4 and duration>=path["animduration"] and (not cdset[cat] or cdset[cat]+0.5<GT()) then
							cdset[cat] = GT()
							self.frames[cat][5]:SetCooldown(GT(), path["animduration"])
						end
						if path["timer"] then
							if duration > 0 then
								self.frames[cat][3]:SetText(self:FormatDuration(duration, path))
								if path["inverse"] then
									self:FHide(cat)
									self.frames[cat][3]:Hide()
								else
									if path["secsleft"] then
										if duration<=path["secsleftdur"] then
											self:FShow(cat)
											self.frames[cat][3]:Show()
										else
											self:FHide(cat)
											self.frames[cat][3]:Hide()
										end
									else
										self:FShow(cat)
										self.frames[cat][3]:Show()
									end
								end
							else
								if path["inverse"] then
									self:FShow(cat)
								else
									self:FHide(cat)
								end
								if not path["test"] then
									self.frames[cat][3]:Hide()
								end
							end
						else
							if path["inverse"] then
								if duration > 0 then
									self:FHide(cat)
								else
									self:FShow(cat)
								end
							else
								if path["secsleft"] then
									if duration<=path["secsleftdur"] then
										self:FShow(cat)
									else
										self:FHide(cat)
									end
								else
									if duration > 0 then
										self:FShow(cat)
									else
										self:FHide(cat)
									end
								end
							end
						end
					else
						self:FShow(cat)
					end
				else
					if path["inverse"] or path["cooldown"] then
						self:FHide(cat)
					end
				end
			end
		end
		for cat, val in pairs(self.active) do
			if val then
				local path = self.SAVE[cat]
				local text, count, timeLeft = "", 0, 0, 0
				if val[3] then
					_, _, text, count, _, _, timeLeft  =  UnitDebuff(val[1], val[2]);
				else
					_, _, text, count, _, timeLeft = UnitBuff(val[1], val[2]);
				end
				self:SetTexture(cat, text)
				if self:IsStacks(count or 0, cat, "stacks") then
					if (count or 0)>1 and not path["hidestacks"] then
						self.frames[cat][4]:SetText(count)
						self.frames[cat][4]:Show()
					else
						self.frames[cat][4]:Hide()
					end
					-- Duration
					timeLeft = timeLeft or 0
					if path["cdclockanimout"] and timeLeft<=path["animduration"]+0.4 and timeLeft>=path["animduration"] and (not cdset[cat] or cdset[cat]+0.5<GT()) then
						cdset[cat] = GT()
						self.frames[cat][5]:SetCooldown(GT(), path["animduration"])
					end
					if path["timer"] then
						if timeLeft > 0 then
							self.frames[cat][3]:SetText(self:FormatDuration(timeLeft, path))
						else
							self.frames[cat][3]:Hide()
						end
					end
					self:Flash(elapsed, cat, timeLeft)
					if (path["inverse"] and path["buffname"] ~= "unitpower") then
						self:FHide(cat)
					else
						if path["secsleft"] then
							if timeLeft<=path["secsleftdur"] then
								self:FShow(cat)
							else
								self:FHide(cat)
							end
						else
							self:FShow(cat)
						end
					end
				else
					self:FHide(cat)
				end
			else
				if not self.NeedUpdate[cat] then
					self:FHide(cat)
				end
			end
		end
		LastUpdate = 0
	end
end

Debuff tick box

When I tick "debuff" I get:
:"MPowa_ConfigFrame_Container_1_2_Checkbutton_Debuff:OnClick":3: attempt to index global 'MPowa_ConfigFrame_Container_1_2_Editbox_DebuffDuration' (a nil value)

But the feature itself works.
This was already present in the last release b47.

"Is Mounted" not working

  1. Create as warlock new Aura with name of the buff "Soul Link"
  2. Check "Is Mounted" as red cross
  3. Aura activated as mounted / unmounted ...

cooldown timer w/ tenths of seconds

If you start a regular cooldown timer it will show 1 at 1 seconds left then wait another second and the icon will disappear.
If you start a cooldown timer with thenths of seconds enabled it will start 1 second ahead and reach 1 second when the cooldown is gone instead of showing 0.x seconds for the last second.

Completely freezing game, forcing you to re-open

I created timers for Scorpid Sting and Hunter's Mark and the game will occasionally fully freeze, not recovering no matter how long I wait which is poop if you're logging because then you lose the logs ^^
I noticed it usually happening when it either reached 1 second or went from 1 to 0 seconds. I'm not sure if Shino is still maintaining this project or not so I'm going to try to figure it out myself, hopefully :P but I decided to make an Issue as well incase he still checks here.

"Mine" modifier is totally broken

Below the buff name there's a "Mine" checkbox saying "indicates if the buff was cast by you". If this option is enabled, it fails to find the buff reliably. Tested with Commanding Shout as a warrior.

Cowtip

When I use ModifiedPowerAuras with CowTip I get:
CowTip-r68121\Appearance\Appearance.lua:299: attempt to call method 'GetObjectType' (a nil value)
everytime I log in.

Both addons continue to work as far as I can tell.
This was already present in the last release b47.

Tracking friendly/group buffs (such as Heroism)

(Foreword: these are more queries, but I do not know how to contact you so I am writing it here. I apologise in advance, and if there is a place I can contact you if I have queries about using your addon, please let me know. As usual - much love!)

Is it possible to track Heroism and other such group-wide buffs with Mpowa? I write in the name of the effect, click 'on myself', yet it doesn't seem to work when a Shaman activates it.

Appreciate your help.

Found reason behind broken modifier buttons!

By default, values such as "in raid instance" default like this:

["inraidinstance"] = 0, -- or 1 for "on"

If you edit the setting, they get changed to this:

["inraidinstance"] = false, -- or true for "on"

This is the reason why the GUI settings bug out and "don't get saved". They need to be saved as 1/0 (and probably others for the "not" inverted mode such as "not mounted"), not true/false. Otherwise they break on the next UI reload.

Dynamic grouping issues + suggestions

Dynamic groups don't seem to group the icons properly together most of the time, misplaces or overlaps them.
Not sure how to be more descriptive I'm afraid, the function sadly doesn't seem to work properly atm.

These aren't bugs, but I thought i'd include it anyway;

  1. It'd be nice to be able to adjust the stack font size, since it's nearly unreadable depending on icon size.
  2. The "cooldown clock" effect would be a nice addition for at-a-glance viewing if a buff is about to expire.

Appreciate this mod a lot though, heaps better than stock PA or TMW ๐Ÿ‘

Bugs and improvements

First of all I want to thank You for this addon. You did a great job! Here are few bugs I found and a few suggestions to improve the addon.

Bugs
1.) If You create some auras and reconect, auras works, but they didn't show up in a aura menu.
2.) If You add some auras and delete all of auras after and want to add some new ones, You have to klick several times when they show up in a menu. They are propably hidden.
3.) If You click on edit aura and change aura in a menu, You are still editing the first aura you opened. You have to click again on "edit aura".
4.) If You want to open RGB circle of colors in own timer setup, You can't move with a small circle and choose what color You want, but you have to simply click in some place.

Suggestions for improvements
1.) Add ability to write direct position of an aura.
2.) Add ability to write direct RGB color for timer color.
3.) Add ability to write direct path to sound.
4.) Add vertical grow of dynamic group.
5.) Add ability to make icons gray. For example for auras whoes not active at the moment.

Some of the abilities and buffs icons are missing, but didn't looking for all of them. For example Commanding Shout icon is missing. Perhaps create check box for using automaticaly buff/debuff icon.

Sounds don't work

Using mpowa picking sounds yet they don't seem to work. I will select sound to play when aura fades out/in, but none of them work. Awesome add-on otherwise!

Mpowa

Any chance to add bars so we can track buffs/debuffs similar to class timer?

"In party/in raid/in battleground" modifiers broken

They don't always get saved when modifying auras.

Sad to say it but this addon is too buggy to use. Anything beyond the default Aura / Invert Aura / Timer features is broken.

Edit: The cause was found and reported as #30. Hopefully MPOWA becomes more usable after that! <3 I still like this addon... and really want it to work.

Thoughts on December Update

Hi Tom, I've been reviewing the code and having some thoughts and findings... hehe.

  1. PROBLEM Tooltip warning about "Mine" needs to be added to the german translation too: https://github.com/Geigerkind/ModifiedPowerAurasTBC/blob/master/localization/deDE.lua#L155

  2. NEW BUG? The changes to "alpha" transparency progress calculation are good, since they prevent division by zero. But after the update, self.progress is never updated if duration is 0. That may cause problems? Most likely the code should be changed to if (self.duration > 0) then ... else self.progress = "fully complete"; end?

  3. COMMENT The IsMounted() API is weird in TBC. I just checked the function. It returns nil when not mounted and 1 when mounted, (as also described here in Vanilla's API). So yeah, I guess the fix is appropriate! I always get nervous when I see api() ~= nil. I may have written that as api() and true or false so that any "truthy" value will set it to true and anything like false/nil will set it to false. But it's fine... the ~= nil check works too...!

  4. PROBLEM The MPOWA.mounted flag does not update itself often enough. It's often still false for a loooong time while IsMounted() is true, which means "don't show when mounted" auras can stay for a loooong time on screen. Sadly there doesn't seem to be any ingame event you can register to react quickly to mounting. Except possibly the "buff aura gained/lost" event, since I think the mount is an aura. You can perhaps register the aura event and if target is "player", update IsMounted(). Hopefully IsMounted() reacts fast enough and provides the correct value during the aura gain/loss events. See here: http://wowwiki.wikia.com/wiki/Events/Buff, for a list of buff-related events. I'm going to guess UNIT_AURA with "if target == player" is a good way to update IsMounted() without CPU impact.

  5. COMMENT What was the cooldown bug? All those "+1 second" were removed? Just curious. Looks weird to suddenly remove them.

  6. NEW BUG? I see that the settings saving bug was fixed! And it was just a simple problem with the "if self.loaded elseif (other events that never run)" if-statement order... Doh! But now I am curious! All of a sudden, all of the code for event == "UNIT_MANA" or event == "UNIT_RAGE" or event == "UNIT_ENERGY" is now running. It wasn't running before (in older versions of MPOWA for TBC), so it caused 0% CPU before. Now it'll take up CPU. But from what I can see, that code is useless. It tracks "unit power/energy/mana" per-unit for yourself and everybody in your raid/party. But there's no feature (that I can find) in MPOWA that actually has "self/unit/target power level" as a condition. I can only make buff trackers. I can't make health/power trackers... So what is this code for? Perhaps those UNIT_MANA UNIT_RAGE UNIT_ENERGY events should just be commented out? Or a "unit mana/rage/energy" aura condition feature should be added? But most likely, just comment out that whole UNIT-block, so that none of that code runs!

<3

Bartender 4

When using bartender 4 and mpowa there is a issue with state configuration. In short when going from stealth to visible there is a "Interface failed because of an addon" error and it is only present with mpowa enabled (no auras created).

Icon Frame emptying

As you change categories in the Icon Frame more and more slots become empty.
404
405

Also if you're taking suggestions I would change the show hundredths into show tenths. I'll call everyone who says he can process hundreths of seconds in a timer live a liar.

Auras gone after relog

I can't seem to be able to save auras, every time I relog they are gone, I save profiles, but importing them doesn't work also. Any ideas?

Ratingbuster

When I use ModifiedPowerAuras with RatingBuster I get:

TipHooker-1.0-90052:241: attempt to call method 'GetObjectType' (a nil value)
AceAddon-2.0-91091 (Grid):983: in function <...rface\AddOns\Grid\libs\AceAddon-2.0\AceAddon-2.0.lua:976>
: ?
AceEvent-2.0-91091 (Grid):260: in function `TriggerEvent'
AceEvent-2.0-91091 (Grid):910: in function <...rface\AddOns\Grid\libs\AceEvent-2.0\AceEvent-2.0.lua:903>

RatingBuster won't work at all ModifiedPowerAuras works fine.
This was already present in the last release b47.

Static animations

I'm trying to apply a glowing effect while the buff is active, but i only see the options about starting or ending animation.

Can you add this? :) thanks ๐Ÿ‘

Client crash, possible addon conflict?

I set up an aura for a short-duration buff (Slice and Dice, to be exact) and if I enable the timer flash with 5 seconds remaining, sometimes when it reads 3, the game will freeze. Afterwards, if I alt-tab and re-click the game window, it will close on its own, I don't get the blizzard crash box. I disabled all other addons, then testing yours with each one enabled, one by one, yet it was working ok once they were all enabled, so that was inconclusive. I then went back to Shattrath, vendored some stuff, mailed an item (I have both the VendorValues and Postal addons), then I flew to Telaar in Nagrand, made some poisons, and headed out to kill/skin some beasts. Killed a Cleftoof Bull, no issue. Killed 2 talbuks w/ Slice and Dice + Blade Flurry active (I also made an aura for BF using the timer flash setting), and it crashed when the SnD timer reached 3. At first I thought it was a combination of the timer flash + and ending animation, but I turned off the ending animation for SnD, attempted to kill another Clefthoof, and it happened again. Going back to NeedToKnow/TellMeWhen until you can figure it out and fix. Thanks.

can't get it working

Hi,

i followed the setup from the readme and renamed the folder and did setup a effect for Shadow Trance, but when it procs, it doesn't show it.

tested it with and without other addons, any suggestion?

forbidden function CastSpellByName

Greetings!

Thanks for this great addon, as it enhances the standard PowerAuras noticeable.
but ;-)
I got an error after executing the following macro:

/castsequence reset=combat/60 Strength of Earth Totem, Grace of Air Totem, Mana Spring Totem, Searing Totem
(placing all four totems in a sequence)


["message"] = "Error: AddOn zzzModifiedPowerAuras attempted to call a forbidden function (CastSpellByName()) from a tainted execution path.",
["count"] = 28,
["addons"] = " AckisRecipeList, v0.9372\n AllPlayed, v20400-2 110\n Aloft, vr416\n Altoholic, v2.4.016\n Atlas, v1.12.0\n AtlasBattlegrounds, v1.12.0\n AtlasDungeonLocs, v1.12.0\n AtlasFlightPaths, v1.12.0\n AtlasOutdoorRaids, v1.12.0\n AtlasLoot, v|cffFF8400AtlasLoot Enhanced v4.06.04|r\n AucAdvanced, v5.0.0\n AucFilterBasic, v5.0.0 (BillyGoat)\n AucStatClassic, v5.0.0 (BillyGoat)\n AucStatHistogram, v5.0.0 (BillyGoat)\n AucStatPurchased, v5.0.0 (BillyGoat)\n AucStatSimple, v5.0.0 (BillyGoat)\n AucStatStdDev, v5.0.0 (BillyGoat)\n Auctionator\n Auctioneer, v5.0.0\n Bartender4, v4.0\n BeanCounter, v5.0.0 (BillyGoat)\n Cartographer, vr2250\n CartographerBattlegrounds, v2.0\n CartographerCoordinates, v2.0\n CartographerGroupColors, v2.0\n CartographerGuildPositions, v2.0\n CartographerInstanceLoot, v2.0\n CartographerInstanceMaps, v2.0\n CartographerInstanceNotes, v2.0\n CartographerLookNFeel, v2.0\n CartographerNotes, v2.0\n CartographerPOI, v2.0\n CartographerProfessions, v2.0\n CartographerWaypoints, v2.0\n CartographerZoneInfo, v2.0\n CensusPlus, v4.1.8\n Chinchilla, v1.0r80034\n ClearFont2, v2.4\n CombatLogReset, v1.1\n Critline, vv5.2.4\n DrDamage, v1.5.0\n ElkBuffBars, v2.1\n Enchantrix, v5.0.0\n EnchantrixBarker, v5.0.0 (BillyGoat)\n EnhTooltip, v5.0.0\n EveryQuest, v13\n FishingBuddy, v0.9.4l\n FuBarAtlasFu\n FuBarClockFu, v3.0\n FuBarCritlineDmg, v1.2.4\n FubarCritlineHeal, v1.2.4\n FuBarDurabilityFu, v2.0\n FuBarEmoteFu2, v0.1.5\n FuBarExperienceFu, v1.1 $Revision: 65606 $\n FuBarFactionsFu, v2.2\n FuBarFriendsFu, v2.4\n FuBarGuildFu, v2.4\n FuBarImpulseStatsFu, v0.3b\n FuBarLocationFu, v3.0\n FuBarMoneyFu, vv1.1\n FuBarPerformanceFu, v2.0\n FuBarRecountFu, v3.4\n FuBarRoutesFu\n FuBarSpeedFu, v2.0.$Revision: 55081 $\n FuBar, v90003\n Gatherer, v3.1.2\n GatherMate, v1.0\n HealBot, v2.4.3.16\n Informant, v5.0.0\n ImpulseBooster, v3.1\n LightHeaded, v274\n MikScrollingBattleText, v5.2.14\n MobInfo2, v3.61\n zzzModifiedPowerAuras\n oGlow, v1.12\n Omen, vOmen r79486 / Threat-2.0 r90000\n OmniCC, v2.1.1\n Postal, v2.1 |cffff8888r79759|r\n Prat, v2.0 79344\n Quartz, v0.1.0\n QuestGuru, v0.9.3\n QuestHelper, v0.54\n Recount, v79128\n Routes, v1.0\n ShadowedUnitFrames, vBackport v.01 from v3.2.12-5-g3fb7edd\n SharedMedia, v3.0\n SharedMediaAdditionalFonts, v1.0\n SilverDragon, v2.0.65654\n Stubby, v93\n Swatter, v5.0.0\n Talented, v1.3\n TotemTimers, v8.1d\n TradeskillInfo, v1.0.144\n xDamageFont, v20400\n XLoot, v0.9\n DBMAPI\n",
["timestamp"] = "2017-06-03 16:59:10",
["context"] = "AddOn: zzzModifiedPowerAuras",
["stack"] = "[C]: in function CastSpellByName'\nInterface\\FrameXML\\ChatFrame.lua:692: in function <Interface\\FrameXML\\ChatFrame.lua:624>\nInterface\\FrameXML\\ChatFrame.lua:842: in function ?'\nInterface\FrameXML\ChatFrame.lua:3032: in function <Interface\FrameXML\ChatFrame.lua:3003>\n[C]: in function ChatEdit_ParseText'\nInterface\\FrameXML\\ChatFrame.lua:2770: in function ChatEdit_SendText'\nInterface\FrameXML\ChatFrame.lua:1921: in function <Interface\FrameXML\ChatFrame.lua:1914>\n[C]: in function UseAction'\nInterface\\FrameXML\\SecureTemplates.lua:266: in function SecureActionButton_OnClick'\n[string ":OnClick"]:1: in function <[string ":OnClick"]:1>\n(tail call): ?\n[C]: in function `securecall'\nInterface\FrameXML\SecureStateHeader.lua:1052: in function <Interface\FrameXML\SecureStateHeader.lua:1033>\n",
}, -- [50]


When i disabled zzzModifiedPowerAuras the macro worked fine.

Should be an event for entering combat

When entering combat the "In Combat" flag takes time to trigger.

There should be an event to check auras when entering combat. It seems like there is a timer that checks to check for auras that should be active, there should be a trigger for entering and exiting combat.

Timer

Since release b48 whenever I use an aura with a timer it will give me:
zzzModifiedPowerAuras\Auras.lua:162: attempt to index global 'path' (a nil value)
zzzModifiedPowerAuras\Auras.lua:121: in function `OnUpdate'
zzzModifiedPowerAuras\Start.lua:242: in function <Interface\AddOns\zzzModifiedPowerAuras\Start.lua:242>

The icon will show up without a timer and continue to spout errors for the whole duration.

As a side note: After I suggested to change the hundredths to tenths you changed the text in the menu but the option still enables hundredths to be shown.

Invert(missing buff).

Hello.
"invert" option doesnt work in latest release. I tried to delete wtf \ zzzModifiedPowerAuras.lua and redo aura patterns but still no succes. The icon never disappears from the screen, even if you already have a buff. Before the upgrade everything worked fine.
Thank you in advance.

Conflict with Recount

I think this one conflicts with Recount. When I cast a spell that I track with mpowa, I get an "attempt to call global 'time' (a nil value)", line 1663. If I cast one I am not tracking everything works ok.

Edit: This happens when you place auras in group

[Feature request] reactive spells and abilities

Currently you can only track a cooldown of an ability or spell.
Spells like Revenge ( http://tbc-db.tk/?spell=11600 ) have a cooldown and on top of it they are only useable under special circumstances (Revenge must follow a block, dodge or parry).

Other reactive spells:

Is it possible to add a check for reactive spells and abilities?
The addon "Mik Scrolling Battle Text" shows a notification if Revenge/Overpower is usable. So in general it should be doable.

"In Combat" flag (and possibly others) resets every relogin

Thanks a lot for porting MPOWA to TBC! There's an annoying bug, though:

Create an aura to show "Battle Shout" (or any other long-term, timed buff), when: "Invert (show icon when aura is missing), Is Alive, In Combat". The point is to show the icon if I don't have that buff while I'm in combat.

But every time I relogin, the aura shows up on screen and when I enter /mpowa I see that "In Combat" has become unchecked. This happens every reload/relogin...

No Icon for Shadow Priests

Can you add Icons for Shadow Word: Death, Consume Magic, Mass Dispel, Shadow Fiend. Thanks in Advance and thanks for this nice Addon

[Feature request] Pet buffs and debuffs

Hello, first of all thanks for this addon.

Can you please make a feature to show aura when player pet has certain buffs or debuffs. Or lets say when unit with specific name has a buff or debuff. Actualy both of this features will be usefull.

What I exacly want is to show aura when Mend Pet is active on my pet.

More texture options?

Hello,
Is it possible to add better position options. Like we current have only position X/Y and Size. But there is no Symmetry and Deformation. So if i want to swap some texture upside down atm is not possible?
Not sure why but these options are missing, we had it even in very old versions.
Hmm I tried again atm but I cant rotate for example textures, cant stretching it(not sure about right word sorry), cant expand if is too thin etc. Im not sure if all this can be possible with Symmetry and Deformation options, maybe im missing also something. But there is no point from these awesome textures if we can't modified it.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.