こんにちは!
まったくの未経験で2月より入社しました、
花山と申します。
いくつかの研修の中から、
今回はenchant.jsで作ったダメゲーをご紹介。
(タイトル「ク○ゲー」で想定してたけど自主規制←)
きっとブログページを開いたときに上部にあったと思います!
小さくてプレイしにくい場合は
こちらへ!
簡単にいうと、
くまさんがたくさん襲ってくる悪魔をジャンプで避ける!
といったものですね。
操作は簡単!くまさんはその場でひたすらダッシュしているので、
クリックやタップでジャンプさせるだけ。2段ジャンプできます。
たくさん苦労しました…
そもそもJavaScriptが苦手です。
画像なんかはデフォルトである程度用意されているので、準備は楽ですよ!
敵は怖そうなものにしたかったので、フリーのものを拝借してきました。
画像提供 「Rド様」 http://www.geocities.co.jp/Milano-Cat/3319/
かっこいいRPG風のドット絵がたくさんあるんですよ!
rootSceneの挙動
まず気をつけなきゃいけないこと。
デフォルトのrootSceneは消えない!!
あとからぶち当たってまあ大変でした。
無知なだけでやり方はあるのかもしれませんが。
最初はSTART画面がなかったんです。即ゲームスタート。
で、ご覧になったとおりブログに載せることになったので、
背景は透明でブログ側のビル画像に合わせようと思って。
無理でした!
START表示があるrootSceneに別の背景を被せて隠すしかないんです。
なので、ビル画像を切り取って無理矢理ブログに合わせてます。
実は透けてません。笑
敵の出現頻度
これはたくさん方法があると思います。
完全なランダムや、一定区間の型をいっぱい作ってそれをランダムとか。
今回は得点数と絡めてランダム値の上限を決めて調整しました。
ランダムは簡単なんですけど、
3匹隙間無く並んだりすると、確実にくまさんアウトじゃないですか。
それをできるだけなくす工夫が大変でした。
ゲーム作ってる人すげえです。
2段ジャンプと敵に当たったときのくまさんの変化
2段ジャンプは大変でした。
何度でもジャンプしてしまう。
1度2段ジャンプするとそれ以降操作できなくなるなど…
1回目のジャンプをしたらその状態を記憶させる。
2回目のジャンプをしたら記憶させて、3回目に飛べなくする。
そして着地後は記憶させたジャンプ情報がリセットされる。
頭ではわかってるんですけどねえ。
なかなか上手くいかないんですよ。
「状態遷移」という言葉を覚えました。
泣いてるくまさんは、GAMEOVERSceneに移る時に、泣く前にSceneに移ってしまっていました。
いろんな場所に泣いてるくまさん関数を置いて試行錯誤。
リトライ
ブログに設置が前提なので、ブラウザ更新はすぐできたけどちょっと違うと。
最初に書いたとおり、シーンの上にシーンを被せているので、
見えないけど状態はそのままなんです。
それをリセットさせなきゃいけないので、これまた一苦労でした。
このためにシーンの追加をしました。
まとめ
たくさん試行錯誤して完成しましたがコードの整理をしていなく、
ちょっと汚いですがGitHubに載せたので覗いてみてください(^^)
2週間くらいかけましたが、全体としての感想は、
ゲーム作る人すげえ…