Baldur's Gate Wiki:Game source files/BCS/SHADRA01

Override script used by Thaxll'ssillyia.

IF OR(2) !PartyHasItem("MISC6P") // Shadow Dragon Wardstone AttackedBy([ANYONE],DEFAULT) NumTimesTalkedTo(0) THEN RESPONSE #100 StartDialogNoSet([PC]) END

IF See([GOODCUTOFF.0.0.0.0.SUMMONED]) Global("sdSummon","LOCALS",0) THEN RESPONSE #100 ForceSpell(LastSeenBy(Myself),WIZARD_DEATH_SPELL) // SPWI605.SPL (Death Spell) SetGlobal("sdSummon","LOCALS",1) END

IF See(NearestEnemyOf(Myself)) Global("RemoveMagic","LOCALS",0) THEN RESPONSE #100 ForceSpell(Myself,DRAGON_STONE_SKIN) // SPIN694.SPL (Stoneskin) ForceSpell(LastSeenBy(Myself),WIZARD_REMOVE_MAGIC) // SPWI302.SPL (Remove Magic) SetGlobal("StoneSkin","LOCALS",1) SetGlobal("RemoveMagic","LOCALS",1) END

IF !Detect([PC]) HPLT(Myself,50) CombatCounter(0) THEN RESPONSE #100 SetGlobal("RemoveMagic","LOCALS",0) SetGlobal("WingBuffet","LOCALS",0) SetGlobal("Haste","LOCALS",0) SetGlobal("DRAGONFEAR","LOCALS",0) ForceSpell(Myself,CLERIC_HEAL) // SPPR607.SPL (Heal) END

IF See(NearestEnemyOf(Myself)) Global("DRAGONFEAR","LOCALS",0) THEN RESPONSE #100 ReallyForceSpell(NearestEnemyOf(Myself),DRAGON_FEAR) // SPIN895.SPL (Dragon Fear) SetGlobal("DRAGONFEAR","LOCALS",1) SetGlobalTimer("SHADOWDRAGONBREATH","GLOBAL",1) ForceSpell(LastSeenBy(Myself),DRAGON_WING_BUFFET) // SPIN695.SPL (Wing Buffet) END

IF GlobalTimerExpired("SHADOWDRAGONBREATH","GLOBAL") See(NearestEnemyOf(Myself)) Range(LastSeenBy(Myself),11) Global("WingBuffet","LOCALS",0) THEN RESPONSE #100 ForceSpell(LastSeenBy(Myself),DRAGON_WING_BUFFET) // SPIN695.SPL (Wing Buffet) Wait(3) SetGlobal("WingBuffet","LOCALS",1) RESPONSE #60 Continue END

IF See(NearestEnemyOf(Myself)) !Range(LastSeenBy(Myself),10) GlobalTimerExpired("SHADOWDRAGONBREATH","GLOBAL") THEN RESPONSE #100 SetGlobal("WingBuffet","LOCALS",0) ForceSpell(LastSeenBy(Myself),SHADOW_DRAGON_BREATH) // SPIN893.SPL (Shadow Dragon Breath) ReallyForceSpellRES("spin893v",LastSeenBy(Myself)) // No such index SetGlobalTimer("SHADOWDRAGONBREATH","GLOBAL",THREE_ROUNDS) END

IF See(NearestEnemyOf(Myself)) Global("Offensive","LOCALS",0) THEN RESPONSE #100 ForceSpell(Myself,PROTECTION_MAGIC_WEAPON_NOEFF) // SPIN686.SPL (Protection From Magical Weapons) SetGlobal("Offensive","LOCALS",2) END

IF See(NearestEnemyOf(Myself)) Global("Offensive","LOCALS",2) THEN RESPONSE #100 AttackOneRound(LastSeenBy(Myself)) AttackOneRound(LastSeenBy(Myself)) SetGlobal("Offensive","LOCALS",3) END

IF See(NearestEnemyOf(Myself)) Global("Offensive","LOCALS",3) THEN RESPONSE #100 ForceSpell(LastSeenBy(Myself),WIZARD_CHAOS) // SPWI508.SPL (Chaos) SetGlobal("Offensive","LOCALS",4) END

IF See(NearestEnemyOf(Myself)) Global("Offensive","LOCALS",4) THEN RESPONSE #100 ForceSpell(LastSeenBy(Myself),WIZARD_GREATER_MALISON) // SPWI412.SPL (Greater Malison) SetGlobal("Offensive","LOCALS",5) END

IF See(NearestEnemyOf(Myself)) THEN RESPONSE #100 EquipMostDamagingMelee AttackReevaluate(NearestEnemyOf(Myself),35) RESPONSE #10 ForceSpell(LastSeenBy(Myself),WIZARD_CHROMATIC_ORB) // SPWI118.SPL (Chromatic Orb) END

IF Allegiance(Myself,ENEMY) !See([ANYONE]) THEN RESPONSE #100 MoveToObject(Player1) END

IF AttackedBy([GOODCUTOFF],DEFAULT) Allegiance(Myself,NEUTRAL) THEN RESPONSE #100 Enemy END