Skip to content

enchant.js+アトラスXでIT力判定クイズを作ってみる!

やあみんな元気かな?

enchant.jsにサウンド機能がついたから、アトラスXにもとりあえずつけてみた。
ほんと、とりあえず、だけど。

効果音('se1.wav');

とやると、効果音が鳴る。
それだけ。

いまのところサポートしているのは、se1.wav,se2.wav,se3.wavだけ。
ま、このへんはmisc/game.jsを適当に見てくれれば「ハハーン」って解ると思うので割愛する。

しかしいまのところHTML5で音ってまだまだクセモノなんだよね。

どのへんがクセモノなのかっていうと、とにかく鳴ったり鳴んなかったり。

iOSだと鳴らす度にネットにデータ取りにいくらしくてタイムラグが半端ない。
オマケに音を重ねることもできない。

と、音関係ってのは、とかく後回しにされがちな部分なんだよね。なぜか。

で、音があってもなくても問題なくて、しかし音があった方がゲームが盛り上がるもの、として、クイズゲームなんかどうかな、と考えてみた。

そこで今回はIT力判定クイズってのを作ってみたよ。

まあ問題は適当。
だけど、当たったときと外れたときで音が違う。

こんなちょっとしたことだけでも、なんかゲームを遊んだ感覚がちょっと変わるのが面白いよね。

今回のソースコード解説は以下

今回のソースコードのポイントは、まず問題文を配列で与えているところ。

問題セット = [
        {   q:'マウスの発明者は?',
            a:['ダグラス・エンゲルバート','アラン・ケイ','嶋正利','ビル・ジョイ'] },

このqの部分が問題文で、aの部分が回答なわけだね。

問題セットは、aの最初の項目、つまりa[0]が答えになるように作ってある。

この問題セットには60問くらいの問題が入っている。

そして

    台詞("問題");
    問題 = どれか(問題セット);
    台詞(問題.q);

で、問題に問題セットの中からどれかひとつをランダムに選んで代入している。

それから台詞コマンドで実際の問題を表示しているというワケ。

    var 回答欄 = 問題.a;
   
    正解 = new String(問題.a[0]);
   
    回答セット = シャッフル(回答欄);
    選択肢(回答セット[0],問題画面);
    選択肢(回答セット[1],問題画面);
    選択肢(回答セット[2],問題画面);
    選択肢(回答セット[3],問題画面);

そして選択肢の部分では、まず正解は問題.a[0]に入っているから、これを保存する。

いきなり new Stringとか出て来てるけど気にしない。

なぜこれが必要なのか、ということはここでは割愛する。

そのあと、回答セットをシャッフルしている。つまり、これで選択肢にランダムな回答が並ぶわけだ。

あとは正解と選択された文字列を比較して、一致していれば正解、外れていればダメでライフを1減らすとか、まあいつもの処理を入れてるってワケ。

サウンドノベルとかその手のものではこの音声ってのが欠かせないわけだけど、これがもっと進化するためには、とりあえずHTML5の音声関連がもっと進化してくれないと困るかもなー

というわけで今回はこのへんで

このエントリーをはてなブックマークに追加
はてなブックマーク - enchant.js+アトラスXでIT力判定クイズを作ってみる!
Post to Google Buzz
Share on GREE

No related posts.

Facebook comments:

Post a Comment

Your email is never published nor shared. Required fields are marked *
*
*