void RespawnPlaceable(string sPlaceableTag, location lLocation) { // Destroy any existing placeable with the same tag to avoid duplication object oPlaceable = GetObjectByTag(sPlaceableTag); if (oPlaceable != OBJECT_INVALID) { DestroyObject(oPlaceable); } // Create the placeable at the same location CreateObject(OBJECT_TYPE_PLACEABLE, sPlaceableTag, lLocation); } void main() { // Get the placeable's tag and location before it is destroyed string sPlaceableTag = GetTag(OBJECT_SELF); location lLocation = GetLocation(OBJECT_SELF); // Delay the respawn for 5 minutes (300 seconds) DelayCommand(300.0, RespawnPlaceable(sPlaceableTag, lLocation)); }