Bon je suis tombé sur ce mod, la première fois
[ATTENTION petit spoil possible]
Je me fait TP pas le diablotin, et paf ! Je tombe sur un vilain dragon pas contant... Je me dit que je suis tombée dans un piège, je me fait éclater comme il faut, et j'me dit que c’est encore un mod gros bill qui à rien à faire en début de jeu complétement déséquilibré...
Après quelques recherches il se trouve que c’est normalement bien un marchant et qu'il devient hostile sans raison.
Il a un .BAF assez balaise, il répond à toute sorte d'agressions, du coup comme moi j'avais rien lancer comme sort, rien attaqué, juste bougé vers lui, j'y suis allée à poil, sans aucun buff actif ni rien, et paf toujours hostile...
Alors je comprend pas...
Je vous met son .BAF si quelqu'un trouve une erreur, où un variable, où un cheat pour l'empêcher d'être hostile... ?
► Afficher le texte
////////////////////////////////////////////////////////////
// ** How to anger a Pithril Dragon **
//Taluntain will trigger on any offensive spell (arcane or
//divine). An offensive spell is here defined by a spell
//that would have a negative effect FOR Tal (i.e. save lowering,
//damage dealing, disabling, etc.). Also setting traps will
//anger Tal. The reason as to why I didn't just put in all
//spells trigger(which would have been easier for me) is
//mainly due to: a) Taluntain is a merchant, you should be
//able to cast friends and the likes without that angering
//him, b) You should be able to buff in the area, and c)
//Taluntain is smart enough to know the difference between one
//spell and another.
////////////////////////////////////////////////////////////
///////////////////////
//Mage spells trigger//
///////////////////////
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_BIGBYS_CRUSHING_HAND)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_ENERGY_DRAIN)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_WAIL_OF_THE_BANSHEE)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_POWER_WORD_KILL)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_METEOR_SWARM)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_IMPRISONMENT)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_GATE)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_SPELL_STRIKE)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_BIGBYS_CLENCHED_FIST)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_SYMBOL_DEATH)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_SYMBOL_STUN)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_POWER_WORD_BLIND)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_MAZE)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_ABI_DALZIMS_HORRID_WILTING)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_SYMBOL_FEAR)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_INCENDIARY_CLOUD)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_SUMMON_FIEND)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_PIERCE_SHIELD)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_CARRION)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_DISINTEGRATE)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_CHAIN_LIGHTNING)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_DEATH_FOG)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_POWER_WORD_SILENCE)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_PIERCE_MAGIC)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_DEATH_SPELL)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_SUN_FIRE)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_LOWER_RESISTANCE)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_BREACH)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_FEEBLEMIND)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_CHAOS)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_CONE_OF_COLD)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_CLOUDKILL)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_SECRET_WORD)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_POLYMORPH_OTHER)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_GREATER_MALISON)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_EMOTION_HOPELESSNESS)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_ICE_STORM)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_CONFUSION)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_SPELL_THRUST)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_DIRE_CHARM)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_SKULL_TRAP)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_SLOW)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_HOLD_PERSON)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_LIGHTNING_BOLT)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_FIREBALL)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_FLAME_ARROW)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_RAY_OF_ENFEEBLEMENT)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_POWER_WORD_SLEEP)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_AGANNAZAR_SCORCHER)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_WEB)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_STINKING_CLOUD)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_MELF_ACID_ARROW)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_HORROR)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_FOG_CLOUD)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_SPOOK)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_LARLOCH_MINOR_DRAIN)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_CHROMATIC_ORB)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_CHILL_TOUCH)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_SLEEP)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_MAGIC_MISSILE)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_CHARM_PERSON)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_BURNING_HANDS)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
/////////////////////////
//Priest spells trigger//
/////////////////////////
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_ENTANGLE)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_DOOM)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_COMMAND)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_CHARM_PERSON)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_HOLD_PERSON)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_CALL_LIGHTNING)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_GLYPH_OF_WARDING)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_MISCAST_MAGIC)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_RIGID_THINKING)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_UNHOLY_BLIGHT)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_HOLY_SMITE)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_SUMMON_INSECTS)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_MENTAL_DOMINATION)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_POISON)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_CLOAK_OF_FEAR)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_FLAME_STRIKE)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_SLAY_LIVING)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_INSECT_PLAGUE)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_FALSE_DAWN)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_DOLOROUS_DECAY)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_FIRE_STORM)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_SUNRAY)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_FINGER_OF_DEATH)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_ENERGY_DRAIN)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_CREEPING_DOOM)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_EARTHQUAKE)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_STORM_OF_VENGEANCE)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_IMPLOSION)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
/////////////////////////
//Innate spells trigger//
/////////////////////////
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastInnate([GOODCUTOFF],SET_SPECIAL_SNARE_TRAP)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastInnate([GOODCUTOFF],SET_SNARE_TRAP)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastInnate([GOODCUTOFF],ROGUE_SET_TIME_TRAP)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastInnate([GOODCUTOFF],ROGUE_SET_EXPLODING_TRAP)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastInnate([GOODCUTOFF],ROGUE_SET_SPIKE_TRAP)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Allegiance(Myself,GOODBUTBLUE)
Global("O!NoTrick","GLOBAL",1)
THEN
RESPONSE #100
DisplayString(Myself,%So thou hast chosen death! Come for us manling!%)
ChangeEnemyAlly("Taluntain",ENEMY)
ActionOverride("Taluntain",Polymorph(DRAGON_PURPLE))
SetGlobal("O!TaluntainTransform","GLOBAL",3)
SetGlobal("O!NoTrick","GLOBAL",2)
Continue()
END
////////////////////////////////////////////////////////////
// ** Setup **
//Initiating phases: Taluntain will start up with pushing any
//threat away (consider this a trap of sorts), and will then
//initiate a "chain Contigency" that sets of a number of pro-
//tections. Then Time Stop to finish off casting whatever
//protective spells he has "left"; Force his "decay" (think
//Horrid Wilting) on the strongest AND THEN he will HEAL!
//The healing is due to the factor that up to a maximum of
//one trap can be set (as that will anger him), though it will
//also damage him some (especially if it's a spike trap).
//All timers are then set, and the script restarts and then
//"begins" from the block below this one.
////////////////////////////////////////////////////////////
IF
Allegiance(Myself,ENEMY)
Global("O!TaluntainSetup","GLOBAL",0)
THEN
RESPONSE #100
SetGlobal("O!TaluntainSetup","GLOBAL",1)
ChangeClass(Myself,MAGE)
ReallyForceSpellRES("O!Spam",LastSeenBy(Myself))
ReallyForceSpellRES("O!Spam",LastSeenBy(Myself))
DisplayString(Myself,26328) // Chain Contingency
ReallyForceSpell(Myself,WIZARD_IMPROVED_INVISIBILITY)
ReallyForceSpell(Myself,WIZARD_IMPROVED_MANTLE)
ReallyForceSpell(Myself,WIZARD_IMPROVED_HASTE)
SpellNoDec(Myself,WIZARD_TIME_STOP)
ReallyForceSpell(Myself,WIZARD_SPELL_IMMUNITY_INVOCATION)
SpellNoDec(Myself,WIZARD_SPELL_IMMUNITY_NECROMANCY)
SpellNoDec(LastSeenBy(Myself),WIZARD_GREATER_MALISON)
SpellNoDecRES("O!decay",StrongestOf)
ChangeClass(Myself,CLERIC)
ReallyForceSpell(Myself,CLERIC_HEAL)
SetGlobalTimer("O!TaluntainSkin","GLOBAL",600)
SetGlobalTimer("O!Cast","LOCALS",0)
SetGlobalTimer("O!ImpInvis","GLOBAL",25)
SetGlobalTimer("O!Decaying","GLOBAL",15)
SetGlobalTimer("O!TaluntainReset","GLOBAL",60)
SetGlobalTimer("O!TaluntainHowl","LOCALS",10)
SetGlobalTimer("O!Summons","LOCALS",18)
SetGlobalTimer("O!Spam","LOCALS",15)
SetGlobalTimer("O!TaluntainMantle","GLOBAL",30)
SetGlobalTimer("O!Cone","GLOBAL",15)
DisplayString(Myself,%*Know* that thou art banned, nooblet%)
END
////////////////////////////////////////////////////////////
// ** Remove their Protections **
//As Most parties will most likely be heavily buffed prior
//to initiating combat (if they know what's in store for them
//at any rate). So we remove whatever protection we can and
//then we can proceed (script restarts, block below is exe-
//cuted).
////////////////////////////////////////////////////////////
IF
Detect(Player1)
Allegiance(Myself,ENEMY)
Global("O!TaluntainDispel","LOCALS",0)
THEN
RESPONSE #100
ChangeClass(Myself,MAGE)
SpellNoDec(NearestEnemyOf(Myself),WIZARD_DISPEL_MAGIC)
SetGlobal("O!TaluntainDispel","LOCALS",1)
END
////////////////////////////////////////////////////////////
// ** Breath **
//Tals breath is based on two factors: The O!Cast timer which
//handles all the casting throughout the script, and the O!cone
//which is specific for the casting of his breath weapon.
////////////////////////////////////////////////////////////
IF
Allegiance(Myself,ENEMY)
GlobalTimerExpired("O!Cone","GLOBAL")
GlobalTimerExpired("O!Cast","LOCALS")
THEN
RESPONSE #100
ChangeClass(Myself,MAGE)
SpellNoDecRES("O!cone",NearestEnemyOf(Myself))
ForceSpell(NearestEnemyOf(Myself),RED_DRAGON_HIT)
SetGlobalTimer("O!Cone","GLOBAL",10)
SetGlobalTimer("O!Cast","LOCALS",6)
Continue()
END
////////////////////////////////////////////////////////////
//Silence fool!
////////////////////////////////////////////////////////////
IF
OR(6)
Class(SixthNearestEnemyOf(Myself),MAGE_ALL)
Class(FifthNearestEnemyOf(Myself),MAGE_ALL)
Class(FourthNearestEnemyOf(Myself),MAGE_ALL)
Class(ThirdNearestEnemyOf(Myself),MAGE_ALL)
Class(SecondNearestEnemyOf(Myself),MAGE_ALL)
Class(NearestEnemyOf(Myself),MAGE_ALL)
Allegiance(Myself,ENEMY)
Global("O!TaluntainDisable","LOCALS",0)
Detect([ANYONE])
GlobalTimerExpired("O!Cast","LOCALS")
THEN
RESPONSE #100
ChangeClass(Myself,CLERIC)
SetGlobalTimer("O!Cast","LOCALS",2)
SpellNoDec(LastSeenBy(Myself),CLERIC_SILENCE_15_FOOT)
DisplayString(Myself,%Silence fool!%)
SetGlobal("O!TaluntainDisable","LOCALS",1)
END
IF
OR(6)
Class(SixthNearestEnemyOf(Myself),CLERIC_ALL)
Class(FifthNearestEnemyOf(Myself),CLERIC_ALL)
Class(FourthNearestEnemyOf(Myself),CLERIC_ALL)
Class(ThirdNearestEnemyOf(Myself),CLERIC_ALL)
Class(SecondNearestEnemyOf(Myself),CLERIC_ALL)
Class(NearestEnemyOf(Myself),MAGE_ALL)
!Global("O!TaluntainDisable","LOCALS",1) // No need to cast again if we've already disabled once.
Allegiance(Myself,ENEMY)
Global("O!TaluntainDisable","LOCALS",0)
Detect([ANYONE])
GlobalTimerExpired("O!Cast","LOCALS")
THEN
RESPONSE #100
ChangeClass(Myself,CLERIC)
SetGlobalTimer("O!Cast","LOCALS",6)
SpellNoDec(WeakestOf,CLERIC_SILENCE_15_FOOT)
DisplayString(Myself,%Silence fool!%)
SetGlobal("O!TaluntainDisable","LOCALS",1)
END
////////////////////////////////////////////////////////////
//You're now moderator...
////////////////////////////////////////////////////////////
IF
See(NearestEnemyOf(Myself))
Global("O!TalDomi","GLOBAL",0)
GlobalTimerExpired("O!Cast","LOCALS")
THEN
RESPONSE #100
ForceSpell(NearestEnemyOf(Myself),MIND_FLAYER_DOMINATION)
SetGlobal("O!Domi","GLOBAL",1)
SetGlobalTimer("O!Cast","LOCALS",6)
Continue()
END
////////////////////////////////////////////////////////////
// ** You dare hit me!?! **
//Punish them once for hitting you; cast imp. invis. and
//reset variables - Taluntain can re-cast!
////////////////////////////////////////////////////////////
IF
Allegiance(Myself,ENEMY)
Global("O!TaluntainHit","GLOBAL",0)
TookDamage()
THEN
RESPONSE #100
ChangeClass(Myself,MAGE)
SpellNoDec(StrongestOf,WIZARD_ENERGY_DRAIN)
SpellNoDec(WeakestOf,WIZARD_METEOR_SWARM)
SpellNoDecRES("O!spam",NearestEnemyOf(Myself))
SpellNoDec(Myself,WIZARD_SPELL_SHIELD)
SpellNoDec(Myself,WIZARD_IMPROVED_INVISIBILITY)
SpellNoDecRES("O!spam",WeakestOf)
SpellNoDecRES("O!maze",WeakestOf)
ForceSpell(NearestEnemyOf(Myself),RED_DRAGON_BREATH)
SetGlobal("O!TaluntainLows","LOCALS",0)
SetGlobal("O!TaluntainMalison","LOCALS",0)
SetGlobal("O!Haste","LOCALS",0)
SetGlobal("O!TaluntainSilence","LOCALS",0)
SetGlobal("O!TaluntainDispel","LOCALS",0)
SetGlobal("O!TaluntainFear","LOCALS",0)
SetGlobal("O!Decaying","GLOBAL",0)
SetGlobal("O!TaluntainMantle","GLOBAL",0)
SetGlobal("O!TalDomi","GLOBAL",0)
SetGlobal("O!TaluntainHit","GLOBAL",1)
END
////////////////////////////////////////////////////////////
// ** Decay **
////////////////////////////////////////////////////////////
IF
Detect(NearestEnemyOfType([PC]))
!GlobalTimerNotExpired("O!Decaying","GLOBAL")
GlobalTimerExpired("O!Cast","LOCALS")
THEN
RESPONSE #100
DisplayString(Myself,%I am a Pithril Dragon, imbecile!%)
ChangeClass(Myself,MAGE)
SpellNoDecRES("O!decay",StrongestOf)
SetGlobalTimer("O!Decaying","GLOBAL",25)
SetGlobalTimer("O!Cast","GLOBAL",6)
Continue()
END
////////////////////////////////////////////////////////////
//Face my diciples!
////////////////////////////////////////////////////////////
IF
See(NearestEnemyOf(Myself))
!GlobalTimerNotExpired("O!Summons","LOCALS")
GlobalTimerExpired("O!Cast","LOCALS")
THEN
RESPONSE #100
ChangeClass(Myself,MAGE)
ForceSpell(Myself,WIZARD_PROTECTION_FROM_EVIL)
ForceSpell(Myself,WIZARD_SPELL_TURNING)
SpellNoDecRES("O!spam",NearestEnemyOf(Myself))
SpellNoDec(Myself,WIZARD_GATE)
SpellNoDec(Myself,WIZARD_SUMMON_EFREET)
ChangeClass(Myself,CLERIC)
SpellNoDec(Myself,CLERIC_CONJURE_FIRE_ELEMENTAL)
SetGlobalTimer("O!Summons","LOCALS",120)
SetGlobalTimer("O!Cast","GLOBAL",6)
DisplayString(Myself,%Face my minions!%)
END
////////////////////////////////////////////////////////////
//Push them, push them, push them!
////////////////////////////////////////////////////////////
IF
Allegiance(Myself,ENEMY)
Range(NearestEnemyOf(Myself),20)
GlobalTimerExpired("O!Spam","LOCALS")
!GlobalTimerNotExpired("O!Cast","LOCALS")
THEN
RESPONSE #100
ChangeClass(Myself,MAGE)
SpellNoDecRES("O!Spam",LastSeenBy(Myself))
SetGlobalTimer("O!Spam","LOCALS",15)
SetGlobalTimer("O!Cast","GLOBAL",6)
Continue()
END
////////////////////////////////////////////////////////////
//Banishment
////////////////////////////////////////////////////////////
IF
Allegiance(Myself,ENEMY)
GlobalTimerExpired("O!TaluntainHowl","LOCALS")
GlobalTimerExpired("O!Cast","LOCALS")
THEN
RESPONSE #100
ChangeClass(Myself,MAGE)
SpellNoDecRES("O!maze",StrongestOf)
SetGlobalTimer("O!TaluntainHowl","LOCALS",60)
SetGlobalTimer("O!Cast","GLOBAL",6)
Continue()
END
////////////////////////////////////////////////////////////
// ** Destroy first wave of Summons **
//If you've summoned anything, Tal will destroy it; but he will
//only do this once! There's a number of reasons as to why, but
//mainly because he summons himself, and it would be stupid of
//him to kill his own creations if it can be prevented.
////////////////////////////////////////////////////////////
IF
Detect([GOODCUTOFF.0.0.0.0.SUMMONED])
Allegiance(Myself,ENEMY)
Global("O!TaluntainUnsummon","LOCALS",0)
THEN
RESPONSE #100
DisplayString(Myself,%Thine lackeys will not save thee%)
ChangeClass(Myself,MAGE)
SpellNoDec(LastSeenBy(Myself),WIZARD_DEATH_SPELL)
SetGlobal("O!TaluntainUnsummon","LOCALS",1)
END
////////////////////////////////////////////////////////////
// ** Re-cast Stoneskin **
////////////////////////////////////////////////////////////
IF
GlobalTimerExpired("O!TaluntainSkin","GLOBAL")
GlobalTimerExpired("O!Cast","LOCALS")
THEN
RESPONSE #100
ReallyForceSpell(Myself,DRAGON_STONE_SKIN)
SetGlobalTimer("O!TaluntainSkin","GLOBAL",600)
SetGlobalTimer("O!Cast","LOCALS",6)
Continue()
END
////////////////////////////////////////////////////////////
// ** Re-cast Imp. Invis. **
////////////////////////////////////////////////////////////
IF
!StateCheck(Myself,STATE_IMPROVEDINVISIBILITY)
GlobalTimerExpired("O!ImpInvis","GLOBAL")
GlobalTimerExpired("O!Cast","LOCALS")
THEN
RESPONSE #100
ChangeClass(Myself,MAGE)
SpellNoDec(Myself,WIZARD_IMPROVED_INVISIBILITY)
SetGlobalTimer("O!ImpInvis","GLOBAL",20)
SetGlobalTimer("O!Cast","LOCALS",6)
Continue()
END
////////////////////////////////////////////////////////////
//Attack if silenced.
////////////////////////////////////////////////////////////
IF
StateCheck(Myself,STATE_SILENCED)
THEN
RESPONSE #100
ChangeAIScript("O!TALX",OVERRIDE)
END
////////////////////////////////////////////////////////////
//Come out, come out wherever you are!
////////////////////////////////////////////////////////////
IF
Allegiance(Myself,ENEMY)
!See([ANYONE])
THEN
RESPONSE #100
ChangeClass(Myself,MAGE)
SpellNoDec(Myself,WIZARD_TRUE_SIGHT)
END
////////////////////////////////////////////////////////////
//Lower their saves - Perish manling!
////////////////////////////////////////////////////////////
IF
Allegiance(Myself,ENEMY)
Detect(StrongestOf)
Global("O!TaluntainMalison","LOCALS",0)
GlobalTimerExpired("O!Cast","LOCALS")
THEN
RESPONSE #100
ChangeClass(Myself,MAGE)
SetGlobalTimer("O!Cast","LOCALS",6)
SpellNoDec(StrongestOf,WIZARD_GREATER_MALISON)
SetGlobal("O!TaluntainMalison","LOCALS",1)
END
////////////////////////////////////////////////////////////
//Fear me!
////////////////////////////////////////////////////////////
IF
Allegiance(Myself,ENEMY)
Detect(Player1)
Global("O!TaluntainFear","LOCALS",0)
GlobalTimerExpired("O!Cast","LOCALS")
THEN
RESPONSE #100
ChangeClass(Myself,MAGE)
SpellNoDecRES("O!aura",myself)
SetGlobal("O!TaluntainFear","LOCALS",1)
SetGlobalTimer("O!Cast","LOCALS",6)
Continue()
END
////////////////////////////////////////////////////////////
//Can Re-cast Mantle
////////////////////////////////////////////////////////////
IF
See(NearestEnemyOf(Myself))
GlobalTimerExpired("O!TaluntainMantle","GLOBAL")
GlobalTimerExpired("O!Cast","LOCALS")
THEN
RESPONSE #100
ChangeCLass(Myself,MAGE)
SpellNoDec(Myself,WIZARD_IMPROVED_MANTLE)
SetGlobalTimer("O!TaluntainMantle","GLOBAL",80)
SetGlobalTimer("O!Cast","LOCALS",6)
END
////////////////////////////////////////////////////////////
//Attack in-between spells
////////////////////////////////////////////////////////////
IF
Detect(NearestEnemyOfType([PC]))
!GlobalTimerExpired("O!Cast","LOCALS")
THEN
RESPONSE #100
Attack(WeakestOf)
END
////////////////////////////////////////////////////////////
// ** No tricks mr! **
////////////////////////////////////////////////////////////
IF
Allegiance(Myself,ENEMY)
!Detect([PC])
CombatCounter(0)
THEN
RESPONSE #100
SetGlobal("O!TaluntainLows","LOCALS",0)
SetGlobal("O!TaluntainMalison","LOCALS",0)
SetGlobal("O!Haste","LOCALS",0)
SetGlobal("O!TaluntainSilence","LOCALS",0)
SetGlobal("O!TaluntainDispel","LOCALS",0)
SetGlobal("O!TaluntainSetup","GLOBAL",0)
SetGlobal("O!TaluntainFear","LOCALS",0)
SetGlobal("O!Decaying","GLOBAL",0)
DisplayString(Myself,%Surely, thine ego has grown far larger than thouselfst!%)
Continue()
END
////////////////////////////////////////////////////////////
//Random walking...
////////////////////////////////////////////////////////////
IF
Allegiance(Myself,ENEMY)
!Detect(NearestEnemyOf(Myself))
THEN
RESPONSE #100
Attack(Player1)
RandomWalkContinuous()
END
////////////////////////////////////////////////////////////
//And so ends the script of Taluntain...
////////////////////////////////////////////////////////////
// ** How to anger a Pithril Dragon **
//Taluntain will trigger on any offensive spell (arcane or
//divine). An offensive spell is here defined by a spell
//that would have a negative effect FOR Tal (i.e. save lowering,
//damage dealing, disabling, etc.). Also setting traps will
//anger Tal. The reason as to why I didn't just put in all
//spells trigger(which would have been easier for me) is
//mainly due to: a) Taluntain is a merchant, you should be
//able to cast friends and the likes without that angering
//him, b) You should be able to buff in the area, and c)
//Taluntain is smart enough to know the difference between one
//spell and another.
////////////////////////////////////////////////////////////
///////////////////////
//Mage spells trigger//
///////////////////////
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_BIGBYS_CRUSHING_HAND)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_ENERGY_DRAIN)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_WAIL_OF_THE_BANSHEE)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_POWER_WORD_KILL)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_METEOR_SWARM)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_IMPRISONMENT)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_GATE)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_SPELL_STRIKE)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_BIGBYS_CLENCHED_FIST)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_SYMBOL_DEATH)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_SYMBOL_STUN)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_POWER_WORD_BLIND)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_MAZE)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_ABI_DALZIMS_HORRID_WILTING)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_SYMBOL_FEAR)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_INCENDIARY_CLOUD)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_SUMMON_FIEND)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_PIERCE_SHIELD)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_CARRION)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_DISINTEGRATE)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_CHAIN_LIGHTNING)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_DEATH_FOG)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_POWER_WORD_SILENCE)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_PIERCE_MAGIC)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_DEATH_SPELL)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_SUN_FIRE)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_LOWER_RESISTANCE)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_BREACH)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_FEEBLEMIND)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_CHAOS)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_CONE_OF_COLD)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_CLOUDKILL)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_SECRET_WORD)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_POLYMORPH_OTHER)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_GREATER_MALISON)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_EMOTION_HOPELESSNESS)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_ICE_STORM)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_CONFUSION)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_SPELL_THRUST)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_DIRE_CHARM)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_SKULL_TRAP)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_SLOW)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_HOLD_PERSON)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_LIGHTNING_BOLT)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_FIREBALL)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_FLAME_ARROW)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_RAY_OF_ENFEEBLEMENT)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_POWER_WORD_SLEEP)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_AGANNAZAR_SCORCHER)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_WEB)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_STINKING_CLOUD)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_MELF_ACID_ARROW)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_HORROR)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_FOG_CLOUD)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_SPOOK)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_LARLOCH_MINOR_DRAIN)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_CHROMATIC_ORB)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_CHILL_TOUCH)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_SLEEP)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_MAGIC_MISSILE)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_CHARM_PERSON)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCast([GOODCUTOFF],WIZARD_BURNING_HANDS)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
/////////////////////////
//Priest spells trigger//
/////////////////////////
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_ENTANGLE)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_DOOM)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_COMMAND)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_CHARM_PERSON)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_HOLD_PERSON)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_CALL_LIGHTNING)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_GLYPH_OF_WARDING)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_MISCAST_MAGIC)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_RIGID_THINKING)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_UNHOLY_BLIGHT)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_HOLY_SMITE)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_SUMMON_INSECTS)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_MENTAL_DOMINATION)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_POISON)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_CLOAK_OF_FEAR)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_FLAME_STRIKE)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_SLAY_LIVING)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_INSECT_PLAGUE)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_FALSE_DAWN)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_DOLOROUS_DECAY)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_FIRE_STORM)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_SUNRAY)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_FINGER_OF_DEATH)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_ENERGY_DRAIN)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_CREEPING_DOOM)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_EARTHQUAKE)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_STORM_OF_VENGEANCE)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastPriest([GOODCUTOFF],CLERIC_IMPLOSION)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
/////////////////////////
//Innate spells trigger//
/////////////////////////
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastInnate([GOODCUTOFF],SET_SPECIAL_SNARE_TRAP)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastInnate([GOODCUTOFF],SET_SNARE_TRAP)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastInnate([GOODCUTOFF],ROGUE_SET_TIME_TRAP)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastInnate([GOODCUTOFF],ROGUE_SET_EXPLODING_TRAP)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Global("O!NoTrick","GLOBAL",0)
SpellCastInnate([GOODCUTOFF],ROGUE_SET_SPIKE_TRAP)
THEN
RESPONSE #100
SetGlobal("O!NoTrick","GLOBAL",1)
END
IF
Allegiance(Myself,GOODBUTBLUE)
Global("O!NoTrick","GLOBAL",1)
THEN
RESPONSE #100
DisplayString(Myself,%So thou hast chosen death! Come for us manling!%)
ChangeEnemyAlly("Taluntain",ENEMY)
ActionOverride("Taluntain",Polymorph(DRAGON_PURPLE))
SetGlobal("O!TaluntainTransform","GLOBAL",3)
SetGlobal("O!NoTrick","GLOBAL",2)
Continue()
END
////////////////////////////////////////////////////////////
// ** Setup **
//Initiating phases: Taluntain will start up with pushing any
//threat away (consider this a trap of sorts), and will then
//initiate a "chain Contigency" that sets of a number of pro-
//tections. Then Time Stop to finish off casting whatever
//protective spells he has "left"; Force his "decay" (think
//Horrid Wilting) on the strongest AND THEN he will HEAL!
//The healing is due to the factor that up to a maximum of
//one trap can be set (as that will anger him), though it will
//also damage him some (especially if it's a spike trap).
//All timers are then set, and the script restarts and then
//"begins" from the block below this one.
////////////////////////////////////////////////////////////
IF
Allegiance(Myself,ENEMY)
Global("O!TaluntainSetup","GLOBAL",0)
THEN
RESPONSE #100
SetGlobal("O!TaluntainSetup","GLOBAL",1)
ChangeClass(Myself,MAGE)
ReallyForceSpellRES("O!Spam",LastSeenBy(Myself))
ReallyForceSpellRES("O!Spam",LastSeenBy(Myself))
DisplayString(Myself,26328) // Chain Contingency
ReallyForceSpell(Myself,WIZARD_IMPROVED_INVISIBILITY)
ReallyForceSpell(Myself,WIZARD_IMPROVED_MANTLE)
ReallyForceSpell(Myself,WIZARD_IMPROVED_HASTE)
SpellNoDec(Myself,WIZARD_TIME_STOP)
ReallyForceSpell(Myself,WIZARD_SPELL_IMMUNITY_INVOCATION)
SpellNoDec(Myself,WIZARD_SPELL_IMMUNITY_NECROMANCY)
SpellNoDec(LastSeenBy(Myself),WIZARD_GREATER_MALISON)
SpellNoDecRES("O!decay",StrongestOf)
ChangeClass(Myself,CLERIC)
ReallyForceSpell(Myself,CLERIC_HEAL)
SetGlobalTimer("O!TaluntainSkin","GLOBAL",600)
SetGlobalTimer("O!Cast","LOCALS",0)
SetGlobalTimer("O!ImpInvis","GLOBAL",25)
SetGlobalTimer("O!Decaying","GLOBAL",15)
SetGlobalTimer("O!TaluntainReset","GLOBAL",60)
SetGlobalTimer("O!TaluntainHowl","LOCALS",10)
SetGlobalTimer("O!Summons","LOCALS",18)
SetGlobalTimer("O!Spam","LOCALS",15)
SetGlobalTimer("O!TaluntainMantle","GLOBAL",30)
SetGlobalTimer("O!Cone","GLOBAL",15)
DisplayString(Myself,%*Know* that thou art banned, nooblet%)
END
////////////////////////////////////////////////////////////
// ** Remove their Protections **
//As Most parties will most likely be heavily buffed prior
//to initiating combat (if they know what's in store for them
//at any rate). So we remove whatever protection we can and
//then we can proceed (script restarts, block below is exe-
//cuted).
////////////////////////////////////////////////////////////
IF
Detect(Player1)
Allegiance(Myself,ENEMY)
Global("O!TaluntainDispel","LOCALS",0)
THEN
RESPONSE #100
ChangeClass(Myself,MAGE)
SpellNoDec(NearestEnemyOf(Myself),WIZARD_DISPEL_MAGIC)
SetGlobal("O!TaluntainDispel","LOCALS",1)
END
////////////////////////////////////////////////////////////
// ** Breath **
//Tals breath is based on two factors: The O!Cast timer which
//handles all the casting throughout the script, and the O!cone
//which is specific for the casting of his breath weapon.
////////////////////////////////////////////////////////////
IF
Allegiance(Myself,ENEMY)
GlobalTimerExpired("O!Cone","GLOBAL")
GlobalTimerExpired("O!Cast","LOCALS")
THEN
RESPONSE #100
ChangeClass(Myself,MAGE)
SpellNoDecRES("O!cone",NearestEnemyOf(Myself))
ForceSpell(NearestEnemyOf(Myself),RED_DRAGON_HIT)
SetGlobalTimer("O!Cone","GLOBAL",10)
SetGlobalTimer("O!Cast","LOCALS",6)
Continue()
END
////////////////////////////////////////////////////////////
//Silence fool!
////////////////////////////////////////////////////////////
IF
OR(6)
Class(SixthNearestEnemyOf(Myself),MAGE_ALL)
Class(FifthNearestEnemyOf(Myself),MAGE_ALL)
Class(FourthNearestEnemyOf(Myself),MAGE_ALL)
Class(ThirdNearestEnemyOf(Myself),MAGE_ALL)
Class(SecondNearestEnemyOf(Myself),MAGE_ALL)
Class(NearestEnemyOf(Myself),MAGE_ALL)
Allegiance(Myself,ENEMY)
Global("O!TaluntainDisable","LOCALS",0)
Detect([ANYONE])
GlobalTimerExpired("O!Cast","LOCALS")
THEN
RESPONSE #100
ChangeClass(Myself,CLERIC)
SetGlobalTimer("O!Cast","LOCALS",2)
SpellNoDec(LastSeenBy(Myself),CLERIC_SILENCE_15_FOOT)
DisplayString(Myself,%Silence fool!%)
SetGlobal("O!TaluntainDisable","LOCALS",1)
END
IF
OR(6)
Class(SixthNearestEnemyOf(Myself),CLERIC_ALL)
Class(FifthNearestEnemyOf(Myself),CLERIC_ALL)
Class(FourthNearestEnemyOf(Myself),CLERIC_ALL)
Class(ThirdNearestEnemyOf(Myself),CLERIC_ALL)
Class(SecondNearestEnemyOf(Myself),CLERIC_ALL)
Class(NearestEnemyOf(Myself),MAGE_ALL)
!Global("O!TaluntainDisable","LOCALS",1) // No need to cast again if we've already disabled once.
Allegiance(Myself,ENEMY)
Global("O!TaluntainDisable","LOCALS",0)
Detect([ANYONE])
GlobalTimerExpired("O!Cast","LOCALS")
THEN
RESPONSE #100
ChangeClass(Myself,CLERIC)
SetGlobalTimer("O!Cast","LOCALS",6)
SpellNoDec(WeakestOf,CLERIC_SILENCE_15_FOOT)
DisplayString(Myself,%Silence fool!%)
SetGlobal("O!TaluntainDisable","LOCALS",1)
END
////////////////////////////////////////////////////////////
//You're now moderator...
////////////////////////////////////////////////////////////
IF
See(NearestEnemyOf(Myself))
Global("O!TalDomi","GLOBAL",0)
GlobalTimerExpired("O!Cast","LOCALS")
THEN
RESPONSE #100
ForceSpell(NearestEnemyOf(Myself),MIND_FLAYER_DOMINATION)
SetGlobal("O!Domi","GLOBAL",1)
SetGlobalTimer("O!Cast","LOCALS",6)
Continue()
END
////////////////////////////////////////////////////////////
// ** You dare hit me!?! **
//Punish them once for hitting you; cast imp. invis. and
//reset variables - Taluntain can re-cast!
////////////////////////////////////////////////////////////
IF
Allegiance(Myself,ENEMY)
Global("O!TaluntainHit","GLOBAL",0)
TookDamage()
THEN
RESPONSE #100
ChangeClass(Myself,MAGE)
SpellNoDec(StrongestOf,WIZARD_ENERGY_DRAIN)
SpellNoDec(WeakestOf,WIZARD_METEOR_SWARM)
SpellNoDecRES("O!spam",NearestEnemyOf(Myself))
SpellNoDec(Myself,WIZARD_SPELL_SHIELD)
SpellNoDec(Myself,WIZARD_IMPROVED_INVISIBILITY)
SpellNoDecRES("O!spam",WeakestOf)
SpellNoDecRES("O!maze",WeakestOf)
ForceSpell(NearestEnemyOf(Myself),RED_DRAGON_BREATH)
SetGlobal("O!TaluntainLows","LOCALS",0)
SetGlobal("O!TaluntainMalison","LOCALS",0)
SetGlobal("O!Haste","LOCALS",0)
SetGlobal("O!TaluntainSilence","LOCALS",0)
SetGlobal("O!TaluntainDispel","LOCALS",0)
SetGlobal("O!TaluntainFear","LOCALS",0)
SetGlobal("O!Decaying","GLOBAL",0)
SetGlobal("O!TaluntainMantle","GLOBAL",0)
SetGlobal("O!TalDomi","GLOBAL",0)
SetGlobal("O!TaluntainHit","GLOBAL",1)
END
////////////////////////////////////////////////////////////
// ** Decay **
////////////////////////////////////////////////////////////
IF
Detect(NearestEnemyOfType([PC]))
!GlobalTimerNotExpired("O!Decaying","GLOBAL")
GlobalTimerExpired("O!Cast","LOCALS")
THEN
RESPONSE #100
DisplayString(Myself,%I am a Pithril Dragon, imbecile!%)
ChangeClass(Myself,MAGE)
SpellNoDecRES("O!decay",StrongestOf)
SetGlobalTimer("O!Decaying","GLOBAL",25)
SetGlobalTimer("O!Cast","GLOBAL",6)
Continue()
END
////////////////////////////////////////////////////////////
//Face my diciples!
////////////////////////////////////////////////////////////
IF
See(NearestEnemyOf(Myself))
!GlobalTimerNotExpired("O!Summons","LOCALS")
GlobalTimerExpired("O!Cast","LOCALS")
THEN
RESPONSE #100
ChangeClass(Myself,MAGE)
ForceSpell(Myself,WIZARD_PROTECTION_FROM_EVIL)
ForceSpell(Myself,WIZARD_SPELL_TURNING)
SpellNoDecRES("O!spam",NearestEnemyOf(Myself))
SpellNoDec(Myself,WIZARD_GATE)
SpellNoDec(Myself,WIZARD_SUMMON_EFREET)
ChangeClass(Myself,CLERIC)
SpellNoDec(Myself,CLERIC_CONJURE_FIRE_ELEMENTAL)
SetGlobalTimer("O!Summons","LOCALS",120)
SetGlobalTimer("O!Cast","GLOBAL",6)
DisplayString(Myself,%Face my minions!%)
END
////////////////////////////////////////////////////////////
//Push them, push them, push them!
////////////////////////////////////////////////////////////
IF
Allegiance(Myself,ENEMY)
Range(NearestEnemyOf(Myself),20)
GlobalTimerExpired("O!Spam","LOCALS")
!GlobalTimerNotExpired("O!Cast","LOCALS")
THEN
RESPONSE #100
ChangeClass(Myself,MAGE)
SpellNoDecRES("O!Spam",LastSeenBy(Myself))
SetGlobalTimer("O!Spam","LOCALS",15)
SetGlobalTimer("O!Cast","GLOBAL",6)
Continue()
END
////////////////////////////////////////////////////////////
//Banishment
////////////////////////////////////////////////////////////
IF
Allegiance(Myself,ENEMY)
GlobalTimerExpired("O!TaluntainHowl","LOCALS")
GlobalTimerExpired("O!Cast","LOCALS")
THEN
RESPONSE #100
ChangeClass(Myself,MAGE)
SpellNoDecRES("O!maze",StrongestOf)
SetGlobalTimer("O!TaluntainHowl","LOCALS",60)
SetGlobalTimer("O!Cast","GLOBAL",6)
Continue()
END
////////////////////////////////////////////////////////////
// ** Destroy first wave of Summons **
//If you've summoned anything, Tal will destroy it; but he will
//only do this once! There's a number of reasons as to why, but
//mainly because he summons himself, and it would be stupid of
//him to kill his own creations if it can be prevented.
////////////////////////////////////////////////////////////
IF
Detect([GOODCUTOFF.0.0.0.0.SUMMONED])
Allegiance(Myself,ENEMY)
Global("O!TaluntainUnsummon","LOCALS",0)
THEN
RESPONSE #100
DisplayString(Myself,%Thine lackeys will not save thee%)
ChangeClass(Myself,MAGE)
SpellNoDec(LastSeenBy(Myself),WIZARD_DEATH_SPELL)
SetGlobal("O!TaluntainUnsummon","LOCALS",1)
END
////////////////////////////////////////////////////////////
// ** Re-cast Stoneskin **
////////////////////////////////////////////////////////////
IF
GlobalTimerExpired("O!TaluntainSkin","GLOBAL")
GlobalTimerExpired("O!Cast","LOCALS")
THEN
RESPONSE #100
ReallyForceSpell(Myself,DRAGON_STONE_SKIN)
SetGlobalTimer("O!TaluntainSkin","GLOBAL",600)
SetGlobalTimer("O!Cast","LOCALS",6)
Continue()
END
////////////////////////////////////////////////////////////
// ** Re-cast Imp. Invis. **
////////////////////////////////////////////////////////////
IF
!StateCheck(Myself,STATE_IMPROVEDINVISIBILITY)
GlobalTimerExpired("O!ImpInvis","GLOBAL")
GlobalTimerExpired("O!Cast","LOCALS")
THEN
RESPONSE #100
ChangeClass(Myself,MAGE)
SpellNoDec(Myself,WIZARD_IMPROVED_INVISIBILITY)
SetGlobalTimer("O!ImpInvis","GLOBAL",20)
SetGlobalTimer("O!Cast","LOCALS",6)
Continue()
END
////////////////////////////////////////////////////////////
//Attack if silenced.
////////////////////////////////////////////////////////////
IF
StateCheck(Myself,STATE_SILENCED)
THEN
RESPONSE #100
ChangeAIScript("O!TALX",OVERRIDE)
END
////////////////////////////////////////////////////////////
//Come out, come out wherever you are!
////////////////////////////////////////////////////////////
IF
Allegiance(Myself,ENEMY)
!See([ANYONE])
THEN
RESPONSE #100
ChangeClass(Myself,MAGE)
SpellNoDec(Myself,WIZARD_TRUE_SIGHT)
END
////////////////////////////////////////////////////////////
//Lower their saves - Perish manling!
////////////////////////////////////////////////////////////
IF
Allegiance(Myself,ENEMY)
Detect(StrongestOf)
Global("O!TaluntainMalison","LOCALS",0)
GlobalTimerExpired("O!Cast","LOCALS")
THEN
RESPONSE #100
ChangeClass(Myself,MAGE)
SetGlobalTimer("O!Cast","LOCALS",6)
SpellNoDec(StrongestOf,WIZARD_GREATER_MALISON)
SetGlobal("O!TaluntainMalison","LOCALS",1)
END
////////////////////////////////////////////////////////////
//Fear me!
////////////////////////////////////////////////////////////
IF
Allegiance(Myself,ENEMY)
Detect(Player1)
Global("O!TaluntainFear","LOCALS",0)
GlobalTimerExpired("O!Cast","LOCALS")
THEN
RESPONSE #100
ChangeClass(Myself,MAGE)
SpellNoDecRES("O!aura",myself)
SetGlobal("O!TaluntainFear","LOCALS",1)
SetGlobalTimer("O!Cast","LOCALS",6)
Continue()
END
////////////////////////////////////////////////////////////
//Can Re-cast Mantle
////////////////////////////////////////////////////////////
IF
See(NearestEnemyOf(Myself))
GlobalTimerExpired("O!TaluntainMantle","GLOBAL")
GlobalTimerExpired("O!Cast","LOCALS")
THEN
RESPONSE #100
ChangeCLass(Myself,MAGE)
SpellNoDec(Myself,WIZARD_IMPROVED_MANTLE)
SetGlobalTimer("O!TaluntainMantle","GLOBAL",80)
SetGlobalTimer("O!Cast","LOCALS",6)
END
////////////////////////////////////////////////////////////
//Attack in-between spells
////////////////////////////////////////////////////////////
IF
Detect(NearestEnemyOfType([PC]))
!GlobalTimerExpired("O!Cast","LOCALS")
THEN
RESPONSE #100
Attack(WeakestOf)
END
////////////////////////////////////////////////////////////
// ** No tricks mr! **
////////////////////////////////////////////////////////////
IF
Allegiance(Myself,ENEMY)
!Detect([PC])
CombatCounter(0)
THEN
RESPONSE #100
SetGlobal("O!TaluntainLows","LOCALS",0)
SetGlobal("O!TaluntainMalison","LOCALS",0)
SetGlobal("O!Haste","LOCALS",0)
SetGlobal("O!TaluntainSilence","LOCALS",0)
SetGlobal("O!TaluntainDispel","LOCALS",0)
SetGlobal("O!TaluntainSetup","GLOBAL",0)
SetGlobal("O!TaluntainFear","LOCALS",0)
SetGlobal("O!Decaying","GLOBAL",0)
DisplayString(Myself,%Surely, thine ego has grown far larger than thouselfst!%)
Continue()
END
////////////////////////////////////////////////////////////
//Random walking...
////////////////////////////////////////////////////////////
IF
Allegiance(Myself,ENEMY)
!Detect(NearestEnemyOf(Myself))
THEN
RESPONSE #100
Attack(Player1)
RandomWalkContinuous()
END
////////////////////////////////////////////////////////////
//And so ends the script of Taluntain...
////////////////////////////////////////////////////////////