IF HaveSpell(CLERIC_CURE_DISEASE) See([PC]) StateCheck(LastSeenBy(Myself),STATE_DISEASED) THEN RESPONSE #100 Spell(LastSeenBy(Myself),CLERIC_CURE_DISEASE) END
How utterly simple... right? The exact same scripting works just great if CLERIC_CURE_DISEASE is replaced with CLERIC_NEUTRALIZE_POISON, STATE_DISEASED is replaced with STATE_POISONED. But it won't work with this. Checked SPELL.IDS and STATE.IDS to make sure they are valid. 0x00080000 STATE_DISEASED is what it is and damned if that isn't just what it should be. Checked that the right CURE_DISEASE is in the Deva's spellbook. Checked that the spellslots are proper. Wasted an evening on this...
So I tried replacing it with a "test" script consisting only of:
IF StateCheck([PC],STATE_DISEASED) THEN RESPONSE #100 Kill(Myself) END
and still nothing happens when the PC is Diseased.
Here's hoping someone knows if the STATE_DISEASED state check is broken. At this point I hope it is.