llClearPrimMedia

From Second Life Wiki
Revision as of 11:15, 12 October 2012 by Kireji Haiku (talk | contribs) (added example script)
Jump to navigation Jump to search

Summary

Function: integer llClearPrimMedia( integer face );
1.0 Forced Delay
10.0 Energy

Clears (deletes) the media and all params from the given face.
Returns an integer that is a STATUS_* flag which details the success/failure of the operation.

• integer face face number

Success/Failure Flags Description
STATUS_OK 0 Result of function call was success
STATUS_MALFORMED_PARAMS 1000 Function was called with malformed parameters
STATUS_TYPE_MISMATCH 1001 Argument(s) passed to function had a type mismatch
STATUS_BOUNDS_ERROR 1002 Argument(s) passed to function had a bounds error
STATUS_NOT_FOUND 1003 Object or other item was not found
STATUS_NOT_SUPPORTED 1004 Feature not supported
STATUS_INTERNAL_ERROR 1999 An internal error occurred
STATUS_WHITELIST_FAILED 2001 Whitelist Failed

Caveats

  • This function causes the script to sleep for 1.0 seconds.
  • The function silently fails if its face value indicates a face that does not exist.

Examples

<lsl> // when dropping this script into a prim // it will remove all set media-on-a-prim // on all sides of the prim containing the script // and then the script will delete itself


publish_returned_status_flag(integer inputLink, integer inputFace, integer inputStatus) {

   /* if (inputInteger == 0) */ string outputStatus = "STATUS_OK";
   if (inputStatus == 1000) outputStatus = "STATUS_MALFORMED_PARAMS";
   else if (inputStatus == 1001) outputStatus = "STATUS_TYPE_MISMATCH";
   else if (inputStatus == 1002) outputStatus = "STATUS_BOUNDS_ERROR";
   else if (inputStatus == 1003) outputStatus = "STATUS_NOT_FOUND";
   else if (inputStatus == 1004) outputStatus = "STATUS_NOT_SUPPORTED";
   else if (inputStatus == 1999) outputStatus = "STATUS_INTERNAL_ERROR";
   else if (inputStatus == 2001) outputStatus = "STATUS_WHITELIST_FAILED";
   // PUBLIC_CHANNEL has the integer value 0
   llSay(PUBLIC_CHANNEL, "llClearLinkMedia(link " + (string)inputLink
       + ", face " + (string)inputFace + ") = " + outputStatus + ";");

}

default {

   state_entry()
   {
       integer link = llGetLinkNumber();
       integer numOfSides = llGetLinkNumberOfSides(link);
       integer face;
       do
       {
           integer clearMediaSucceeded = llClearPrimMedia(face);
           publish_returned_status_flag(link, face, clearMediaSucceeded);
           ++face;
       }
       while (face < numOfSides);
       string thisScript = llGetScriptName();
       llRemoveInventory(thisScript);
   }

}

</lsl>

See Also

Deep Notes

History

Signature

function integer llClearPrimMedia( integer face );