2007年08月08日
続・はじめての自作スクリプト
つーわけで、この前作ったおみくじスクリプトを改造して、ガチャガチャを作ってみました。
スクリプトはこんな感じ ↓
integer max = 4;
integer min = 1;
default {
touch_start(integer num_detected) {
integer kotae = (integer)llFrand(max) + min;
if ((integer)kotae == 1) {
llSay(0, "ITEM 1");
llGiveInventory( llDetectedKey(0) , "ITEM 1");
} else if ((integer)kotae == 2) {
llSay(0, "ITEM 2");
llGiveInventory( llDetectedKey(0) , "ITEM 2");
} else if ((integer)kotae == 3) {
llSay(0, "ITEM 3");
llGiveInventory( llDetectedKey(0) , "ITEM 3");
} else if ((integer)kotae == 4) {
llSay(0, "ITEM 4");
llGiveInventory( llDetectedKey(0) , "ITEM 4");
} else {
llSay(0, "bug?");
}
}
}

llGiveInventoryを追加した程度で簡単にできちゃいます。あとは、スクリプトと渡すアイテムをガチャガチャ本体にセット。
せっかくなので、本体とカプセルも作っちゃいました!



いえーい、ノリノリだぜ~とバンバン作ってなんとか完成!

よし、これをお披露目じゃ~! と、TAKEしたところ・・・・・・
あれ?
どこにもなくなっちゃったよ!
ガーン!!
せっかく完成したガチャガチャも、いまではこの写真のみとなってしまいました。作ったものがなくなると、なんか脱力感がすごいですね。
9/11追記:その後、別の名前で保存されているのを発見しました。テヘヘ。
スクリプトはこんな感じ ↓
integer max = 4;
integer min = 1;
default {
touch_start(integer num_detected) {
integer kotae = (integer)llFrand(max) + min;
if ((integer)kotae == 1) {
llSay(0, "ITEM 1");
llGiveInventory( llDetectedKey(0) , "ITEM 1");
} else if ((integer)kotae == 2) {
llSay(0, "ITEM 2");
llGiveInventory( llDetectedKey(0) , "ITEM 2");
} else if ((integer)kotae == 3) {
llSay(0, "ITEM 3");
llGiveInventory( llDetectedKey(0) , "ITEM 3");
} else if ((integer)kotae == 4) {
llSay(0, "ITEM 4");
llGiveInventory( llDetectedKey(0) , "ITEM 4");
} else {
llSay(0, "bug?");
}
}
}

llGiveInventoryを追加した程度で簡単にできちゃいます。あとは、スクリプトと渡すアイテムをガチャガチャ本体にセット。
せっかくなので、本体とカプセルも作っちゃいました!



いえーい、ノリノリだぜ~とバンバン作ってなんとか完成!

よし、これをお披露目じゃ~! と、TAKEしたところ・・・・・・
あれ?
どこにもなくなっちゃったよ!
ガーン!!
せっかく完成したガチャガチャも、いまではこの写真のみとなってしまいました。作ったものがなくなると、なんか脱力感がすごいですね。
9/11追記:その後、別の名前で保存されているのを発見しました。テヘヘ。
2007年08月07日
はじめての自作スクリプト
Makapuさんのサイトや『リンデンスクリプト入門』などを参考にしながら、はじめての自作スクリプト作りにチャレンジしてみました。
今回作ったのは手始めということで、乱数を発生させてテキストを表示する、“おみくじ”のスクリプトです。

if文にエラーが出たり、型が違うとかいろいろ言われながら何とか完成。

あまり参考にならないかもしれませんが、ソースはこんな感じ。
integer max = 6;
integer min = 1;
default {
touch_start(integer num_detected) {
integer kotae = (integer)llFrand(max) + min;
if ((integer)kotae == 1) {
llSay(0, "kyou");
} else if ((integer)kotae == 2) {
llSay(0, "kichi");
} else if ((integer)kotae == 3) {
llSay(0, "syou kichi");
} else if ((integer)kotae == 4) {
llSay(0, "cyuu kichi");
} else if ((integer)kotae == 5) {
llSay(0, "sue kichi");
} else if ((integer)kotae == 6) {
llSay(0, "dai kichi");
} else {
llSay(0, "bug?");
}
}
}
いろいろいじってて、あやしさは残るものの、一応動いているような!?
ちょっとづつ難しいものにチャレンジしていきたいと思います。
今回作ったのは手始めということで、乱数を発生させてテキストを表示する、“おみくじ”のスクリプトです。

if文にエラーが出たり、型が違うとかいろいろ言われながら何とか完成。

あまり参考にならないかもしれませんが、ソースはこんな感じ。
integer max = 6;
integer min = 1;
default {
touch_start(integer num_detected) {
integer kotae = (integer)llFrand(max) + min;
if ((integer)kotae == 1) {
llSay(0, "kyou");
} else if ((integer)kotae == 2) {
llSay(0, "kichi");
} else if ((integer)kotae == 3) {
llSay(0, "syou kichi");
} else if ((integer)kotae == 4) {
llSay(0, "cyuu kichi");
} else if ((integer)kotae == 5) {
llSay(0, "sue kichi");
} else if ((integer)kotae == 6) {
llSay(0, "dai kichi");
} else {
llSay(0, "bug?");
}
}
}
いろいろいじってて、あやしさは残るものの、一応動いているような!?
ちょっとづつ難しいものにチャレンジしていきたいと思います。