“LlWanderWithin”的版本间的差异
(创建页面,内容为“{{LSL Header|ml=*}}{{LSLC|Keywords}}{{LSLC|Flow Control}}{{LSLC|}} {{函数详情 |函数名 = Function: llWanderWithin( vector origin, vector dist, list options )…”) |
|||
第5行: | 第5行: | ||
|函数名 = Function: llWanderWithin( vector origin, vector dist, list options ); | |函数名 = Function: llWanderWithin( vector origin, vector dist, list options ); | ||
|参数= 参数:将角色设置为在指定半径内围绕中心点漫游。 | |参数= 参数:将角色设置为在指定半径内围绕中心点漫游。 | ||
+ | |||
•矢量原点(vector origin)-可漫游的中心点 | •矢量原点(vector origin)-可漫游的中心点 | ||
+ | |||
•vector dist–设置角色沿与世界对齐的轴偏离原点的距离 | •vector dist–设置角色沿与世界对齐的轴偏离原点的距离 | ||
+ | |||
•列表选项(list options )–漫游标志及其参数 | •列表选项(list options )–漫游标志及其参数 | ||
|返回值= 返回值:无 | |返回值= 返回值:无 | ||
第69行: | 第72行: | ||
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
|- | |- | ||
− | ! | + | ! Option |
− | ! | + | ! V |
− | ! | + | ! Parameters |
− | + | ! Default | |
− | + | !Description | |
− | |||
− | |||
|- | |- | ||
− | | | + | | [[WANDER_PAUSE_AT_WAYPOINTS]] |
− | | | + | | 0 |
− | | | + | | [integer boolean] |
+ | | [ FALSE ] | ||
+ | | Whether the character should pause after reaching each wander waypoint. | ||
|} | |} |
2020年7月13日 (一) 07:42的版本
首页 | 函数 | 事件 | 类型 | 操作符 | 常数 | Flow Control | Script Library | Categorized Library | Tutorials |
函数名 |
---|
Function: llWanderWithin( vector origin, vector dist, list options ); |
参数:将角色设置为在指定半径内围绕中心点漫游。
•矢量原点(vector origin)-可漫游的中心点 •vector dist–设置角色沿与世界对齐的轴偏离原点的距离 •列表选项(list options )–漫游标志及其参数 |
返回值:无 |
注意事项 |
---|
必须使用llCreateCharacter,否则脚本无法编译。
漫游区域是基于指定原点的粗糙区域,在每个轴上按指定比例缩放。因此,如果指定<20,10,2>m,则对象将沿世界x轴在20 m范围内移动,沿世界y轴移动10 m,沿世界z轴移动2 m。 当WANDER_PAUSE_AT_WAYPOINTS启用时,当接近每个航路点时,将触发PU_GOAL_REACHED和PU_Lucking_DISTANCE_REACHED path_更新事件。当此标志被禁用时,到达航路点时不会触发上述路径更新事件。 通过引入障碍物(如墙),可以将漫游区域限制在较小的区域内。 为任何矢量指定的垂直位置应尽可能接近所需地形的实际高度。提供的垂直位置与实际地形/物体之间的较大差异将导致行为失败。 对于所有的寻路行为,不要依赖于这里的详细实现。漂移距离只是一个粗略的估计。我们可能会一时兴起改变确切的形状。为了好玩。或者因为这样看起来更好。或者确保您不依赖于详细的实现。别让这成为另一个PATHBUG-69。 |
示例 |
---|
示例1
default { state_entry() { llCreateCharacter([CHARACTER_MAX_SPEED, 25, CHARACTER_DESIRED_SPEED, 15.0]); //MAX_SPEED is @ 20 by default } touch_start(integer total_number) { llWanderWithin(llGetPos(), <10.0, 10.0, 5.0>, [WANDER_PAUSE_AT_WAYPOINTS, TRUE]); } } |
相关函数 |
---|
llCreateCharacter |
相关事件 |
---|
path_update |
附录:(表格)
Option | V | Parameters | Default
!Description | |
---|---|---|---|---|
WANDER_PAUSE_AT_WAYPOINTS | 0 | [integer boolean] | [ FALSE ] | Whether the character should pause after reaching each wander waypoint. |