void main() { object oLeaving=GetExitingObject(); if (!GetIsPC(oLeaving)) { return; } object oObject = GetFirstObjectInArea(); int nPCinArea=FALSE; location lLoc; int nIdx; object oGolem; //location lLoc; object oItem; object oTest=GetFirstPC(); while (GetIsObjectValid(oTest) == TRUE) { if ((GetArea(oTest) == OBJECT_SELF)&&(!GetIsDM(oTest))) { nPCinArea = TRUE; return; } oTest=GetNextPC(); } /// this returns true if there are any PCs in the area that are NOT /// the object that just entered the area if (nPCinArea != TRUE) { object oItem; oObject = GetFirstObjectInArea(); while (GetIsObjectValid(oObject) == TRUE) { //if (GetIsEncounterCreature(oObject)&&!GetPlotFlag(oObject)) // { // DestroyObject(oObject); // } // if (GetObjectType(oObject)==OBJECT_TYPE_TRIGGER) // { // SetEncounterActive(TRUE,oObject); // } 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); } oObject=GetNextObjectInArea(); } nIdx=0; oObject=GetObjectByTag("jw_neutral_gol",nIdx); while (GetIsObjectValid(oObject)) { SetPlotFlag(oObject,FALSE); DestroyObject(oObject); nIdx++; oObject=GetObjectByTag("jw_neutral_gol",nIdx); } nIdx=0; oObject=GetObjectByTag("jw_fake_tres",nIdx); while (GetIsObjectValid(oObject)) { SetPlotFlag(oObject,FALSE); DestroyObject(oObject); nIdx++; oObject=GetObjectByTag("jw_fake_tres",nIdx); } if (GetIsObjectValid(GetObjectByTag("Kethoth"))) { DestroyObject(GetObjectByTag("Kethoth")); } } }