home *** CD-ROM | disk | FTP | other *** search
- // * Date Created:Mar 21, 2000.
- // * Created by:Brent Knowles
- // * Purpose: An Offensive / Defensive Druid-type character
- // * - NO summoning (see cleric4)
-
- //*Assistance*
- // * Cast cure poisons
-
- IF
- See(NearestEnemyOf(Myself))
- HaveSpell(CLERIC_SLOW_POISON)
- See([PC])
- StateCheck(LastSeenBy(Myself),STATE_POISONED)
- THEN
- RESPONSE #100
- Spell(LastSeenBy(Myself),CLERIC_SLOW_POISON)
- END
-
- IF
- See(NearestEnemyOf(Myself))
- HaveSpell(CLERIC_NEUTRALIZE_POISON)
- See([PC])
- StateCheck(LastSeenBy(Myself),STATE_POISONED)
- THEN
- RESPONSE #100
- Spell(LastSeenBy(Myself),CLERIC_NEUTRALIZE_POISON)
- END
-
- // *Heal Others*
- // * Mass cure if both myself and one other member is not doing going
- IF
- See(NearestEnemyOf(Myself))
- HaveSpell(CLERIC_MASS_CURE)
- See([PC])
- OR(2)
- HPPercentLT(Player1,80)
- HPPercentLT(Player3,80)
- OR(2)
- HPPercentLT(Player2,80)
- HPPercentLT(Player5,80)
- OR(2)
- HPPercentLT(Player4,80)
- HPPercentLT(Player6,80)
- THEN
- RESPONSE #100
- Spell(LastSeenBy(Myself),CLERIC_MASS_CURE)
- END
-
- IF
- ActionListEmpty()
- HPPercentLT(LastSeenBy(Myself),10)
- HaveSpell(CLERIC_HEAL)
- !StateCheck(LastSeenBy(Myself),STATE_INVISIBLE)
- THEN
- RESPONSE #100
- Spell(LastSeenBy(Myself),CLERIC_HEAL)
- END
-
- IF
- ActionListEmpty()
- HPPercentLT(MostDamagedOf(),60)
- !StateCheck(MostDamagedOf(),STATE_INVISIBLE)
- HaveSpell(CLERIC_CURE_SERIOUS_WOUNDS)
- THEN
- RESPONSE #100
- Spell(MostDamagedOf(),CLERIC_CURE_SERIOUS_WOUNDS)
- END
-
-
- IF
- ActionListEmpty()
- HPPercentLT(MostDamagedOf(),50)
- !StateCheck(MostDamagedOf(),STATE_INVISIBLE)
- HaveSpell(CLERIC_CURE_LIGHT_WOUNDS)
- THEN
- RESPONSE #100
- Spell(MostDamagedOf(),CLERIC_CURE_LIGHT_WOUNDS)
- END
-
- IF
- ActionListEmpty()
- HPPercentLT(MostDamagedOf(),50)
- !StateCheck(MostDamagedOf(),STATE_INVISIBLE)
- HaveSpell(CLERIC_AID)
- THEN
- RESPONSE #100
- Spell(MostDamagedOf(),CLERIC_AID)
- END
-
- // *Defensive*
-
- // * if see Vampires then protect self against energy draining.
-
- // *protect companions
- IF
- See([0.0.VAMPIRE])
- !CombatCounter(0)
- HaveSpell(CLERIC_NEGATIVE_PLANE_PROTECTION)
- See([PC])
- !StateCheck(LastSeenBy(Myself),STATE_INVISIBLE)
- CheckStat(LastSeenBy(Myself),0,SCRIPTINGSTATE3)
- THEN
- RESPONSE #100
- Spell(LastSeenBy(Myself),CLERIC_NEGATIVE_PLANE_PROTECTION)
- END
- // * protect self
- IF
- See([0.0.VAMPIRE])
- !CombatCounter(0)
- HaveSpell(CLERIC_NEGATIVE_PLANE_PROTECTION)
- CheckStat(Myself,0,SCRIPTINGSTATE3)
- THEN
- RESPONSE #100
- Spell(Myself,CLERIC_NEGATIVE_PLANE_PROTECTION)
- END
-
- IF
- See(NearestEnemyOf(Myself))
- HaveSpell(CLERIC_IRONSKIN)
- HPGT(LastSeenBy(Myself),20)
- CheckStatLT(Myself,1,STONESKINS)
- THEN
- RESPONSE #100
- Spell(Myself,CLERIC_IRONSKIN)
- END
-
- IF
- ActionListEmpty()
- See(NearestEnemyOf(Myself))
- HaveSpell(CLERIC_PHYSICAL_MIRROR)
- HPGT(LastSeenBy(Myself),20)
- !HasBounceEffects(Myself)
- THEN
- RESPONSE #100
- Spell(Myself,CLERIC_PHYSICAL_MIRROR)
- END
-
- IF
- See(NearestEnemyOf(Myself))
- HaveSpell(CLERIC_REGENERATE)
- HPGT(LastSeenBy(Myself),20)
- HPPercentLT(Myself,60)
- THEN
- RESPONSE #100
- Spell(Myself,CLERIC_REGENERATE)
- END
- //*Offensive*
-
- IF
- See(NearestEnemyOf(Myself))
- HaveSpell(CLERIC_CREEPING_DOOM)
- HPGT(LastSeenBy(Myself),20)
- THEN
- RESPONSE #100
- Spell(NearestEnemyOf(Myself),CLERIC_CREEPING_DOOM)
- END
-
- IF
- See(NearestEnemyOf(Myself))
- HaveSpell(CLERIC_CONFUSION)
- HPGT(LastSeenBy(Myself),20)
- !StateCheck(LastSeenBy(Myself),STATE_CONFUSED)
- THEN
- RESPONSE #100
- Spell(NearestEnemyOf(Myself),CLERIC_CONFUSION)
- END
-
-
- IF
- See(NearestEnemyOf(Myself))
- HaveSpell(CLERIC_ENTANGLE)
- HPGT(LastSeenBy(Myself),20)
- NumCreatureVsPartyGT([ENEMY],4)
- AreaCheck(OUTDOOR)
- THEN
- RESPONSE #100
- Spell(LastSeenBy(Myself),CLERIC_ENTANGLE)
- END
-
- IF
- See(NearestEnemyOf(Myself))
- HaveSpell(CLERIC_INSECT_PLAGUE)
- HPGT(LastSeenBy(Myself),20)
- THEN
- RESPONSE #100
- Spell(NearestEnemyOf(Myself),CLERIC_INSECT_PLAGUE)
- END
-
- IF
- See(NearestEnemyOf(Myself))
- HaveSpell(CLERIC_CALL_LIGHTNING)
- HPGT(LastSeenBy(Myself),20)
- AreaCheck(OUTDOOR)
- THEN
- RESPONSE #100
- Spell(NearestEnemyOf(Myself),CLERIC_CALL_LIGHTNING)
- END
-
- IF
- See(NearestEnemyOf(Myself))
- HaveSpell(CLERIC_SUMMON_INSECTS)
- HPGT(LastSeenBy(Myself),20)
- THEN
- RESPONSE #100
- Spell(NearestEnemyOf(Myself),CLERIC_SUMMON_INSECTS)
- END
-
- IF
- See(NearestEnemyOf(Myself))
- HaveSpell(CLERIC_NATURE_BEAUTY)
- HPGT(LastSeenBy(Myself),20)
- THEN
- RESPONSE #100
- Spell(Myself,CLERIC_NATURE_BEAUTY)
- END
-
- IF
- See(NearestEnemyOf(Myself))
- HaveSpell(CLERIC_FINGER_OF_DEATH)
- HPGT(LastSeenBy(Myself),20)
- HPLT(LastSeenBy(Myself),50)
- THEN
- RESPONSE #100
- Spell(NearestEnemyOf(Myself),CLERIC_FINGER_OF_DEATH)
- END
-
-
-
- //*Heal Myself (lower-priority)*
- IF
- ActionListEmpty()
- HPPercentLT(Myself,10)
- HaveSpell(CLERIC_HEAL)
- THEN
- RESPONSE #100
- Spell(Myself,CLERIC_HEAL)
- END
-
- IF
- ActionListEmpty()
- HPPercentLT(Myself,60)
- HaveSpell(CLERIC_CURE_SERIOUS_WOUNDS)
- THEN
- RESPONSE #100
- Spell(Myself,CLERIC_CURE_SERIOUS_WOUNDS)
- END
-
- // *Combat*
-
- IF
- ActionListEmpty()
- Help([PC])
- THEN
- RESPONSE #100
- AttackReevaluate(LastAttackerOf(LastHelp(Myself)),60)
- END
-
- IF
- See(NearestEnemyOf(Myself))
- Range(NearestEnemyOf(Myself),4)
- THEN
- RESPONSE #100
- EquipMostDamagingMelee()
- AttackReevaluate(NearestEnemyOf(Myself),30)
- END
-
- IF
- ActionListEmpty()
- See(NearestEnemyOf(Myself))
- !Range(NearestEnemyOf(Myself),4)
- THEN
- RESPONSE #100
- EquipRanged()
- AttackReevaluate(NearestEnemyOf(Myself),30)
- END