查看“LlSameGroup”的源代码
←
LlSameGroup
跳转至:
导航
、
搜索
因为以下原因,您没有权限编辑本页:
您所请求的操作仅限于该用户组的用户使用:
用户
您可以查看与复制此页面的源代码。
{{LSL Header|ml=*}}{{LSLC|Keywords}}{{LSLC|Flow Control}}{{LSLC|}} {{函数详情 |函数名 = Function: integer llSameGroup( key uuid ); |参数= 参数:• key uuid – [[group]], [[avatar]] or [[prim]] [[UUID]] that is in the same [[region]] |返回值= 返回值:如果uuid和脚本所在的prim属于同一组,则返回一个布尔值(整数),否则为FALSE。 这个函数将包含脚本的prim的组-uuid与uuid描述的组-uuid进行比较。它回答了两个问题: 脚本的prim是否与uuid在同一组? 脚本的prim的group-uuid是否等于uuid? |注意事项=不太明显的是,如果对象没有设置为组(例如,它会返回[[TRUE]])。"(none)"),并且具有给定键的AV没有组活动,或者使用[[NULL_KEY]]调用函数。 '''Specification''' 脚本所在的基本物体组是…… • 将基本物体组设为 • 原语所属的组 • 除此之外,基本物体组还归其所有 • 如果没有设置组信息,则为此使用的组uuid为NULL_KEY。 uuid的组为… • 如果uuid是一个prim(已知的区域)… • 它是一个附件,所有者的活动组* • 将基本物体组设为 • 原语所属的组 • 除此之外,基本物体组还归其所有 • 如果没有设置组信息,则为此使用的组uuid为NULL_KEY。 • 如果uuid是一个avatar(该地区已知)… • 化身的活跃组。 • 如果没有设置组信息,则为此使用的组uuid为NULL_KEY。 • 否则,将uuid视为组uuid。 • 这意味着不再执行“脚本的prim是否与uuid在同一组?”,而是执行“脚本的prim的group-uuid是否等于uuid?” 注意:没有组、prim或avatar共享相同的uuid。 在伪代码: integer llSameGroup(key uuid){ key group = getGroupKey(llGetKey()); if(uuid == group) return TRUE; if(getGroupKey(uuid) == group) return TRUE; return FALSE; } |示例= 示例1 <pre> //只将库存对象提供给具有相同活动组的代理 default { touch_start(integer total_number) { key id = llDetectedKey(0); integer sameGroup = llSameGroup(id); //同llDetectedGroup(i)(有llDetectedGroup,检测到的不需要在sim中) if (sameGroup) { integer numberOfObjectsInPrim = llGetInventoryNumber(INVENTORY_OBJECT); if (numberOfObjectsInPrim) llGiveInventory(id, llGetInventoryName(INVENTORY_OBJECT, 0)); } else { llRegionSayTo(id, 0, "Wrong active group!"); } } } </pre> |相关函数= [[llDetectedGroup]] - 与检测事件一起使用 [[llGetAttachedList]] - 与[[llGetObjectDetails]]和[[OBJECT_GROUP]]一起,它可以用于确定佩戴至少一个非hud附件的avatar的活动组。 }}
该页面使用的模板:
模板:LSL Header
(
查看源代码
)
模板:LSLC
(
查看源代码
)
模板:LSLGC
(
查看源代码
)
模板:Multi-lang
(
查看源代码
)
模板:函数详情
(
查看源代码
)
返回至
LlSameGroup
。
导航菜单
个人工具
登录
名字空间
页面
讨论
变种
视图
阅读
查看源代码
查看历史
更多
搜索
导航
网站首页
知识百科
编辑帮助
最近更改
工具
链入页面
相关更改
特殊页面
页面信息