ページ

2009/06/01

ガチャガチャのスクリプト

// ガチャガチャ
integer price=10; // 値段
integer len;

init()
{
llSetPayPrice(PAY_HIDE,[PAY_HIDE,PAY_HIDE,PAY_HIDE,PAY_HIDE]); // 一時的に支払いを不可に設定
len=llGetInventoryNumber(INVENTORY_OBJECT); // コンテンツ内のオブジェクト数
if (len > 0) { // オブジェクトが1個以上入ってたら支払いボタンに値段を設定
llSetPayPrice(PAY_HIDE,[price,PAY_HIDE,PAY_HIDE,PAY_HIDE]);
}
}

default
{
state_entry()
{
init(); // 最初にinit実行
}

changed(integer change)
{
if (change & CHANGED_INVENTORY) {
init(); // コンテンツ内が変わったらinit
}
}

money(key id, integer amount)
{ // 支払いがあったら
integer i=llFloor(llFrand(len)); // 乱数発生して
string str=llGetInventoryName(INVENTORY_OBJECT,i); // オブジェクト名を決め
llGiveInventory(id,str); // 購入者に渡す
}
}
スクリプト参照