OsNpcRemove
From OpenSimulator
(Difference between revisions)
m (Change See Also) |
|||
(19 intermediate revisions by 7 users not shown) | |||
Line 1: | Line 1: | ||
− | {| | + | {{osslfunc |
− | | | + | |function_syntax=osNpcRemove(key npc) |
− | | | + | |csharp_syntax= |
− | | | + | |description=*Removes the NPC specified by key '''npc'''. |
+ | |threat_level=High | ||
+ | |permissions=${OSSL|osslNPC} | ||
+ | |delay=0 | ||
+ | |ossl_example=This might be helpful to erase all of the NPCs in your sim. | ||
+ | <source lang="lsl"> | ||
+ | // | ||
+ | // osNpcRemove Script Exemple | ||
+ | // Author: djphil | ||
+ | // | ||
+ | |||
+ | default | ||
+ | { | ||
+ | state_entry() | ||
+ | { | ||
+ | llSay(PUBLIC_CHANNEL, "Touch to see osNpcRemove usage."); | ||
+ | } | ||
− | + | touch_start(integer number) | |
− | + | { | |
− | osNpcRemove( | + | list npcs = llList2ListStrided(osGetNPCList(), 0, -1, 3); |
+ | |||
+ | if (npcs == []) | ||
+ | { | ||
+ | llSay(PUBLIC_CHANNEL, "There is no NPC's in this sim currently."); | ||
+ | } | ||
+ | |||
+ | else | ||
+ | { | ||
+ | integer length = llGetListLength(npcs); | ||
+ | integer i; | ||
+ | |||
+ | for (i = 0; i < length; i++) | ||
+ | { | ||
+ | key npc = llList2Key(npcs, i); | ||
+ | llSay(PUBLIC_CHANNEL, "Remove NPC: " + npc + " (" + llKey2Name(npc) + ")."); | ||
+ | osNpcSay(npc, "Goodbye!"); | ||
+ | osNpcRemove(npc); | ||
+ | } | ||
+ | } | ||
+ | } | ||
+ | } | ||
</source> | </source> | ||
− | | | + | |additional_info=If the '''NPC''' is the UUID of any other type of agent (i.e. a user's regular avatar, not an NPC), this function will silently fail, not erasing existing avatar.<br> |
− | + | In other words, this function does not work on regular avatars but only on NPCs | |
− | + | }} | |
− | + | == See Also == | |
− | + | * [[osNpcCreate]] | |
− | [[ | + | * [[osNpcRemove]] |
− | + | ||
− | [[ | + |
Latest revision as of 18:52, 5 December 2020
osNpcRemove(key npc)
| |
| |
Threat Level | High |
Permissions | ${OSSL |
Extra Delay | 0 seconds |
Example(s) | |
This might be helpful to erase all of the NPCs in your sim.
// // osNpcRemove Script Exemple // Author: djphil // default { state_entry() { llSay(PUBLIC_CHANNEL, "Touch to see osNpcRemove usage."); } touch_start(integer number) { list npcs = llList2ListStrided(osGetNPCList(), 0, -1, 3); if (npcs == []) { llSay(PUBLIC_CHANNEL, "There is no NPC's in this sim currently."); } else { integer length = llGetListLength(npcs); integer i; for (i = 0; i < length; i++) { key npc = llList2Key(npcs, i); llSay(PUBLIC_CHANNEL, "Remove NPC: " + npc + " (" + llKey2Name(npc) + ")."); osNpcSay(npc, "Goodbye!"); osNpcRemove(npc); } } } } | |
Notes | |
If the NPC is the UUID of any other type of agent (i.e. a user's regular avatar, not an NPC), this function will silently fail, not erasing existing avatar. In other words, this function does not work on regular avatars but only on NPCs |
[edit] See Also
- osNpcCreate
- osNpcRemove