Skip to content

Latest commit

 

History

History
119 lines (113 loc) · 5.82 KB

20211024115759-novel_game.org

File metadata and controls

119 lines (113 loc) · 5.82 KB

ノベルゲーム作り

概要

ノベルゲームを作成する。

Phaserがとてもよい。 ブラウザでプレイできるようにする。

Tasks

loadが終わってからスタート

今は終わってないうちに開始してる。 コード的にもloading sceneに描画があったりしてよくない。

シーン遷移共通のアニメーションをつける

tweenをまとめて定義

同じようなアニメーションコードが分散している。 まとめられる可能性がある。

環境変数を指定

開発時に効果音があるとうざい。 あるいは開発時はロゴ表示しない、とか。 また、開発時は好きにシーンを遷移できるようにする、とか。

最初に背景を置けない

バグ。テキストのアニメーションでそうなったぽい。 タイムラインの最初にsetBackground()を置くと、next()でstackループになってエラーになる。

完成の状態へ

作品として成立してるくらいのレベルに。

dialogのコンストラクタのリファクタ

this.text.x などを使うと、長いconstructorを分離できそう。 ああでも、クラス変数が未定義エラーになってしまうので、constructorの中でしか定義できない可能性がある。 未定義を容認すればよいのだが、デメリットもありそう。

自動テスト

現状は壊れていてもわからない。 確かめるためには逐一クリックしてメッセージを進めないといけない。 一応コンパイルができてるかのチェックはできるが。

定点クリックとJavaScriptエラーがないかのチェックくらいか。

デバッグ用のシーン選択を作る

いちいち全部辿ってチェックするのは面倒だからな。

操作不能時間を作る

効果音が終わってから遷移させたい。 あるいは全部アニメーションするまではクリックしてメッセージ送りできないとか。

Memo

WEB上で作成まで

今jsonで書いてるところをWEB上でできるようにすれば、WEBビルダーが作れる。

Reference

最低限のノベルゲームが作成できる。非常に参考になる。

Archives

bundleするとパスが変わって読み込めない問題

開発時と本番環境での、ファイルパスのズレが生じる。

カレントディレクトリはsrcディレクトリになってるようなので、そこからの相対指定でできた。

キーボードイベントでdialog boxを消す

テキスト入れ

まず最小限を完成させる。

文字をアニメーション表示する

一気にパッと出すのではなく、アニメーションで1文字ずつ出したい。

空文字のときundefinedまみれになる

今まではtimeline dataに空文字を入れると何も表示してなかった。 アニメーション化の影響で起こるようになった。

returnを入れて解決。

場面転換アニメーション作成

<2021-11-07 Sun>現状、突然切り替わるだけだから、わかりづらい。 場面暗転したことを伝えるアニメーションが欲しい。

暗転したあと、クリックすると進めるようにしたい。 もう一区切りほしい。 今は勝手にテキストが進む。

fade用sceneを追加して、暗転用の画像表示とクリックで進めるようにした。 scene間のコードのつながりがなんとなくわかる。 MainSceneの作りがよく、続きから再生できるようになっていた。未定義のときだけstartにいく。 なのでScene、Timelineで自由に遷移できる。

プロンプトをアニメーション表示する

<2021-11-07 Sun> 次がクリックできますよ、ということを示すために。 固定位置だとできるんだが、微妙だな。 一番ベストなのは、文末で▽を表示してゆっくりと点滅させることだ。

縦軸で回転させるアニメーション

テキスト送りの三角を回したい。

ロゴ表示

かっこいいロゴ表示をするとモチベにもなるだろう。 開発時はオフにする。

web font追加

野暮ったい感じがするのでいくつか使える状態にする。

Reference