LlGiveInventoryList/ja

From Second Life Wiki
Jump to navigation Jump to search

要約

関数: llGiveInventoryList( key avatar, string folder, list inventory );

avatorfolder内にinventoryアイテムを渡します。

• key avatar
• string folder
• list inventory プリムの インベントリ の中にあるアイテムリスト

警告

  • この関数は 3.0 秒間、スクリプトを停止します。
  • inventory がプリムの中で見つからない場合、エラーが DEBUG_CHANNEL 上で叫ばれます。
  • avatorがプリムのUUIDの時、フォルダは作られません。
    • プリムは同じリージョンになければなりません。

サンプル

<lsl>// When a user clicks this object, this script will give a folder containing everything in the objects inventory // This can serve as a unpacker script for boxed objects

default {

   touch_start(integer total_number) {
       list        inventory;
       string      name;
       integer     num = llGetInventoryNumber(INVENTORY_ALL);
       integer     i;
       
       for (i = 0; i < num; ++i) {
           name = llGetInventoryName(INVENTORY_ALL, i);
           if(llGetInventoryPermMask(name, MASK_NEXT) & PERM_COPY)
               inventory += name;
           else
               llSay(0, "Don't have permissions to give you \""+name+"\".");
       }
       
       
       //we don't want to give them this script
       i = llListFindList(inventory, [llGetScriptName()]);
       inventory = llDeleteSubList(inventory, i, i);
       
       if (llGetListLength(inventory) < 1) {
           llSay(0, "No items to offer."); 
       } else {
           // give folder to agent, use name of object as name of folder we are giving
           llGiveInventoryList(llDetectedKey(0), llGetObjectName(), inventory);
       }
      
   }
}</lsl>

関連項目

イベント

関数

特記事項

Search JIRA for related Issues

Signature

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