“LlPursue”的版本间的差异
(创建页面,内容为“{{LSL Header|ml=*}}{{LSLC|Keywords}}{{LSLC|Flow Control}}{{LSLC|}} {{函数详情 |函数名 = Function:llPursue( key target, list options ); |参数= 参数:key…”) |
|||
第66行: | 第66行: | ||
! Value | ! Value | ||
! Description | ! Description | ||
− | + | ! Usage | |
− | + | ! Default Value | |
|- | |- | ||
| [[PURSUIT_OFFSET]] | | [[PURSUIT_OFFSET]] |
2020年7月6日 (一) 09:42的最新版本
首页 | 函数 | 事件 | 类型 | 操作符 | 常数 | Flow Control | Script Library | Categorized Library | Tutorials |
函数名 |
---|
Function:llPursue( key target, list options ); |
参数:key target - group, avatar or object UUID to pursue.
list options - 为追求参数;见附录。 |
返回值:使物体追求目标。 |
注意事项 |
---|
必须使用llCreateCharacter或脚本崩溃(脚本错误)
为任何矢量指定的垂直位置都应选择尽可能接近所要求地形的实际高度。所提供的垂直位置与实际地形/物体之间的巨大差异将导致行为失败。 在追击偏移量的参数中,Z值是未使用的(如果不是0.0则是错误的)。 REQUIRE_LINE_OF_SIGHT不需要在llPursue()被调用后立即使用视线-它只影响目标物体/代理移动后的位置更新。 FUZZ_FACTOR在偏移位置附近(缩放*长度偏移)的区域内选择一个点。值必须在0.0和1.0之间。 |
示例 |
---|
示例1
default { state_entry() { llCreateCharacter([CHARACTER_DESIRED_SPEED, 35.0, CHARACTER_MAX_SPEED, 35.0]); } touch_start(integer total_number) { llPursue(llDetectedKey(0), [PURSUIT_OFFSET, <-2.0, 0.0, 0.0>, PURSUIT_FUZZ_FACTOR, 0.2]); } } |
相关函数 |
---|
llCreateCharacter |
相关事件 |
---|
path_update |
附录:(表格)
Option | Value | Description | Usage | Default Value |
---|---|---|---|---|
PURSUIT_OFFSET | 1 | 到与目标偏移的位置。 | [PURSUIT_OFFSET, vector offset] | ZERO_VECTOR |
REQUIRE_LINE_OF_SIGHT | 2 | 定义角色是否需要一个物理视线来追逐。当启用时,当角色和目标物体/代理之间有固定物体时,角色不会选择新的目标位置。 | [REQUIRE_LINE_OF_SIGHT, integer boolean] | FALSE |
PURSUIT_FUZZ_FACTOR | 3 | 选择一个靠近追踪器偏移量的随机目标。有效的模糊因子范围从0到1,其中1是最随机的。这个选项需要一个非零的追击偏移量。 | [PURSUIT_FUZZ_FACTOR, float factor] | 0.0 |
PURSUIT_INTERCEPT | 4 | 定义字符是否尝试预测目标的未来位置。 | [PURSUIT_INTERCEPT, integer boolean] | FALSE |
PURSUIT_GOAL_TOLERANCE | 5 | 定义字符与当前目标的近似距离,以确定其处于所需位置。有效范围从0.25到10m。 | [PURSUIT_GOAL_TOLERANCE, float tolerance] | 默认值与字符大小成比例 |