“LlBreakAllLinks”的版本间的差异

来自人工智能助力教育知识百科
跳转至: 导航搜索
(创建页面,内容为“{{LSL Header|ml=*}}{{LSLC|Keywords}}{{LSLC|Flow Control}}{{LSLC|}} {{函数详情 |函数名 = Function: llBreakAllLinks( ); |参数= 参数:无 |返回值= 返…”)
 
Mkx讨论 | 贡献
 
(未显示同一用户的2个中间版本)
第5行: 第5行:
 
|函数名 = Function: llBreakAllLinks( );
 
|函数名 = Function: llBreakAllLinks( );
 
|参数= 参数:无
 
|参数= 参数:无
|返回值= 返回值:无,但作用是Delinks all prims in the link set.
+
|返回值= 返回值:删除链接集中的所有prims.
  
  
|注意事项=This function fails if the owner does not have edit permissions on the object containing the script, the system message "Delink failed because you do not have edit permission" is received by the owner.
+
|注意事项=如果所有者对包含脚本的对象没有编辑权限,则此函数将失败,系统消息“链接删除失败,因为您没有编辑权限”将由所有者接收
  
To run this function the script must request the PERMISSION_CHANGE_LINKS permission with [[llRequestPermissions]] and it must be granted by the owner.
+
要运行此函数,脚本必须使用[[llRequestPermissions]]请求[[PERMISSION_CHANGE_LINKS]]权限,并且必须由所有者授予该权限。
<pre>
 
Permissions
 
Do not depend upon the auto-grant status of permissions. Always use the run_time_permissions event.
 
 
If the script lacks the permission PERMISSION_CHANGE_LINKS, the script will shout an error on DEBUG_CHANNEL and the operation fails (but the script continues to run).
 
  
If PERMISSION_CHANGE_LINKS is granted by anyone other than the owner, then when the function is called an error will be shouted on DEBUG_CHANNEL.
+
  Permissions
 +
  不要依赖于权限的自动授予状态。始终使用[[run_time_permissions]]事件。
 +
  如果脚本缺少权限[[PERMISSION_CHANGE_LINKS]],脚本将在[[DEBUG_CHANNEL]]上报错,操作失败(但是脚本继续运行)。
 +
  如果[[PERMISSION_CHANGE_LINKS]]是由所有者以外的任何人授予的,那么当调用该函数时,将在[[DEBUG_CHANNEL]]上显示一个错误。
 +
  一旦[[PERMISSION_CHANGE_LINKS]]权限被授予,除了从脚本内部(例如,使用一个新的[[llRequestPermissions]]调用)或脚本被重置或删除外,就没有其他方法来撤销它
  
Once the PERMISSION_CHANGE_LINKS permission is granted there is no way to revoke it except from inside the script (for example, with a new llRequestPermissions call) or the script is reset or deleted.
 
</pre>
 
  
 
|示例=
 
|示例=
第46行: 第43行:
 
</pre>
 
</pre>
  
|相关函数=[[llGetPermissions]] – Get the permissions granted
+
|相关函数=[[llGetPermissions]] – 获得授予的权限
 
   
 
   
[[llGetPermissionsKey]] - Get the agent who granted permissions
+
[[llGetPermissionsKey]] - 获取授予权限的代理
 
   
 
   
[[llRequestPermissions]] – Request permissions
+
[[llRequestPermissions]] –请求权限
  
[[llBreakLink]] – Break a link
+
[[llBreakLink]] – 打破一个链接
  
[[llCreateLink]] – Link to another object
+
[[llCreateLink]] – 链接到另一个对象
  
|相关事件=  run_time_permissions – Permission receiving event
+
|相关事件=  [[run_time_permissions]] 允许接收事件
  
changed – CHANGED_LINK
+
[[changed]] [[CHANGED_LINK]]
 
}}
 
}}

2020年4月14日 (二) 15:22的最新版本

Template:Needs Translation/


函数名
Function: llBreakAllLinks( );
参数:无
返回值:删除链接集中的所有prims.
注意事项
如果所有者对包含脚本的对象没有编辑权限,则此函数将失败,系统消息“链接删除失败,因为您没有编辑权限”将由所有者接收

要运行此函数,脚本必须使用llRequestPermissions请求PERMISSION_CHANGE_LINKS权限,并且必须由所有者授予该权限。

 Permissions
 不要依赖于权限的自动授予状态。始终使用run_time_permissions事件。
 如果脚本缺少权限PERMISSION_CHANGE_LINKS,脚本将在DEBUG_CHANNEL上报错,操作失败(但是脚本继续运行)。 
 如果PERMISSION_CHANGE_LINKS是由所有者以外的任何人授予的,那么当调用该函数时,将在DEBUG_CHANNEL上显示一个错误。 
 一旦PERMISSION_CHANGE_LINKS权限被授予,除了从脚本内部(例如,使用一个新的llRequestPermissions调用)或脚本被重置或删除外,就没有其他方法来撤销它
示例
//-- requests permission to change linkes, then breaks all links on touch.
default{
  state_entry(){
    llRequestPermissions( llGetOwner(), PERMISSION_CHANGE_LINKS );
  }
 
  run_time_permissions( integer vBitPermissions ){
    if (PERMISSION_CHANGE_LINKS & vBitPermissions){
      state sMain;
    }else{
      llResetScript();
    }
  }
}
 
state sMain{
  touch_start( integer vIntTouched ){
    llBreakAllLinks();
  }
}
相关函数
llGetPermissions – 获得授予的权限

llGetPermissionsKey - 获取授予权限的代理

llRequestPermissions –请求权限

llBreakLink – 打破一个链接

llCreateLink – 链接到另一个对象

相关事件
run_time_permissions – 允许接收事件

changedCHANGED_LINK