Allow for expressing "if glyph NOT active" or for other parameters.

SpellInfo parameter glyph=id currently means that the declaration is true
only if the given glyph is active.  This change allows for the opposite
meahing by using glyph=!id to mean that the declaration is true only if
the given glyph is NOT active.

Other parameters that allow for the key=!value syntax include:

    glyph, mastery, if_stance, if_spell, talent

git-svn-id: svn+ssh://svn.curseforge.net/wow/ovale/mainline/trunk@1365 d5049fe3-3747-40f7-a4b5-f36d6801af5f
Activate SpellAddTargetBuff() declaration for completeness.

All of the other player/target and buff/debuff combinations are already
working.  Support for this was added in a previous commit but not
activated.

git-svn-id: svn+ssh://svn.curseforge.net/wow/ovale/mainline/trunk@1366 d5049fe3-3747-40f7-a4b5-f36d6801af5f
Fix bug that caused state auras to always be at least 1 stack.

This bug was hidden before the change to garbage-collect only the state
auras that were reflected in the real auras.

git-svn-id: svn+ssh://svn.curseforge.net/wow/ovale/mainline/trunk@1367 d5049fe3-3747-40f7-a4b5-f36d6801af5f
Druid: Add Guardian and Restoration scripts.

git-svn-id: svn+ssh://svn.curseforge.net/wow/ovale/mainline/trunk@1368 d5049fe3-3747-40f7-a4b5-f36d6801af5f
Fix and extend the tooltips shown when hovering over an icon.

SVN revision r1117 -- that implemented a true timespan implementation --
broke the tooltip that showed the name of the spell being shown when
hovering over an icon.  Fix the tooltip to show the name of the spell
again and extend the facility to allow for showing item or macro names in
the future.

git-svn-id: svn+ssh://svn.curseforge.net/wow/ovale/mainline/trunk@1370 d5049fe3-3747-40f7-a4b5-f36d6801af5f
Fix AOE checkbox in protection paladin and combat rogue scripts.

git-svn-id: svn+ssh://svn.curseforge.net/wow/ovale/mainline/trunk@1371 d5049fe3-3747-40f7-a4b5-f36d6801af5f
Paladin: Use specialization names instead of numbers for readability.

git-svn-id: svn+ssh://svn.curseforge.net/wow/ovale/mainline/trunk@1372 d5049fe3-3747-40f7-a4b5-f36d6801af5f
Remove or fix the help for small icons to the sides of the main icon.

Most of them were inaccurately labeled with "help=cd" which gave an
incorrect hover tooltip suggesting that they were abilities that should be
held for high damage phases.

git-svn-id: svn+ssh://svn.curseforge.net/wow/ovale/mainline/trunk@1373 d5049fe3-3747-40f7-a4b5-f36d6801af5f
Paladin: WoG/EF costs no holy power if Bastion of Power is up.

git-svn-id: svn+ssh://svn.curseforge.net/wow/ovale/mainline/trunk@1374 d5049fe3-3747-40f7-a4b5-f36d6801af5f
Druid: Omen of Clarity is different for ferals and resto druids.

Also fix the AOE checkbox for resto druids.

git-svn-id: svn+ssh://svn.curseforge.net/wow/ovale/mainline/trunk@1375 d5049fe3-3747-40f7-a4b5-f36d6801af5f
Rename BuffCount() condition to BuffCountOnAny().

This name makes it more explicit that the check is across all targets
instead of one target.

git-svn-id: svn+ssh://svn.curseforge.net/wow/ovale/mainline/trunk@1376 d5049fe3-3747-40f7-a4b5-f36d6801af5f
Extend BuffCount() condition to allow requiring a minimum stack.

The syntax is BuffCount(id stacks=N) where N is the minimum stack size for
the aura to count toward the running total.

This allows one to get the count of Lifebloom x3 stacks across the raid.

git-svn-id: svn+ssh://svn.curseforge.net/wow/ovale/mainline/trunk@1377 d5049fe3-3747-40f7-a4b5-f36d6801af5f
Add BuffRemainsOnAny() condition.

BuffRemainsOnAny() returns the number of seconds before the given aura
expires across all targets.

git-svn-id: svn+ssh://svn.curseforge.net/wow/ovale/mainline/trunk@1378 d5049fe3-3747-40f7-a4b5-f36d6801af5f
Add WildMushroomIsCharged() to test if healing mushroom is charged.

git-svn-id: svn+ssh://svn.curseforge.net/wow/ovale/mainline/trunk@1379 d5049fe3-3747-40f7-a4b5-f36d6801af5f
Use proper syntax in .docmeta to generate documentation.

git-svn-id: svn+ssh://svn.curseforge.net/wow/ovale/mainline/trunk@1380 d5049fe3-3747-40f7-a4b5-f36d6801af5f
Trace aura state reset in OvaleAura for debugging.

git-svn-id: svn+ssh://svn.curseforge.net/wow/ovale/mainline/trunk@1381 d5049fe3-3747-40f7-a4b5-f36d6801af5f
Properly detect the end of an instant-cast spell cast on yourself.

Treat friendly spells cast on a target of yourself the same as a spellcast
that procs a buff on the player -- we track the buff appearing on the
player and remove the spell from the in-flight spell queue.

git-svn-id: svn+ssh://svn.curseforge.net/wow/ovale/mainline/trunk@1382 d5049fe3-3747-40f7-a4b5-f36d6801af5f
Treat all auras as existing from gain time to ending time.

Due to DoT refresh mechanics, the gain time of an aura may be before the
start time of the aura (when it starts ticking again).  Treat all auras as
existing from the gain time to expiration time.  A refreshed aura still
exists when it is gained, even though it starts ticking later.

git-svn-id: svn+ssh://svn.curseforge.net/wow/ovale/mainline/trunk@1383 d5049fe3-3747-40f7-a4b5-f36d6801af5f
Default to checking for active auras in simulator after the current cast.

Treat an aura in the simulator as active by default if it exists at
the end of the current spellcast, or the current time if no spell is
currently being cast.  This allows auras that are applied by the spell
being cast to show as active.

git-svn-id: svn+ssh://svn.curseforge.net/wow/ovale/mainline/trunk@1384 d5049fe3-3747-40f7-a4b5-f36d6801af5f
Druid: Improve restoration druid script.

- Use wider windows for refreshing buffs to help with uptime.
- Remove fillers from the rotation so it's easier to see what's coming up.
- Suggest Wild Mushroom: Bloom only when the mushroom is fully charged.
- Don't show Genesis on short CD icon.
- Cast Mark of the Wild if needed.

git-svn-id: svn+ssh://svn.curseforge.net/wow/ovale/mainline/trunk@1385 d5049fe3-3747-40f7-a4b5-f36d6801af5f