50 lines
1.2 KiB
Plaintext
50 lines
1.2 KiB
Plaintext
|
#include "NW_I0_GENERIC"
|
||
|
#include "jw_privates_inc"
|
||
|
|
||
|
void main()
|
||
|
{
|
||
|
|
||
|
|
||
|
object oPC=GetLastUnlocked();
|
||
|
|
||
|
|
||
|
location lTarget=GetLocation(OBJECT_SELF);
|
||
|
object oTarget = GetFirstObjectInShape(SHAPE_SPHERE, 15.0, lTarget, TRUE, OBJECT_TYPE_CREATURE);
|
||
|
//Cycle through the targets within the spell shape until an invalid object is captured.
|
||
|
while (GetIsObjectValid(oTarget))
|
||
|
{
|
||
|
if (GetTag(oTarget)=="tri_zhentguard")
|
||
|
{
|
||
|
if (GetObjectSeen(oPC,oTarget))
|
||
|
{
|
||
|
SetIsTemporaryEnemy(oPC,oTarget);
|
||
|
SetIsTemporaryEnemy(oTarget,oPC);
|
||
|
AssignCommand(oTarget,SpeakString("Hey!"));
|
||
|
AssignCommand(oTarget,SetFacingPoint(GetPosition(oPC)));
|
||
|
if (!GetIsFighting(oTarget))
|
||
|
{
|
||
|
AssignCommand(oTarget,DetermineCombatRound(oPC));
|
||
|
}
|
||
|
else
|
||
|
{
|
||
|
SetVictim(oPC,oTarget);
|
||
|
}
|
||
|
}
|
||
|
else
|
||
|
{
|
||
|
AssignCommand(oTarget,SetFacingPoint(GetPosition(oPC)));
|
||
|
AssignCommand(oTarget,SpeakString("Uh??"));
|
||
|
}
|
||
|
}
|
||
|
|
||
|
//Select the next target within the shape.
|
||
|
oTarget = GetNextObjectInShape(SHAPE_SPHERE, 15.0, lTarget, TRUE, OBJECT_TYPE_CREATURE | OBJECT_TYPE_DOOR);
|
||
|
}
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
}
|