チェストと手持ちのアイテムを別々に管理するようにした
チェストに近づいてEキーを押すと、チェストを開くことができます。ここら辺はテラリアっぽい感じです。
いずれチェストが開くアニメーションも付ける予定です。
チェスト付近にいることを証明するために、当たり判定を自作しました。
矩形判定を拡張するのにかなり手間取りましたが、何とか実装することが出来ました。
アルゴリズムをよく理解していなかったのがダメでしたね。
全部phina.jsにまかせっきりだったので、そういうところが抜け落ちていました。
NW.jsを使ってアプリ化を目指す
NW.jsとはソフトウェアフレームワークのことで、Electronと同じようなことができます。
ただ、Electronではゲーム素材を秘匿化することができないのですが、NW.jsではそれが出来るようになります。
そうなればブラウザゲーム不可の素材も使えるようになり、ゲームをより豪華に作ることができます。
また、毎月のサーバ代も払わずに済みます。
このような理由から、今後はNW.jsを使ってアプリ化を目指していこうと思います。
問題点
セーブデータをどうするかという問題があります。
JavaScriptではローカルのファイルを読み込むことは出来ても、書き出すことは出来なかったはずなので、それをなんとかする必要があります。
NW.jsの中ではNode.jsが使えるという情報もありますが、もし本当ならNode.jsでセーブ機能を実装しようと思います。
サーバに依存しないダンジョン生成へ移行
サーバを介さないので、レスポンスは相当早くなりました。
非常に大きい画面でプレイすることができるようになったので、やはりこちらのほうがゲームとしてはいいと思います。
ただ、なぜか0階層目から始まるバグがあります。
明日直しておきたいと思います。
NW.jsの勉強
とりあえずこちらのサイトを見てHello Worldを出しました。
NW.js によるアプリの実行 – iroha Tech Note
次に、実際にNW.jsを使ってアプリ化してみました。
Electronと同じくらい導入は簡単にできました。
動作は少し重くなりましたが、Electronと同じくらいだと思います。
その他今日の面白バグ
画面の解像度を変更した際に起きたバグです。
スクリーンサイズを小さくしてキャラクターを大きく表示させようと思ったのですが、こんなわけのわからないバグが生まれてしまったのでやめました。
本日の進捗は以上です。
それではまた明日。