IF
  Allegiance(LastSummonerOf(Myself),EVILCUTOFF)
  Global("Nymph","LOCALS",0)
THEN
  RESPONSE #100
    Enemy()
    ChangeAIScript("BPNYMPH",OVERRIDE)
    SetGlobal("Nymph","LOCALS",1)
END

IF
  Allegiance(LastSummonerOf(Myself),GOODCUTOFF)
  Global("Nymph","LOCALS",0)
THEN
  RESPONSE #100
    Ally()
    ChangeAIScript("BPNYMPH",OVERRIDE)
    SetGlobal("Nymph","LOCALS",1)
END

IF
  ActionListEmpty()
  HaveSpell(CLERIC_BARKSKIN)
  See([EVILCUTOFF])
  Global("prep","LOCALS",0)
THEN
  RESPONSE #100
    ApplySpell(Myself,CLERIC_BARKSKIN)
    SetGlobal("prep","LOCALS",1)
END

IF
  ActionListEmpty()
  HaveSpell(CLERIC_MASS_CURE)
  !GlobalTimerNotExpired("NymphoTime","LOCALS")
  OR(2)
    HPPercentLT(Myself,75)
    HPPercentLT(LastSummonerOf(Myself),75)
  Range(LastSummonerOf(Myself),12)
THEN
  RESPONSE #100
    Spell(Myself,CLERIC_MASS_CURE)
    SetGlobalTimer("NymphoTime","LOCALS",ONE_ROUND)
END

IF
  ActionListEmpty()
  RandomNum(8,1)
  !GlobalTimerNotExpired("NymphoTime","LOCALS")
  HaveSpell(WIZARD_HOLD_MONSTER)
  See([EVILCUTOFF])
  !StateCheck(LastSeenBy(Myself),STATE_HELPLESS)
THEN
  RESPONSE #100
    Spell(LastSeenBy(Myself),WIZARD_HOLD_MONSTER)
    SetGlobalTimer("NymphoTime","LOCALS",ONE_ROUND)
END

IF
  ActionListEmpty()
  RandomNum(8,2)
  HaveSpell(CLERIC_MENTAL_DOMINATION)
  !GlobalTimerNotExpired("NymphoTime","LOCALS")
  StateCheck(LastSummonerOf(Myself),STATE_CHARMED)
  
  See([EVILCUTOFF])
THEN
  RESPONSE #100
    Spell(LastSummonerOf(Myself),CLERIC_MENTAL_DOMINATION)
    SetGlobalTimer("NymphoTime","LOCALS",ONE_ROUND)
END

IF
  ActionListEmpty()
  RandomNum(8,2)
  HaveSpell(CLERIC_MENTAL_DOMINATION)
  !GlobalTimerNotExpired("NymphoTime","LOCALS")
  !StateCheck([EVILCUTOFF],STATE_HELPLESS)
  !StateCheck([EVILCUTOFF],STATE_CHARMED)  
  See([EVILCUTOFF])
THEN
  RESPONSE #100
    Spell(LastSeenBy(Myself),CLERIC_MENTAL_DOMINATION)
    SetGlobalTimer("NymphoTime","LOCALS",ONE_ROUND)
END

IF
  ActionListEmpty()
  RandomNum(8,3)
  HaveSpell(CLERIC_HOLD_PERSON)
  !GlobalTimerNotExpired("NymphoTime","LOCALS")
  !StateCheck([EVILCUTOFF],STATE_HELPLESS)
  See([EVILCUTOFF])
THEN
  RESPONSE #100
    Spell(LastSeenBy(Myself),CLERIC_HOLD_PERSON)
    SetGlobalTimer("NymphoTime","LOCALS",ONE_ROUND)
END

IF
  ActionListEmpty()
  RandomNum(8,4)
  !GlobalTimerNotExpired("NymphoTime","LOCALS")
  !StateCheck([EVILCUTOFF],STATE_CONFUSED)
  See([EVILCUTOFF])
  Global("castConfusion","LOCALS",0)
THEN
  RESPONSE #100
    ForceSpell(LastSeenBy(Myself),NYMPH_CONFUSION)
    SetGlobal("castConfusion","LOCALS",1)
    SetGlobalTimer("NymphoTime","LOCALS",ONE_ROUND)
END

IF
  ActionListEmpty()
  RandomNum(8,5)
  AreaType(OUTDOOR)
  HaveSpell(CLERIC_CALL_LIGHTNING)
  !GlobalTimerNotExpired("NymphoTime","LOCALS")
  See([EVILCUTOFF])
THEN
  RESPONSE #100
    Spell(LastSeenBy(Myself),CLERIC_CALL_LIGHTNING)
    SetGlobalTimer("NymphoTime","LOCALS",ONE_ROUND)
END

IF
  ActionListEmpty()
  RandomNum(8,6)
  HaveSpell(CLERIC_CAUSE_SERIOUS_WOUNDS)
  !GlobalTimerNotExpired("NymphoTime","LOCALS")
  See([EVILCUTOFF])
THEN
  RESPONSE #100
    Spell(LastSeenBy(Myself),CLERIC_CAUSE_SERIOUS_WOUNDS)
    SetGlobalTimer("NymphoTime","LOCALS",ONE_ROUND)
END

IF
  ActionListEmpty()
  RandomNumGT(8,6)
  !GlobalTimerNotExpired("NymphoTime","LOCALS")
  !Range([EVILCUTOFF],8)
  See([EVILCUTOFF])
THEN
  RESPONSE #100
    ForceSpell(LastSeenBy(Myself),WIZARD_DIMENSION_DOOR)
    SetGlobalTimer("NymphoTime","LOCALS",ONE_ROUND)
END

IF
  ActionListEmpty()
  See([EVILCUTOFF])
THEN
  RESPONSE #100
    AttackReevaluate(LastSeenBy(Myself),45)
END

