FocusInterruptSounds
Makes a sound when your current target (or focus**) starts casting. To configure settings type '/fis' (or go to Interface Options).
Also has basic functionality to announce successful interrupts.
** Use with [target=focus] macros for interrupts (Counterspell, Spell Lock, Wind Shear, ...).
The option "Check spell availability" should do that. Although I tend to run with it off, so it might have broken in 5.0. Are you having issues with it?
As a hunter, it's working properly for Silencing Shot. However, it's not checking my pet's interrupts (such as Gorilla's Pummel and Nether Ray's Nether Shock) when I have those pets out.
Technically that's never worked, but it's been on my To-Do list and wasn't too hard. r73 should fix it.
Thank you for that addition in the latest update. Tested it with my hunter and different pets and it seems to working properly.
Wonderful add-on!! Thanks for making it.
Please please PLEASE update this for 5.04 / MoP!
Sorry for the delay. I'll try to fix it this Labor Day weekend.
Well, I tested it out on some mobs on my Mage and Warlock, but it seemed to work fine. I just updated the ToC so it will show as up-to-date. Please let me know if you have problems.
@Twopro
You mean the announce to party/raid? That works for me. Based on this symptom and your error message, I suspect your WoW is somehow busted and doesn't think your pet actually belongs to you. If you type "/target playerpet" does it target your pet? Maybe try reinstalling or just live with it.
@Twopro
I'm unable to reproduce the issue, but based on the trace, I can add some code that will probably make the errors go away. Should be in r70.
also, can u fix FIS to announce spell lock (via fel hunter) ?
@Corg
im not sure what 85 i was playing prob death knight. ya i get these errors constantly. im doing icc10 heroic on a lock and during trash fight as demo im getting
Message: ...AddOns\FocusInterruptSounds\FocusInterruptSounds.lua:895: attempt to compare number with nil Time: 01/12/12 19:25:47 Count: 7 Stack: ...AddOns\FocusInterruptSounds\FocusInterruptSounds.lua:895: in function `FIsPetSpellAvailable' ...AddOns\FocusInterruptSounds\FocusInterruptSounds.lua:1007: in function `?' ...Ons\Ace3\CallbackHandler-1.0\CallbackHandler-1.0.lua:147: in function <...Ons\Ace3\CallbackHandler-1.0\CallbackHandler-1.0.lua:147> [string "safecall Dispatcher[15]"]:4: in function <[string "safecall Dispatcher[15]"]:4> [C]: ? [string "safecall Dispatcher[15]"]:13: in function `?' ...Ons\Ace3\CallbackHandler-1.0\CallbackHandler-1.0.lua:92: in function `Fire' Interface\AddOns\Ace3\AceEvent-3.0\AceEvent-3.0.lua:120: in function <Interface\AddOns\Ace3\AceEvent-3.0\AceEvent-3.0.lua:119>
Locals: self = <table> { SetDefaultModuleLibraries = <function> defined @Interface\AddOns\Ace3\AceAddon-3.0\AceAddon-3.0.lua:383 db = <table> { } Enable = <function> defined @Interface\AddOns\Ace3\AceAddon-3.0\AceAddon-3.0.lua:315 UnregisterAllEvents = <function> defined @Interface\AddOns\Ace3\CallbackHandler-1.0\CallbackHandler-1.0.lua:202 str30YardSpellName = "Shoot" EnableModule = <function> defined @Interface\AddOns\Ace3\AceAddon-3.0\AceAddon-3.0.lua:348 modules = <table> { } GetModule = <function> defined @Interface\AddOns\Ace3\AceAddon-3.0\AceAddon-3.0.lua:231 IterateEmbeds = <function> defined @Interface\AddOns\Ace3\AceAddon-3.0\AceAddon-3.0.lua:458 iInterruptSchool = 32 CheckAndPlaySound = <function> defined @Interface\AddOns\FocusInterruptSounds\FocusInterruptSounds.lua:596 defaultModuleLibraries = <table> { } fCanDispel = true fCanDepoison = false UnregisterChatCommand = <function> defined @Interface\AddOns\Ace3\AceConsole-3.0\AceConsole-3.0.lua:111 strInterruptSpellName = "Spell Lock" FIsCasterOrSpellBlacklisted = <function> defined @Interface\AddOns\FocusInterruptSounds\FocusInterruptSounds.lua:753 fHasPurge = true Printf = <function> defined @Interface\AddOns\Ace3\AceConsole-3.0\AceConsole-3.0.lua:69 NewModule = <function> defined @Interface\AddOns\Ace3\AceAddon-3.0\AceAddon-3.0.lua:256 SetDefaultModulePrototype = <function> defined @Interface\AddOns\Ace3\AceAddon-3.0\AceAddon-3.0.lua:425 strClassName = "WARLOCK" fIsPetInterrupt = true baseName = "FocusInterruptSounds" name = "FocusInterruptSounds" COMBAT_LOG_EVENT_UNFILTERED = <function> defined @Interface\AddOns\FocusInterruptSounds\FocusInterruptSounds.lua:939 IsEnabled = <function> defined @Interface\AddOns\Ace3\AceAddon-3.0\AceAddon-3.0.lua:467 orderedModules = <table> { } OnInitialize = <function> defined @Interface\AddOns\FocusInterruptSounds\FocusInterruptSounds.lua:427 DisableModule = <function> defined @Interface\AddOns\Ace3\AceAddon-3.0\AceAddon-3.0.lua:366 FIsPetSpellAvailable = <function> defined @Interface\AddOns\FocusInterruptSounds\FocusInterruptSounds.lua:869 FIsSourceFocusOrTarget = <function> defined @Interface\AddOns\FocusInterruptSounds\FocusInterruptSounds.lua:613 FInList = <function> defined @Interface\AddOns\FocusInterruptSounds\FocusInterruptSounds.lua:684 FHasBlacklistedAura = <function> defined @Interface\AddOns\FocusInterruptSounds\FocusInterruptSounds.lua:836 RegisterMessage = <function> defined @Interface\AddOns\Ace3\CallbackHandler-1.0\CallbackHandler-1.0.lua:118 UnregisterMessage = <function> defined @Interface\AddOns\Ace3\CallbackHandler-1.0\CallbackHandler-1.0.lua:181 Print = <function> defined @Interface\AddOns\Ace3\AceConsole-3.0\AceConsole-3.0.lua:54 FIsCCSpell = <function> defined @Interface\AddOns\FocusInterruptSounds\FocusInterruptSounds.lua:824 FIsSpellCastStart = <function> defined @Interface\AddOns\FocusInterruptSounds\FocusInterruptSounds.lua:811 OnEnable = <function> defined @Interface\AddOns\FocusInterruptSounds\FocusInterruptSounds.lua:565 FIsCasterOrSpellGlobalOverride = <function> defined @Interface\AddOns\FocusInterruptSounds\FocusInterruptSounds.lua:724 IsModule = <functio
@Twopro
Are you hitting this constantly? What class are you and what pet do you have out?
if you would like me to post errors somewhere else let me know.
Message: ...AddOns\FocusInterruptSounds\FocusInterruptSounds.lua:895: attempt to compare number with nil Time: 01/05/12 06:59:15 Count: 41 Stack: ...AddOns\FocusInterruptSounds\FocusInterruptSounds.lua:895: in function `FIsPetSpellAvailable' ...AddOns\FocusInterruptSounds\FocusInterruptSounds.lua:1007: in function `?' ...Ons\Ace3\CallbackHandler-1.0\CallbackHandler-1.0.lua:147: in function <...Ons\Ace3\CallbackHandler-1.0\CallbackHandler-1.0.lua:147> [string "safecall Dispatcher[15]"]:4: in function <[string "safecall Dispatcher[15]"]:4> [C]: ? [string "safecall Dispatcher[15]"]:13: in function `?' ...Ons\Ace3\CallbackHandler-1.0\CallbackHandler-1.0.lua:92: in function `Fire' Interface\AddOns\Ace3\AceEvent-3.0\AceEvent-3.0.lua:120: in function <Interface\AddOns\Ace3\AceEvent-3.0\AceEvent-3.0.lua:119>
Locals: self = <table> { SetDefaultModuleLibraries = <function> defined @Interface\AddOns\Ace3\AceAddon-3.0\AceAddon-3.0.lua:383 db = <table> { } Enable = <function> defined @Interface\AddOns\Ace3\AceAddon-3.0\AceAddon-3.0.lua:315 UnregisterAllEvents = <function> defined @Interface\AddOns\Ace3\CallbackHandler-1.0\CallbackHandler-1.0.lua:202 str30YardSpellName = "Shoot" EnableModule = <function> defined @Interface\AddOns\Ace3\AceAddon-3.0\AceAddon-3.0.lua:348 modules = <table> { } GetModule = <function> defined @Interface\AddOns\Ace3\AceAddon-3.0\AceAddon-3.0.lua:231 IterateEmbeds = <function> defined @Interface\AddOns\Ace3\AceAddon-3.0\AceAddon-3.0.lua:458 iInterruptSchool = 32 CheckAndPlaySound = <function> defined @Interface\AddOns\FocusInterruptSounds\FocusInterruptSounds.lua:596 defaultModuleLibraries = <table> { } fCanDispel = true fCanDepoison = false UnregisterChatCommand = <function> defined @Interface\AddOns\Ace3\AceConsole-3.0\AceConsole-3.0.lua:111 strInterruptSpellName = "Spell Lock" FIsCasterOrSpellBlacklisted = <function> defined @Interface\AddOns\FocusInterruptSounds\FocusInterruptSounds.lua:753 fHasPurge = true Printf = <function> defined @Interface\AddOns\Ace3\AceConsole-3.0\AceConsole-3.0.lua:69 NewModule = <function> defined @Interface\AddOns\Ace3\AceAddon-3.0\AceAddon-3.0.lua:256 SetDefaultModulePrototype = <function> defined @Interface\AddOns\Ace3\AceAddon-3.0\AceAddon-3.0.lua:425 strClassName = "WARLOCK" fIsPetInterrupt = true baseName = "FocusInterruptSounds" name = "FocusInterruptSounds" COMBAT_LOG_EVENT_UNFILTERED = <function> defined @Interface\AddOns\FocusInterruptSounds\FocusInterruptSounds.lua:939 IsEnabled = <function> defined @Interface\AddOns\Ace3\AceAddon-3.0\AceAddon-3.0.lua:467 orderedModules = <table> { } OnInitialize = <function> defined @Interface\AddOns\FocusInterruptSounds\FocusInterruptSounds.lua:427 DisableModule = <function> defined @Interface\AddOns\Ace3\AceAddon-3.0\AceAddon-3.0.lua:366 FIsPetSpellAvailable = <function> defined @Interface\AddOns\FocusInterruptSounds\FocusInterruptSounds.lua:869 FIsSourceFocusOrTarget = <function> defined @Interface\AddOns\FocusInterruptSounds\FocusInterruptSounds.lua:613 FInList = <function> defined @Interface\AddOns\FocusInterruptSounds\FocusInterruptSounds.lua:684 FHasBlacklistedAura = <function> defined @Interface\AddOns\FocusInterruptSounds\FocusInterruptSounds.lua:836 RegisterMessage = <function> defined @Interface\AddOns\Ace3\CallbackHandler-1.0\CallbackHandler-1.0.lua:118 UnregisterMessage = <function> defined @Interface\AddOns\Ace3\CallbackHandler-1.0\CallbackHandler-1.0.lua:181 Print = <function> defined @Interface\AddOns\Ace3\AceConsole-3.0\AceConsole-3.0.lua:54 FIsCCSpell = <function> defined @Interface\AddOns\FocusInterruptSounds\FocusInterruptSounds.lua:824 FIsSpellCastStart = <function> defined @Interface\AddOns\FocusInterruptSounds\FocusInterruptSounds.lua:811 OnEnable = <function> defined @Interface\AddOns\FocusInterruptSounds\FocusInterruptSounds.lua:565 FIsCasterOrSpellGlobalOverride = <function> defined @Interface\AddOns\FocusInterruptSounds\FocusInterruptSounds.lua:724 IsModule = <functi
be nice if we could have a list of overrides gathered by people to add for this
I'm also thinking about some sort of UI to make it easier to blacklist one of the last 5 spells seen.