LlGetObjectPermMask/ja
Jump to navigation
Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
LSL ポータル | 関数 | イベント | 型 | 演算子 | 定数 | 実行制御 | スクリプトライブラリ | カテゴリ別スクリプトライブラリ | チュートリアル |
要約
関数: integer llGetObjectPermMask( integer mask );
|
|
サンプル
オブジェクトの上にフローティングテキストを表示し、次第に消えては現れて次のようなメッセージを表示します。
Open Object --- by Anonymous --- Open/ Yes Mod/ Yes Copy/ Yes Transfer
インベントリから以下のスクリプトをドラッグして、オブジェクトに入れます。
// オブジェクトの上にフローティングテキストで表示します: 名前、説明、権限
// http://wiki.secondlife.com/wiki/llGetObjectPermMask
string perms2String(integer everyonePerms, integer nextPerms)
{
integer PERMS_OPEN = (PERM_MODIFY | PERM_COPY | PERM_TRANSFER);
string line = "Closed";
if ((nextPerms & PERMS_OPEN) == PERMS_OPEN)
{
if (everyonePerms & PERM_COPY)
{
line = "Open";
}
}
if (nextPerms & PERM_MODIFY)
{
line += "/ Yes Mod";
}
if (nextPerms & PERM_COPY)
{
line += "/ Yes Copy";
}
if (nextPerms & PERM_TRANSFER)
{
line += "/ Yes Transfer";
}
return line;
}
list getLabels()
{
string name = llGetObjectName();
if (name == "Object") { name = "(No Name)"; }
string description = llGetObjectDesc();
if (description == "") { description = "(No Description)"; }
integer everyonePerms = llGetObjectPermMask(MASK_EVERYONE);
integer nextPerms = llGetObjectPermMask(MASK_NEXT);
string permissions = perms2String(everyonePerms, nextPerms);
return [name, description, permissions];
}
floatLabels(list lines)
{
string label = llDumpList2String(lines, "\n---\n");
vector color = <1.0, 1.0, 1.0>; // color = <R, G, B>
float opacity = 1.0; // opacity = alpha = 1.0 - transparency
llSetText(label, color, opacity);
}
default
{
state_entry()
{
llSetText("", <0.0, 0.0, 0.0>, 0.0);
llSleep(0.1);
floatLabels(getLabels());
llRemoveInventory(llGetScriptName());
}
}
注意点
新規作成されたオブジェクトの権限は、基本 = PERM_ALL 、オーナー = PERM_ALL 、次のオーナー = PERM_MOVE または PERM_TRANSFER 、グループ = 0 (なし) 、他の人 = 0 (なし) となります。perms2String の例ではこれらの権限を "Closed / Yes Transfer" として表示しています。
関連項目
特記事項
この項目はあなたにとって参考にならない項目ですか?もしかしたらLSL Wikiの関連した項目が参考になるかもしれません。