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関数を使用して取得しなければならない。