LlGetLinkNumberOfSides/ja
Jump to navigation
Jump to search
LSL ポータル | 関数 | イベント | 型 | 演算子 | 定数 | 実行制御 | スクリプトライブラリ | カテゴリ別スクリプトライブラリ | チュートリアル |
要約
関数: integer llGetLinkNumberOfSides( integer link );
|
|
警告
- link は実際に存在する リンク番号 か、LINK_ROOT や LINK_THIS のような、単体プリムでも同じように扱えるリンク定数である必要があります。
- LINK_SET, LINK_ALL_CHILDREN, LINK_ALL_OTHERS では動作しません。
サンプル
default
{
state_entry()
{
// 面の数をフローティングテキストに設定します。
integer numOfSides = llGetLinkNumberOfSides(LINK_ROOT);
llOwnerSay( "このプリムは " + (string)numOfSides + " 面あります。" );
}
}
注意点
リンク番号
オブジェクトを構成するそれぞれのプリムにはアドレスがあります。それがリンク番号です。オブジェクトの特定のプリムにアクセスするには、そのプリムのリンク番号を知らなければなりません。リンク番号はプリムに振られますが、オブジェクトに座っているアバターにも振られます。
- オブジェクトが単一のプリムで構成されていて、アバターが座っていないとき、(ルート)プリムのリンク番号は 0 です。
- しかし、オブジェクトが複数のプリムで構成されていたり、オブジェクトに座っているアバターがいたりすると、ルートプリムのリンク番号は 1 となります。
アバターがオブジェクトに座ると、リンクセットの末尾に追加され、いちばん大きなリンク番号が振られることになります。さらに、アバターがオブジェクトに座っている場合、アバターを立たせないと、プリムのリンク・リンク解除ができません。
プリムやアバターの数え方
オブジェクトのプリムや、プリムに座っているアバターの数を調べるのに、2つの関数があります。
llGetNumberOfPrims()
- プリムと座っているアバターの数を返します。llGetObjectPrimCount(llGetKey())
- オブジェクトのプリムの数だけを返しますが、アタッチメントとなっている場合は 0 を返します。
integer GetPrimCount() { //常にプリムの数だけを返します。
if(llGetAttached())//装着されているか?
return llGetNumberOfPrims();//アバターとプリムの数を返しますが、アタッチメントの上には座れないのでこれでいいです。
return llGetObjectPrimCount(llGetKey());//プリムの数だけを返しますが、アタッチメントの場合ここは通りません。
}
関連項目
関数
• | llGetLinkNumber | – | スクリプトが入っているプリムのリンク番号を取得します。 | |
• | llSetLinkColor | |||
• | llSetLinkTexture |
特記事項
この項目はあなたにとって参考にならない項目ですか?もしかしたらLSL Wikiの関連した項目が参考になるかもしれません。