SecondLifeで、複数のフォルダを内包するインワールド販売アイテムの作り方

参考になる人がいるかもしれないので、まとめておきます。
5
テンタクル七海 @ 個人Vtuber @Tentacle_nanami

セカンドライフ、箱をrezして中身をインベントリに入れるスクリプトがどこにも書いてないんですが…… お店作ろうとしたら絶対に必要なスクリプトなのに、どこにも書いてないなんてことないですよね? 知識のある方、教えていただきたいです…… #SecondLife

2022-06-07 07:24:41
テンタクル七海 @ 個人Vtuber @Tentacle_nanami

そもそもやりたいことは、複数フォルダをrezすることなんです。普通に箱に入れるだけでは複数フォルダが作れなくて困っています。

2022-06-07 08:11:39
テンタクル七海 @ 個人Vtuber @Tentacle_nanami

SLで困っていること、図示してみました! わかりにくいとはおもいますが、 知識を分けてくださる方、お願いします…… もしかして、複数フォルダを一度に配布するにはマケプレ使うしかない感じでしょうか? #SecondLife pic.twitter.com/UtcKv44hND

2022-06-07 10:07:28
拡大
拡大

方法1:多重箱詰め

Yuzuki Eiren @Yuzuki_Eiren

@Tentacle_nanami 各フォルダーごとに箱詰めして、それらをさらに一つに箱詰めすれば一度に配布できませんか? 間違ってたらごめんなさい^^; それぞれの箱を、クリックで”開く”設定にしておくことを忘れずに

2022-06-07 11:11:03
テンタクル七海 @ 個人Vtuber @Tentacle_nanami

@Yuzuki_Eiren 結論から言うと……できました! ただし開封する側が二度手間になってしまうのはちょっと困るので、他の方が教えてくれたスクリプトを使う方法も試してみますね。 今回は本当にありがとうございます。

2022-06-07 13:28:53
テンタクル七海 @ 個人Vtuber @Tentacle_nanami

@Yuzuki_Eiren この方法を使う場合は、 フォルダ分けするアイテムはおまけ程度の少ない物にして、本体は分けないで直に中身にぶちまける感じがいいですね。 いろいろと考えることができて、楽しいです。

2022-06-07 13:34:26

方法1のメリット

・比較的簡単に複数フォルダ内包ができる。
・おまけ的な少ないアイテムをフォルダとしてまとめるのに向いている。

方法2:自動展開スクリプト

テンタクル七海 @ 個人Vtuber @Tentacle_nanami

@MagnumYoshikawa 私が求めていた物はこれかもしれない……! 試してみます!

2022-06-07 12:54:04
テンタクル七海 @ 個人Vtuber @Tentacle_nanami

@MagnumYoshikawa 大変お待たせしました……! 望んでいるものが完璧にできました! 本当にありがとうございます……!

2022-06-07 17:58:37

コピペ用:
list item_a = ["item_01","item_02"]; //フォルダAに入るアイテム名
list item_a = ["item_01","item_02"]; //フォルダBに入るアイテム名

string folder_01 = "A"; //一つ目のフォルダの名前
string folder_02 = "B"; //二つ目のフォルダの名前

default
{
on_rez(integer start_param)
{
llGiveInventoryList(llGetOwner(),folder_01,item_a);
llGiveInventoryList(llGetOwner(),folder_02,item_b);
}
}

方法2のメリット

rezして自動で渡されたフォルダをキープするだけなので、受け取る側の負担がとても少ない。

2つの方法を使った感想まとめ

とれる時間や自分のスクリプトの理解度に応じて、使い分けていきましょう。
方法2の方が上級者向けですが、スクリプトはSLの醍醐味の一つなので、ぜひ習得していきたいですね。