“LlDetectedPos”的版本间的差异
(创建页面,内容为“{{LSL Header|ml=*}}{{LSLC|Keywords}}{{LSLC|Flow Control}}{{LSLC|}} {{函数详情 |函数名 = Function: vector llDetectedPos( integer number ); |参数= 参数:…”) |
|||
| 第4行: | 第4行: | ||
{{函数详情 | {{函数详情 | ||
|函数名 = Function: vector llDetectedPos( integer number ); | |函数名 = Function: vector llDetectedPos( integer number ); | ||
| − | |参数= | + | |参数= 参数:检测信息号的整数索引不支持负索引。 |
| − | |返回值= | + | |返回值= 返回值:返回一个向量,该向量是检测到的对象编号的位置(在区域坐标中)。 |
|注意事项= | |注意事项= | ||
注意事项 | 注意事项 | ||
| − | * | + | *如果数字超出了界限,这个函数返回<0.0,0.0,0.0>,脚本继续执行,没有错误消息。 |
| − | * | + | *启用lldetect *函数的事件总是返回至少一个检测到的项。 |
| − | * | + | *如果没有检测到任何东西,则不引发检测事件。 |
| − | * | + | *检测事件的项检测参数最初不小于1。 |
|示例= | |示例= | ||
2020年5月18日 (一) 11:00的最新版本
| 首页 | 函数 | 事件 | 类型 | 操作符 | 常数 | Flow Control | Script Library | Categorized Library | Tutorials |
| 函数名 |
|---|
| Function: vector llDetectedPos( integer number ); |
| 参数:检测信息号的整数索引不支持负索引。 |
| 返回值:返回一个向量,该向量是检测到的对象编号的位置(在区域坐标中)。 |
| 注意事项 |
|---|
注意事项
|
| 示例 |
|---|
示例1
// Get position and distance of toucher
default
{
touch_start(integer total_number)
{
// get the position of the avatar touching this prim
vector pos = llDetectedPos(0);
// compute how far away they are
float dist = llVecDist(pos, llGetPos() );
llSay(0, "You are " + (string) dist + " metres from me, at coordinates " + (string) pos);
}
}
// get name and sim position of Avatars within "say" range
示例2 default
{
state_entry()
{
llOwnerSay( "Touch me to get the positions of avatars in 'Say' range" );
}
touch_start( integer vIntTouchCount )
{
// Do a one-off sensor sweep over a 20m radius sphere for avatars
llSensor( "", "", AGENT, 20, PI );
}
sensor( integer vIntFound )
{
integer vIntCounter = 0;
//-- loop through all avatars found
do
{
llOwnerSay( llDetectedName( vIntCounter )
// get the position of this detected avatar
+ (string) llDetectedPos( vIntCounter ) );
} while (++vIntCounter < vIntFound);
}
// sensor does not detect owner if it's attached
no_sensor()
{
llOwnerSay( "I couldn't find anybody" );
}
}
|
| 相关函数 |
|---|
| 无 |
| 相关事件 |
|---|
| 无 |