Site search

Google
WWW を検索 backup-beta.blogspot.com を検索

2008年8月2日土曜日

ウェルカムマットのスクリプト

今回はとても簡単なウェルカムマットです。ショップの出入り口なんかに敷いてあって、踏むと Chihiro Owatatsumi, welcome to SHOP CHIHIRO !! みたいなメッセージを喋るマットです。

ビューワーが1.20になってから普通にスクリプトに直接日本語を入れれるようになったので、日本語で表示するのも簡単にできるようになりましたね^^
マットを踏んだとかはcollision_startcollision_endイベントで接触を検知します。
// 接触するとチャットで喋る
default
{
    collision_start(integer total_number)
    {  // オブジェクトに接触すると
        string name=llDetectedName(0);  // 名前を調べて
        llSay(0, name+"さん、いらっしゃい!!");  // いらっさい♪
    }
}

はい、こんだけですw オブジェクトはもちろん踏みやすいように薄くして、マットって感じのテクスチャ貼ってくださいねー^^
でも、これだとちょっと引き返したり、短時間のうちに何度も往復したりですとか、あと普通ないと思いますがぴょんぴょん跳ねながら移動するアバターなんかが通ったりするとメッセージがたらたら連続で表示されるはずなので、もうひと工夫したほうがいいんじゃないかなって思いますwww


今度はcollision_endでマットから離れたときに喋るようにして、30秒以内に同じアバターが来たときは喋らないようにしてみました^^
// ウェルカムマット
string tmp;  // 名前の記憶用

default
{
    collision_end(integer total_number)
    {  // マットから離れると
        string name=llDetectedName(0);  // アバター名を調べて
        if (name != tmp) {  // 前のアバター名と違ったら
            tmp=name;  // 名前を記憶しといて
            llSay(0, name+"さん、ようこそ♪");  // メッセージ喋る
        }
        llSetTimerEvent(30);  // 30秒後にタイマー
    }

    timer()
    {
        llSetTimerEvent(0);  // タイマークリア
        tmp="";  // 記憶を消去
    }
}

0 件のコメント:

コメントを投稿