with permission of mentalnutsy I have updated this mod to work with wow v4.2
v4.2a
* Added support for Rallying Cry
* Removed Shield Bash as it is no longer in the game
4.2b
* Fixed Rallying Cry Spam
Nutty War Announce is a text based announcement addon for warriors. It can announce buffs,abilities,procs,interrupts and much more see below for full list of Announces.
-------------------LIST OF FEATURES AND SUPPORTED SPELL LIST-----------------
Everything is disabled by default.
To Configure IT?
----------------------
* Access the options from Options -> Interface -> AddOns -> NuttyWarAnnounce
* Type "/nwa" or "/nuttywarannounce"
SOME SPELLS HAVE RANDOM ANNOUNCE WHAT IS IT? Also What is Simple Announce
---------------------------------------------------------------------
Random Announce will send the spell announcement along with a funny quote
Random Announce
--------------
[Nuttyprot] says: [Last Stand] Used: I went to buy some camouflage trousers the other day but I couldn't find any..
Simple Announce
----------------
[Nuttyprot] says: [Last Stand] Used
For Simple Announce delete any text in the Custom Message Box
Some Spells have sound options If you select a sound It will play when the announcement is made.
You can create Custom messages for most of the announcements.
Chat channel options: You can select what channel you would like to announce to.
Party/Raid/Say/Yell/Raid Warning
Custom Channel
Nutty Channel(no1 else will see your announces in this channel)
Whisper
You can also select a combination of channels to announce to
Any ability that has the option to play a sound can now play a sound independently.
Arms abilities:
Retaliation
Shattering Throw
Hamstring
Bladestorm
Deadly Calm New
Fury abilities:
Recklessness
Intimidating Shout
Peircing Howl
Death Wish
Enraged Regeneration New
Prot abilities:
Last Stand
Shield Wall
Vigilance
Disarm
Taunts Announces Failed Taunts Will Announce when you use Challenging Shout:
Taunt
Mocking Blow
Interrupts Announce Successful and Failed interrupts:
Shield Bash
Pummel
Buffs:
support for Parrot, MSBT and Blizzard's Floating Combat Text
Commanding Shout
Battle Shout
Procs:
Only you see the announcements
Enrage New
Bloodsurge
Sudden Death
Taste for Blood
Sword and Board
Slaughter New
Expiries:
Only you see the announcements support for Parrot, MSBT and Blizzard's Floating Combat Text
Rend
Mortal Strike
Demoralizing Shout
Thunderclap
Tools:
I'm Dead Announce Will Announce when you die to your selected channels
Taunt Monitor Tracks Taunts in a party or raid only you can see this
Crowd Control monitor Announces when Crowd Control is Broken New
Flask Faded Tells you when your flask runs out only you see this. A list of supported flasks is in game
Food Faded Announces when your food buff runs out only you can see this. A list of supported food is in game
Resurrect Resurrect has 2 options Auto release in battlegrounds and Auto accept resurrection (will not auto accept in Combat).
Sunder Armor Will announce when your target has 3 stacks of sunder armor Changed for patch 4.01
Short ready check Enables short ready check type /rc to do a readycheck New
Scrolling Combat text
Basic support for Parrot, MSBT and Blizzard's Floating Combat Text.
Nutty War Announce Scrolling Text
Options for Nutty War Announce Scrolling text include
Change font color
Move the text frame
Change font size
Change the font
Change font outline
HOW CAN I HELP?
----------------
If you find any faults or bugs please tell me in the comments section and i shall get them fixed asap.
If you have requests please tell me in the comments section and I shall look into them (altho that don't mean they will be granted)
INSTALLATION:
--------------
Extract the data to your "World of Warcraft/Interface/AddOns" directory so that the "NuttyWarAnnounce" directory is a subdirectory of the "AddOns" directory.
TO DO
-------------------
update flasks and food buffs (work in progress)
instead of swapping around have you tried merging the lines e.g
if NuttyWarAnnounce.db.profile.rallyingcryused and InCombatLockdown() and srcName == dstname then
I cant say if will work or not (maybe the reason I did commanding and battle shout the way I done them a long time ago.)
Anyways gl with getting it working. At least showed you how I filtered them so hopefully will help.
EDIT: Look at the way i have done Challenging Shout you see how I got around the aoe spam with custom messages using a throttle. The same code should work fine. I would have posted that in last post but forgot about it.
Try the below code. Basically this adds a simple throttle instead of filtering the person the spell is used on.
function NuttyWarAnnounce:RallyingCryAnnounce(srcName, dstName, link)
NumSayLS = table.getn( NuttyWarAnnounce.sayings.RallyingCrySay );
SNumLS = math.random( NumSayLS );
RallyingCry_Say = NuttyWarAnnounce.sayings.RallyingCrySay[SNumLS];
if ((rallylastAnnounce + rallyfrequency) < time()) then
rallylastAnnounce = time()
NuttyWarAnnounce:nwasctoutputused(srcName, dstName, link)
if NuttyWarAnnounce.db.profile.rallyingcryused then
message = format(msthree, link,"Used:", RallyingCry_Say)
NuttyWarAnnounce:Announce(message)
elseif NuttyWarAnnounce.db.profile.rallyingcrycustomtoggle then
local custom = NuttyWarAnnounce.db.profile.rallyingcrycustom
message = format(msthree, link,"Used", custom)
NuttyWarAnnounce:Announce(message)
end
end
end
function NuttyWarAnnounce:RallyingCryFade(srcName, dstName, link)
NuttyWarAnnounce:nwasctoutputfaded(srcName, dstName, link)
if ((rallylastAnnounce + rallyfrequency) < time()) then
rallylastAnnounce = time()
if NuttyWarAnnounce.db.profile.rallyingcryfaded then
message = format(mstwo, link,"Faded")
NuttyWarAnnounce:Announce(message)
end
end
end
Add to the list of locals you may need to ajust rallyfrequency number
local rallyfrequency = 5
local rallylastAnnounce = time()
Last edited by mentalnutsy : 07-08-11 at 05:38 AM.
I tried your code, and it worked for the most part. The problem I ran into was that the Random announce would work, but the custom one wouldn't. I ended up flip floping the following 2 lines
if NuttyWarAnnounce.db.profile.rallyingcryused then
if InCombatLockdown() and srcName == dstname then
I figured the srcname == wasnt making it to the nested elseif statement. I tried duplicating it in that elseif, but that didnt work.
That should be an easy fix due to the way Rally Cry works it would be easyier to copy the way I wrote the code for battle and commanding shout.
the line
if InCombatLockdown() and srcName == dstname then
Filters who the spell is cast on so will only announce when you cast it once.
Try the below code
Line 226 replace with
NuttyWarAnnounce:RallyingCryAnnounce(srcName, dstname,link)
Line 299 replace with
NuttyWarAnnounce:RallyingCryFade(srcName, dstname,link)
Lines 571 - 591 replace with
function NuttyWarAnnounce:RallyingCryAnnounce(srcName, dstname,link)
NumSayLS = table.getn( NuttyWarAnnounce.sayings.RallyingCrySay );
SNumLS = math.random( NumSayLS );
RallyingCry_Say = NuttyWarAnnounce.sayings.RallyingCrySay[SNumLS];
NuttyWarAnnounce:nwasctoutputused(link)
if NuttyWarAnnounce.db.profile.rallyingcryused then
if InCombatLockdown() and srcName == dstname then
message = format(msthree, link,"Used:", RallyingCry_Say)
NuttyWarAnnounce:Announce(message)
elseif NuttyWarAnnounce.db.profile.rallyingcrycustomtoggle then
local custom = NuttyWarAnnounce.db.profile.rallyingcrycustom
message = format(msthree, link,"Used", custom)
NuttyWarAnnounce:Announce(message)
end
end
end
function NuttyWarAnnounce:RallyingCryFade(srcName, dstname,link)
NuttyWarAnnounce:nwasctoutputfaded(link)
if NuttyWarAnnounce.db.profile.rallyingcryfaded then
if InCombatLockdown() and srcName == dstname then
message = format(mstwo, link,"Faded")
NuttyWarAnnounce:Announce(message)
end
end
end
I have no way of testing the code. but the above should work.