ページ

2010年5月4日火曜日

フォトスタンド用スクリプト Auto Texture Changer Script

便利なスクリを汎用をきかせて公開できれば良いと考えUPしていきます。
ただし商品ではありませんのでバグなどのサポートは一切しませんので
ご了承ください。

Auto Texture Changer Script

今回のスクリの作成するきっかけは 
同一SIMに住む写真家さん Gallery=Ritz=オーナーのRitukoさんから
写真を撮って頂くのですが、
持ち物から写真を一つ一つ開いて見ていくのは表示されるまで重いですし面倒です。
そこで効率よく見れて、飾れたら便利なのに・・と思いフォトスタンド用に作成しました。

表示時間はデェフォルトで5秒になっていますので枚数が多い場合など自分で変えてください。

ボックスプリムに以下のスクリを入れて テクスチャを入れればAutoで表示切替します。
プリムは明るさ全開にすることをお勧めします。

↓ここから下
//   Auto Texture Changer script

float ChangeCycle=5;//テクス表示間隔(秒)
integer ItemType=INVENTORY_TEXTURE;
integer txct;
integer num;
list list_tx;
string textureName;

getTxlist() {
    llSetTimerEvent(0.0);
    list_tx=[];
    integer i;
    txct = llGetInventoryNumber(ItemType);
    if (txct!=0) {
        for (i = 0; i < txct; i++) {
            list_tx+=llGetInventoryName(ItemType,i);
        }
        llSetTimerEvent(ChangeCycle);
    }
}

setTexture() {
    if (txct!=0) {
        num++;
        if (num>=txct) num=0;
        textureName=llGetInventoryName(ItemType,num);
        llSetTexture(textureName, 2);


    }
}

default {

    state_entry() {
        getTxlist();
    }

    on_rez(integer int) {
        llResetScript();
    }

    touch_start(integer t) {
        setTexture();
    }
   
    changed(integer change){
        if (change & CHANGED_INVENTORY){
            getTxlist();
        }
    }
   
    timer() {
        setTexture();
    }
}

↑ここまで

それではノシ