LlTextBox/ja

From Second Life Wiki
Jump to navigation Jump to search

要約

関数: llTextBox( key avatar, string message, integer chat_channel );

文字列 message があるダイアログボックスを avatar のスクリーンに表示します。入力用のテキストボックスがあり、"OK" ボタンをクリックすると、入力した文字列が chat_channel発言 されます。

• key avatar アバターの UUID
• string message テキストボックスに表示するメッセージ
• integer chat_channel 出力チャネル、任意の整数
チャネル定数 説明
DEBUG_CHANNEL 0x7FFFFFFF スクリプトのデバッグメッセージとエラーメッセージを受け取るチャットチャネル
PUBLIC_CHANNEL 0x0 近くのユーザ全員にブロードキャストされるチャットチャネル

警告

  • この関数は 1.0 秒間、スクリプトを停止します。
  • バージョン2.4以前のリンデンラボ公式ビューワではサポートされていません。いくつかのサードパーティ製ビューワでもサポートされていないでしょう。サポートされていないビューワではダイアログボックスに "!!llTextBox!!" と表示されるだけでしょう。
  • テキストボックスを非表示にすることはできません。
  • ユーザが"無視する" ボタンを押したかどうかを検知することはできません。 (ボタンを押してもチャット発言は一切生成されません)
  • "OK" ボタンが押された時、ダイアログの回答を Listen しているプリムが発言元プリムから 20 メートル以上離れていると、回答を聞くことができません。
    • この制限はアタッチメントに関しても同様です。リスナーがある場所から装着者が 20 メートル以上離れている場合、リスナーは回答を聞くことができません。

説明文の制限

  • 8 行を超えた場合、スクロールバーが表示されます。
  • message は 512 バイト未満で、空であってはいけません。さもないとエラーが DEBUG_CHANNEL で叫ばれます。

サンプル

integer listener;

default
{
    touch_start(integer total_number)
    {
        llListenRemove(listener);//直前のユーザが未回答のままかもしれません。情報漏洩しないようにしましょう!
        integer channel = ~(integer)llFrand(1000.0);
        listener = llListen(channel,"","","");
        llTextBox(llDetectedKey(0),"何か入力してください...",channel);
    }
    
    listen(integer channel, string name, key id, string message)
    {
        llSay(0,"あなたの入力は: " + message);
        llListenRemove(listener);
    }
}

関連項目

イベント

•  listen

関数

•  llDialog
•  llListen
•  llSay
•  llWhisper
•  llShout
•  llRegionSay

特記事項

経緯

Search JIRA for related Issues

ソース

viewer - indra/llcommon/lllslconstants.h <cpp>// llTextBox() の識別文字列 - ええ、これはハックです。どうぞ訴えてください。 const std::string TEXTBOX_MAGIC_TOKEN = "!!llTextBox!!";</cpp>

Signature

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