Site search
2008年6月13日金曜日
アイテムキャンプのスクリプト
今回は簡単なアイテムキャンプ(プライズキャンプ)のスクリプトです。
一定時間座るとアイテムを渡すだけですから結構簡単にできますね^^
6月13日〜6月15日 SL-Shopping.net-Mall店でセール開催中です。宜しくお願いします。
http://beta.slmame.com/e271319.html
キャンプ終了時に渡すアイテムは忘れないようコンテンツに入れておいてくださいね^^
2009年1月21日4時30分頃追記: キャンプ中をチェックする処理が一ヶ所抜けてたので修正しました。
一定時間座るとアイテムを渡すだけですから結構簡単にできますね^^
6月13日〜6月15日 SL-Shopping.net-Mall店でセール開催中です。宜しくお願いします。
http://beta.slmame.com/e271319.html
キャンプ終了時に渡すアイテムは忘れないようコンテンツに入れておいてくださいね^^
// プライズキャンプ
string prize="Tote bag"; // アイテム
integer camptime=15; // キャンプ時間
integer min;
key av=NULL_KEY;
text_unsit()
{
// フローティングテキスト
string s="Prize camp\nSit here for "+(string)camptime+" min to\n get "+prize+".";
llSetText(s,<1,1,1>,1.0);
}
text_sit()
{
// キャンプ中のフローティングテキスト
string s="Prize camp\n"+(string)min+" min left";
llSetText(s,<1,1,1>,1.0);
}
default
{
state_entry()
{
// 座る位置
llSitTarget(<0.2,0,0.55>,llEuler2Rot(<0,0,0>*DEG_TO_RAD));
llSetSitText("Camp"); // パイメニュー
text_unsit();
}
changed(integer change)
{
if (change & CHANGED_LINK)
{
key agent=llAvatarOnSitTarget();
if (agent) {
if (av) return;
// キャンプ開始
av=agent;
min=camptime;
text_sit();
llSetTimerEvent(60);
}
else {
llSetTimerEvent(0);
av=NULL_KEY;
text_unsit();
}
}
}
timer()
{
if (min <= 1) {
// キャンプ終了
llSetTimerEvent(0);
llGiveInventory(av,prize);
llInstantMessage(av,"Thank you for camping.");
llUnSit(av);
av=NULL_KEY;
text_unsit();
}
else {
// キャンプ時間の表示
min--;
text_sit();
}
}
}
2009年1月21日4時30分頃追記: キャンプ中をチェックする処理が一ヶ所抜けてたので修正しました。
登録:
コメントの投稿 (Atom)
0 件のコメント:
コメントを投稿