void main() { { object oLeaving=GetExitingObject(); if (!GetIsPC(oLeaving)) { return; } object oObject = GetFirstObjectInArea(); int nPCinArea=FALSE; location lLoc; object oItem; // first of all, check every object in the area and see if it is a PC. object oTest=GetFirstPC(); // Test to make sure the activator is a DM, or is a DM // controlling a creature. while (GetIsObjectValid(oTest) == TRUE) { if ((GetArea(oTest) == OBJECT_SELF)&&(!GetIsDM(oTest))) { nPCinArea = TRUE; return; } oTest=GetNextPC(); } //while (GetIsObjectValid(oObject)) // { // if (GetIsPC(oObject)) // { // nPCinArea = TRUE; // return; // } // oObject=GetNextObjectInArea(); // } // if not, then run the next bit of the script if (nPCinArea != TRUE) { oObject = GetFirstObjectInArea(); while (GetIsObjectValid(oObject) == TRUE) { if (GetTag(oObject) == "BodyBag") { oItem = GetFirstItemInInventory(oObject); while (GetIsObjectValid(oItem) == TRUE) { DestroyObject(oItem); oItem=GetNextItemInInventory(oObject); } SetPlotFlag(oObject,FALSE); DestroyObject(oObject); } if (GetResRef(oObject)=="jw_trap_trigger") { SetLocalInt(oObject,"done",0); SetLocalInt(oObject,"triggered",FALSE); } if (GetTag(oObject) == "jw_trap_1_plate"||GetTag(oObject) == "jw_trap_2_plate"||GetTag(oObject) == "jw_trap_3_plate"||GetTag(oObject) == "jw_trap_4_plate"||GetTag(oObject) == "jw_trap_5_plate") { SetPlotFlag(oObject,0); DestroyObject(oObject); } if (GetResRef(oObject)=="secretitemtrigge"||GetResRef(oObject)=="secretitemtri001"||GetResRef(oObject)=="jw_secret_dr_tri") { SetLocalInt(oObject,"triggered",FALSE); } if (GetResRef(oObject)=="jw_mobstransf_tr") { SignalEvent(oObject,EventUserDefined(50)); } if (GetLocalInt(oObject,"jw_hidden_int")==TRUE) { SetPlotFlag(oObject,0); DestroyObject(oObject); } oObject=GetNextObjectInArea(); } SetLocalInt(GetObjectByTag("jw_andros_hid"),"Reset",1); SetLocalInt(GetObjectByTag("jw_andros_pool"),"jw_andros_gotobject",0); SetLocalInt(OBJECT_SELF,"nRiddles",d3()); object oOther=GetObjectByTag("jw_andros_lev2"); AssignCommand(oOther,PlayAnimation(ANIMATION_PLACEABLE_DEACTIVATE)); SetLocalInt(oOther,"NW_L_AMION",0); SetLocalInt(OBJECT_SELF,"andtrap",0); object oLever= GetObjectByTag("jw_andros_lev1"); SetPlotFlag(oLever,0); DestroyObject(oLever); CreateObject(OBJECT_TYPE_PLACEABLE,"jw_andros_lev1",GetLocation(GetObjectByTag("jw_andros_lever_WP"))); } } }