Grid

707 - Druids can dispel diseases with Symbiosis Cleanse

Grid 5.3.0.1612

Code inspection in GridStatusAuras.lua shows that the UpdateDispellable() method needs to account for resto druids that gain Cleanse through Symbiosis on a paladin. This Cleanse spell gained by the druid allows them to also dispel diseases, which is not normally possible.

It's not clear whether IsPlayerSpell will work properly to test whether Cleanse is in the druid's spellbook or not because it's an example of a spell overriding/morphing another spell in the spellbook. The conditions that need testing are the values of IsPlayerSpell(122288) for:

  • Druid has not yet cast Symbiosis for the first time. Should be false.
  • Druid has cast Symbiosis on a paladin. Should be true.
  • Druid has cast Symbiosis on a paladin and then removed the Symbiosis buff. Should be false.
  • Druid has cast Symbiosis on a paladin, then removed the Symbiosis buff, then cast Symbiosis on a different class. Should be false.
  • Druid has cast Symbiosis on a different class, then removed the Symbiosis buff, then cast Symbiosis on a paladin. Should be true.

UpdateDispellable() would also need to be invoked after Symbiosis is successfully cast. The SPELLS_CHANGED event is probably the correct event to hook.

User When Change
Phanx Jul 25, 2013 at 19:33 UTC
Phanx Jul 25, 2013 at 19:33 UTC
Phanx Jul 17, 2013 at 21:37 UTC
Phanx Jul 10, 2013 at 21:53 UTC
Phanx Jul 10, 2013 at 21:49 UTC
jlam Jul 10, 2013 at 19:45 UTC Create

You must login to post a comment. Don't have an account? Register to get one!

  • 5 comments
  • Avatar of Phanx Phanx Jul 25, 2013 at 19:33 UTC - 0 likes

    Closing this ticket, since it's been 2 weeks since I released 5.3.0.1618 with this change and nobody has reported any problems. If you find anything amiss, feel free to commit fixes. :)

  • Avatar of Phanx Phanx Jul 17, 2013 at 21:36 UTC - 0 likes

    I'm back now, but I'm not sure what you mean about SPELLS_CHANGED, as my preliminary commit already registers that event for resto druids (and unregistered it for all other classes and specs) inside the UpdateDispellable method.

    Please let me know once you've had a chance to test it.

  • Avatar of jlam jlam Jul 11, 2013 at 18:54 UTC - 0 likes

    To make things simpler for you while you are on vacation (enjoy your time away!), I'll test the changes and commit them to the repository, and you can make a new release when you have a chance. I'll post the results of my tests in this ticket so you can track the progress.

  • Avatar of jlam jlam Jul 11, 2013 at 18:52 UTC - 0 likes

    You will also need to hook the SPELLS_CHANGED event to trigger UpdateDispellable() to catch the new spell after Symbiosis has been cast.

  • Avatar of Phanx Phanx Jul 10, 2013 at 21:48 UTC - 0 likes

    Added in r1615, but since I don't have a high-level druid or paladin, I can't actually test that IsPlayerSpell returns the values you proposed. Since you submitted the ticket, I assume you do have a high-level druid and can test, so please do and let me know if it doesn't work. :P

  • 5 comments

Facts

Last updated
Jul 25, 2013
Reported
Jul 10, 2013
Status
Fixed - Developer made requested changes. QA should verify.
Type
Enhancement - A change which is intended to better the project in some way
Priority
Medium - Normal priority.
Votes
0

Reported by

Possible assignees