void main()
{
    object oEnter=GetEnteringObject();
    object oMe=OBJECT_SELF;
    string sRes1=GetLocalString(oMe,"sRes1");
    string sRes2=GetLocalString(oMe,"sRes2");
    object oNear=GetNearestObject(OBJECT_TYPE_WAYPOINT,oEnter,d4());
    if (GetLocalInt(oMe,"bTriggered")) return;
    if (!GetIsPC(oEnter))
    { // !PC
        if (GetLocalInt(oEnter,"bChampion"))
        { // champion
            SetLocalInt(oMe,"bTriggered",TRUE);
            DelayCommand(120.0,DeleteLocalInt(oMe,"bTriggered"));
            if (GetStringLength(sRes1)>0) oMe=CreateObject(OBJECT_TYPE_CREATURE,sRes1,GetLocation(oNear));
            if (GetStringLength(sRes2)>0) oMe=CreateObject(OBJECT_TYPE_CREATURE,sRes2,GetLocation(oNear));
        } // champion
    } // !PC
}