Second Life 新世界的ものづくりのススメ--その36:エンジン5 - (page 3)

大槻透世二(サイバーアドベンチャー)

2008-01-31 08:00

if (agent != llGetOwner()):オーナー判定

 ここでは、先ほど得られた「乗ってこようとしたアバター」の「agent」と「llGetOwner()」の値を比べ、そのkeyデータが違う、または、同じことを判定し、次の段階へ進む。

 「!=」という記号が出てきているが、これは演算子というもので(第22回参照)、日本語版LSL Wikiによれば、定義は下図のようになっている。

「!=」の説明

 さらに、下図のように、この演算子は、「ブーリアン演算子」という種類の演算子になる。意味がよくわからないかもしれないが、ここでは、「!=」が「NOT」の意味をもつことだけを把握していればよいだろう。

「ブーリアン演算子」 ※クリックすると図全体が見られます

 そしていよいよ、「if (agent != llGetOwner())」が真(TRUE)の場合、①が実行される。

①「if (agent != llGetOwner())」が真(TRUE):オーナー以外が乗ろうとした場合

 下図のように、「llSay」で「You aren’t the owener」と左下のチャットボックスで警告を発し、「llUnsit」で乗ろうとしてきたアバターをSitモードから解除し、「llPushObject」でそのアバターを100m上空に飛ばす。この処理により、オーナー以外のアバターは乗れないようになっている。

「if (agent != llGetOwner())」が真(TRUE)の時

②「if (agent != llGetOwner())」が偽(FALSE):オーナーが乗ろうとした場合

 オーナーが乗ろうとした場合、下図の処理が実行される。

「if (agent != llGetOwner())」が偽(FALSE)の時

 「llSeStatus」の日本語版LSL Wikiでの定義は下図のようになっており、「STATUS_PHYSICS」が指定されている場合、このスクリプトが入っているオブジェクトは物理的に動くようになる。

「llSeStatus」 ※クリックすると図全体が見られます

ZDNET Japan 記事を毎朝メールでまとめ読み(登録無料)

ホワイトペーパー

新着

ランキング

  1. セキュリティ

    2023年OTサイバーセキュリティの現状レポート--75%の組織が過去1年間に1回以上の侵入を経験

  2. セキュリティ

    サイバーセキュリティ強化に向けてマイクロソフトが示す実践的な指針を紹介

  3. セキュリティ

    5分でわかる「AWS WAF」--基礎知識から運用で陥りやすい3つの落とし穴までを徹底解説

  4. セキュリティ

    最前線で活躍するトップランナーと本気で考える、これからのサイバーセキュリティ

  5. 経営

    ガートナーが指南、迅速な意思決定を促す「AI」活用を実践する3つの主要ステップ

NEWSLETTERS

エンタープライズ・コンピューティングの最前線を配信

ZDNET Japanは、CIOとITマネージャーを対象に、ビジネス課題の解決とITを活用した新たな価値創造を支援します。
ITビジネス全般については、CNET Japanをご覧ください。

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]