EOF/ja

From Second Life Wiki
< EOF
Revision as of 07:32, 5 May 2009 by MasterOf Perl (talk | contribs) (Initial translation)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

解説

定数: string EOF = "\n\n\n";

string 定数 EOF の値は "\n\n\n" です。

EOF は llGetNotecardLine 関数を実行することで発生する dataserver イベントが返す値で、それは要求された行がノートカードの末尾を超えているという意味で使われます。その値は "\n\n\n"、すなわち三個の newline (0x0a) 文字と等しくなっています。 本来これは、ノートカードからデータ (一般にユーザの設定情報) を読み終わり、スクリプトの次の処理やステートに移れるようになった事を知らせるために使われます。

関連記事

関数

•  llGetNotecardLine

イベント

•  dataserver

サンプル

<lsl>integer iLine; string card = "~config" key myquery;

default{

   state_entry() {
       if(llGetInventoryType(card) != INVENTORY_NONE)
           myquery = llGetNotecardLine(card, iLine = 0);
       else
           llSay("ノートカード \"" + card + "\" が見つかりません。処理を中断します。");
   }
    
   dataserver(key request, string sdata){
       if(request == myquery){
           if(sdata == EOF){ // ノートカードにもう行は無い。
               state ready; //次のステートへ移る。
           }
           else {
               //ここでデータ処理を行なう
               //llOwnerSay(sdata);
               //ここで次の行を読み、dataserver の内容を始めから再開する
               myquery = llGetNotecardLine(card, ++iLine); 
           }
       }
   }

}

state ready{

   state_entry(){
       llOwnerSay("準備ができました。");
   }

} </lsl>

注意事項

EOF は "End Of File" (ファイル終端) を意味する略語です。

特記事項

この翻訳は 原文 と比べて古いですか?間違いがありますか?読みにくいですか?みんなで 修正 していきましょう! (手順はこちら)