llGetPermissionsKey
key llGetPermissionsKey()
現在取得しているパーミッションの対象者UUIDを返す。
戻り値は誰に対するパーミッションを取得しているかを示すUUIDである。
戻り値は誰に対するパーミッションを取得しているかを示すUUIDである。
llGetPermissions関数を使用すると現在取得しているパーミッションを得ることができるが、例えばアニメーション実行権限を得ているからと言って、その権限が誰に対して有効なのかはわからない。
パーミッションは直前に呼び出されたllRequestPermissions関数で指定したアバターに対しての権限である。
パーミッションは直前に呼び出されたllRequestPermissions関数で指定したアバターに対しての権限である。
例えばタッチしたときにアニメーションを実行するような仕組みを考えたとき、アニメーションのパーミッションが正しく取得されているかどうかを調べるには、タッチした人に対するパーミッションを保持しているかどうか以下のようにして判定する。
default {
touch_start(integer detected){
if (llGetPermissionsKey() == [[llDetectedKey]](0)){
integer perm = llGetPermissions();
if (perm & PERMISSION_TRIGGER_ANIMATION) {
llStartAnimation("hogehoge");
}
}
}
}
パーミッションがない場合はllRequestPermissions関数を使用して取得しなければならない。