SIM再起動後のフロートテキストの???化回避策

SIM再起動後のフロートテキストの???化回避策

- 堀田 海月 の投稿
返信数: 1

再起動後に再度フロートテキストを再設定すればいいと考えたので・・・

案1)SIMが再起動したらリセット


default
{
    state_entry()
    {
        llSetText("フロートテキスト", <1.0, 1.0, 1.0>, 1.0);
    }

    changed(integer change)
    {
        if(change & CHANGED_REGION_START)
        {
            llResetScript();
        }
    }
}

案2)SIMが再起動したらもう一度フロートテキストを再設定する。


default
{
    state_entry()
    {
        llSetText("フロートテキスト", <1.0, 1.0, 1.0>, 1.0);
    }

    changed(integer change)
    {
        if(change & CHANGED_REGION_START)
        {
            llSetText("フロートテキスト", <1.0, 1.0, 1.0>, 1.0);
        }
    }
}

案3)動的にテキストが作られてる場合は、その部分をユーザー関数化して再利用する。


//**** ユーザー関数 **********************************************
ulSetText() //名前はなんでも良い。ちなみにこの場合のulはユーザーライブラリの略
{
    【フロートテキストを設定する何らかの処理】
}

default
{
    state_entry()
    {
        ulSetText();
    }

    changed(integer change)
    {
        if(change & CHANGED_REGION_START)
        {
            ulSetText();
        }
    }
}
堀田 海月 への返信

Re: SIM再起動後のフロートテキストの???化回避策

- 知世 (ともよ) の投稿
一般的に案1が使われているようです
案3でも良いと思います
ですが案2は考え方としてあまりよろしくないと思います
再起動前と再起動後を別の表示にしたい理由があるなどの
特段の理由がある場合は別ですが
同じことをしたいのに処理が別々に書かれているのは望ましくないからです

14行程度のコードなので問題ないとは言えますが
プログラミングの入門をしてると考えると今後を考えるとという話です
変な老婆心ですみません