Ty(讨论 | 贡献)2020年5月17日 (日) 07:52的版本
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
Template:Needs Translation/
函数名
|
Function: llCreateCharacter( list options );
|
参数:列表选项-字符配置选项。.
|
返回值:从包含脚本的对象创建路径查找实体,称为“字符”。 需要激活路径查找函数的使用。
|
注意事项
|
一个脚本可以包含一个 llcreatecharacter 调用,其他脚本可以利用这个调用和其他需要的路径函数。 llcreatecharacter 状态保存状态更改、脚本重置和 rezzing.llcreatecharacter 对所有的 pathing 函数都是必需的。 如果多个脚本在同一个对象中使用相互冲突的路径函数(不同的 prim 或相同的 prim) ,则其中一个将随机优先(显然)。 字符最大速度-看路径错误-42-在测试中,我们已经发现一个理想的速度10米 / 秒是足够快的大多数用途,更高的速度可能产生意想不到的结果(特别是当导航狭窄的空间或急转弯)。 2012年3月15日字符 max angular accel min 1.5708字符的形状是一个胶囊(圆柱与球形两端)的长度(从尖端到尖端)和一些半径的圆形横截面。 这两个大小参数分别由字符长度和字符半径参数控制。注意,字符的真实“长度”不能小于半径的两倍加上0.1米; 然而,欢迎指定一个小于这个值(但大于0)——脚本不应该抱怨。 如果你需要你的角色是水平的,那就使用[角色方向,水平]。尽可能使用垂直胶囊,水平胶囊可能比垂直胶囊更容易卡住。 但是,如果字符遇到错误状态,它将无法恢复,因为没有原始脚本可以从中获得错误处理。 不建议从活跃使用的字符中删除脚本。 使用 llexeccharactcmd (字符 cmd stop,[])来停止一个 pathing 命令。 根 prim 的位置决定了字符表面上方的高度; 如果你的字符在表面下沉或者太高,它会调整根 prim 与链接集的其余部分的相对位置(或者创建一个新的根 prim,你可能看不到它,来控制你的字符的表面高度)。 包裹内字符的默认值取决于字符类型。 如果字符类型被设置为除了字符类型为无以外的任何东西,那么字符留在包裹将默认为真,所以总是明确设置字符留在包裹内为假,如果你不希望字符停留在包裹边界。
|
示例
|
create_character()
{
// Clear any previous character behaviors
llDeleteCharacter();
// MAX_SPEED is @ 20 by default
llCreateCharacter([ CHARACTER_MAX_SPEED, 25,
CHARACTER_DESIRED_SPEED, 15.0]);
}
patrol_around(vector targetPos)
{
list points = [targetPos + <5, 0, 0>, targetPos - <5, 0, 0>];
llPatrolPoints(points, []);
}
default
{
on_rez(integer start_param)
{
llResetScript();
}
state_entry()
{
create_character();
}
touch_start(integer num_detected)
{
patrol_around(llGetPos());
}
}
|