OsNpcRemove
From OpenSimulator
(Difference between revisions)
m (Change See Also) |
|||
(15 intermediate revisions by 6 users not shown) | |||
Line 1: | Line 1: | ||
− | {{osslfunc | + | {{osslfunc |
− | + | |function_syntax=osNpcRemove(key npc) | |
− | | | + | |csharp_syntax= |
− | function_syntax = | + | |description=*Removes the NPC specified by key '''npc'''. |
− | osNpcRemove(key npc) | + | |threat_level=High |
− | + | |permissions=${OSSL|osslNPC} | |
− | | | + | |delay=0 |
− | ossl_example = | + | |ossl_example=This might be helpful to erase all of the NPCs in your sim. |
<source lang="lsl"> | <source lang="lsl"> | ||
− | // | + | // |
− | // | + | // osNpcRemove Script Exemple |
− | // | + | // Author: djphil |
− | + | // | |
+ | |||
default | default | ||
{ | { | ||
+ | state_entry() | ||
+ | { | ||
+ | llSay(PUBLIC_CHANNEL, "Touch to see osNpcRemove usage."); | ||
+ | } | ||
+ | |||
touch_start(integer number) | touch_start(integer number) | ||
{ | { | ||
− | list | + | 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 |
− | additional_info = | + | |
− | + | ||
− | + | ||
}} | }} | ||
+ | == 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