LlSetAnimationOverride/ja

From Second Life Wiki
Jump to navigation Jump to search

要約

関数: llSetAnimationOverride( string anim_state, string anim );

指定したアニメーション(anim)を与えられたアニメーションの状態(anim_state)のときに再生します。

• string anim_state 上書きされるアニメーションの状態
• string anim プリムの インベントリ の中にあるanimation か、組み込みアニメーションの名前

実行するには、llRequestPermissions による PERMISSION_OVERRIDE_ANIMATIONS 権限が必要です。 Note:アニメーションの上書きはリログをすることを除いて継続されます。

タイプ 説明 初期値
"Crouching" State crouch
"CrouchWalking" State crouchwalk
"Falling Down" State falldown
"Flying" State fly
"FlyingSlow" State ホバリングと前進飛行の間の遷移。 flyslow
"Hovering" State hover
"Hovering Down" State hover_down
"Hovering Up" State hover_up
"Jumping" State ジャンプして空中にいる間。 jump
"Landing" Transition ジャンプから着地するとき。 land
"PreJumping" Transition ジャンプをし始めるとき。 prejump
"Running" State run
"Sitting" State オブジェクトに座っているとき。(オブジェクトとリンクされているとき) sit
"Sitting on Ground" State 座っているが、オブジェクトとリンクされていないとき[1] sit_ground_constrained
"Standing" State stand
"Standing Up" Transition 長い距離を落下したあと。硬着陸を指すこともあります。 standup
"Striding" State アバターがオブジェクトの角に引っかかっているときや、他のアバターの上にいるとき。 stride
"Soft Landing" Transition 短い距離を落下したあと。 soft_land
"Taking Off" State hover_up
"Turning Left" State turnleft
"Turning Right" State turnright
"Walking" State walk

警告

  • 権限の自動付与に頼らないようにしましょう。常に run_time_permissions イベントを使用しましょう。
  • スクリプトに PERMISSION_OVERRIDE_ANIMATIONS の権限が不足していると、スクリプトはエラーを DEBUG_CHANNEL で叫び、操作に失敗します (しかしスクリプトは処理を続けます)。
  • いったん PERMISSION_OVERRIDE_ANIMATIONS 権限が付与されると、スクリプトの中で (例えば、新しい llRequestPermissions 呼び出しなどにより) 権限をはく奪することができません。スクリプトはオブジェクトが derez (削除、取り外し、取り込み) されない限り権限が失われません。
  • anim がプリムの中で見つからない場合、またはこれがanimationでない場合、エラーが DEBUG_CHANNEL 上で叫ばれます。
  • アニメーションの上書きはリログをすることを除いて、スクリプトのリセット、スクリプトの削除、装着物の取り外し、他の地域へ渡ったりテレポートしても継続します。
  • "Sit on Ground"状態は他に上書きを設定してもデフォルトのアニメーションが再生されます。ビューワの正しい挙動です。
  • 連続でループ再生するアニメーションを設定したとき、いくつかの状態の挙動についてはまだ未定義で、挙動が変わるかもしれません。それらの状態とは "PreJumping"、"Landing"、"Soft Landing" そして "Standing Up" です。
  • オブジェクトに座っていても PERMISSION_OVERRIDE_ANIMATIONS 権限は暗黙の承認がされません。

サンプル

// Override the Sit, Stand and Walk animations
// 1. place this script and your animations in a prim
// 2. edit the animation names in the script to your animation's names
// 3. attach the prim to your avatar

string gMySit   = "chop_sit";
string gMyStand = "FStand _02";
string gMyWalk  = "Kort gang F v4.1";

default
{
    attach(key id)
    {
        integer perm = llGetPermissions();

        if (id)
        {
            llRequestPermissions(id, PERMISSION_OVERRIDE_ANIMATIONS);
        }
        else if (perm & PERMISSION_OVERRIDE_ANIMATIONS)
        {
            llResetAnimationOverride("ALL");
        }
    }

    run_time_permissions(integer perm)
    {
        if (perm & PERMISSION_OVERRIDE_ANIMATIONS)
        {
            llSetAnimationOverride("Sitting", gMySit);
            llSetAnimationOverride("Standing", gMyStand);
            llSetAnimationOverride("Walking", gMyWalk);
        }
    }
}

関連項目

イベント

•  run_time_permissions 権限取得イベント

関数

•  llGetPermissions 付与されている権限を取得します
•  llGetPermissionsKey 権限を許可したエージェントを取得します
•  llRequestPermissions 権限を要求します
•  llGetAnimationOverride
•  llResetAnimationOverride

記事

•  権限/スクリプト
•  組み込みアニメーション 常に使用可能な組み込みアニメーションのリスト

特記事項

経緯

リリース日 12/04/2013

Search JIRA for related Issues

脚注

  1. ^ アベターのコンテキストメニュー "座る" は地形上、オブジェクト上、空中でさえ、どこからでもその場に座ることを許可します。

Signature

function void llSetAnimationOverride( string anim_state, string anim );
この翻訳は 原文 と比べて古いですか?間違いがありますか?読みにくいですか?みんなで 修正 していきましょう! (手順はこちら)
この項目はあなたにとって参考にならない項目ですか?もしかしたらLSL Wikiの関連した項目が参考になるかもしれません。