“LlWanderWithin”的版本间的差异

来自人工智能助力教育知识百科
跳转至: 导航搜索
(创建页面,内容为“{{LSL Header|ml=*}}{{LSLC|Keywords}}{{LSLC|Flow Control}}{{LSLC|}} {{函数详情 |函数名 = Function: llWanderWithin( vector origin, vector dist, list options )…”)
 
Wzc讨论 | 贡献
 
(未显示同一用户的1个中间版本)
第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 )–漫游标志及其参数
 
|返回值= 返回值:无
 
|返回值= 返回值:无
第66行: 第69行:
 
[[path_update]]
 
[[path_update]]
 
}}
 
}}
附录:(表格)
+
附录:(参数表格)
 
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
|-
 
|-
! header 1
+
! Option
! header 2
+
! V
! header 3
+
! Parameters
|-
+
! Default
| row 1, cell 1
+
! Description
| row 1, cell 2
 
| row 1, cell 3
 
 
|-
 
|-
| row 2, cell 1
+
| [[WANDER_PAUSE_AT_WAYPOINTS]]
| row 2, cell 2
+
| 0
| row 2, cell 3
+
| [integer boolean]
 +
| [ FALSE ]
 +
| Whether the character should pause after reaching each wander waypoint.
 
|}
 
|}

2020年7月13日 (一) 07:44的最新版本

Template:Needs Translation/


函数名
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

llDeleteCharacter

llEvade

llExecCharacterCmd

llGetClosestNavPoint

llFleeFrom

llNavigateTo

llPatrolPoints

llPursue

llUpdateCharacter

llWanderWithin

相关事件
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.