void main() { effect eVFX; object oTarget; object oSpawn; // Get the creature who triggered this event. object oPC = GetEnteringObject(); // Only fire for (real) PCs. if ( !GetIsPC(oPC) || GetIsDMPossessed(oPC) ) return; // Only fire once per PC. if ( GetLocalInt(oPC, "DO_ONCE__" + GetTag(OBJECT_SELF)) ) return; SetLocalInt(oPC, "DO_ONCE__" + GetTag(OBJECT_SELF), TRUE); // Spawn "sl_induc". oTarget = GetWaypointByTag("WP_SPn_Induc"); oSpawn = CreateObject(OBJECT_TYPE_CREATURE, "sl_induc", GetLocation(oTarget)); AssignCommand(oSpawn, ActionStartConversation(oPC)); // Apply a visual effect. eVFX = EffectVisualEffect(VFX_IMP_UNSUMMON); ApplyEffectToObject(DURATION_TYPE_INSTANT, eVFX, oSpawn); // Destroy an object (not fully effective until this script ends). DelayCommand(5.0, DestroyObject(GetObjectByTag("Portal1"))); }