void main() { { object oObject = GetFirstObjectInArea(); int nPCinArea=FALSE; location lLoc; object oBag=GetObjectByTag("jw_ammo_bag"); object oStone=GetItemPossessedBy(oBag,"jw_ammo_stone"); 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 (nPCinArea != TRUE) { if (!GetIsObjectValid(oStone)) { CreateItemOnObject("jw_ammo_stone",oBag,1); } 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); } oObject=GetNextObjectInArea(); } } } }