音楽室を作ろう【完成】

どうも、ノウラです。


長らく格闘していた音楽室ですが、ついに完成しました!
実際には通しでやってみてチェックが残っているのですが。
長かった…。
理解してからは短いけど、それでも長かった。つらかった…。



音楽室についてちょっとだけ細かく書いていきたいと思います。
今後の為にもね。
1回作ったらコピペでなんとかなるけど
それだけじゃダメというか、ちゃんと理解しておかなければと思ってですね!


まず、タイトルから音楽室へ行く処理。

これは簡単です。
タイトルマップで、音楽室という選択肢を作るだけ。
音楽室を選択すると、「音楽室」コモンを開く処理にしてあります。


さて、この音楽室ですが
複数のコモンで成り立ってます。

ひとつめ、「音楽室」の選択肢から開くことができるコモン。
このコモンでは、上下の枠、作曲者情報の枠、コメントの枠、
曲目の枠、曲名を表示しています。
曲目には「万能ウィンドウ」を使っています。


ふたつめ、選択ができるようになるコモン。
ひとつめのコモンで枠などを表示し終わったあと呼び出して、
選択できるようにしています。
これはウディタの基本システムで最初からあった
万能ウィンドウ選択実行コモンを
コピー・極一部を改変してあるものです。

デフォルトの状態だと
決定キーを押しても終了してしまうのを避けるように改変してあります。

しかしこの処理はひとつめのコモンで
キー入力を取得→キャンセルキーが押されたならコモンを終了、の条件分岐
でも良かったのかもしれません。


みっつめ、作曲者情報、コメントを表示し曲を流すコモン。
決定キーを押した位置を、「カーソル位置」という変数に代入する処理をしています。
その「カーソル位置」が1ならばこの曲、2ならこの曲を流しピクチャを表示する、というものを
ひたすら条件分岐させているだけです。
面倒ですがこのコモンは頭使わなくていいので一番楽ですね。

タイトルに戻ろうとキャンセルキーを押すと
ひとつめのコモンが
再生していた曲の停止、表示されていた枠、文の消去をするというものです。



で、完成かと思いテストプレイするじゃないですか。
タイトル戻ってみるじゃないですか。
曲が??????????????表示になって
選択もできてないじゃないすかやだー!!

確認してみたところ
タイトル画面ではすべての変数が0に戻っているらしいのです。

変数で音楽室は管理しているので困った…!!非常に困った。


そこで、音楽室を作ろうとしていたとき
参考にさせていただこうと落として全く理解できなくて消した
魔物図鑑コモンみたいなものを思い出したのです。

そうだ!可変データベースだ!!


可変データベースをいじるのはとても簡単だったのですね。
大慌てで一つ追加し、BGMリストを読み込み、
0=聞いた 1=聞いてないということにしてさっそく更新。

ダメでした。

どうもタイトルに戻るとぜーんぶリセットっぽい。
森の中に音楽室コモンを起動するイベントを作ってみたところ
そのイベントでは見表示できてました。

必死にヤフってみたものの、予備変数だといいだとか
すこーしだけでてきてやってみたものの意味なし。

タイトルでリセットされてしまうなら
タイトルで変数を読み込めばいいじゃない、と思うもやりかたがわからず。



ヤフりにヤフってあとは自分で理解しました。


音楽を聴いたかどうかを専用データに保存して
その専用データから読み込むことにしました。

音楽室専用セーブ「music.sav」

music.png


このように短い文ですませられるものですが
ものすごく大変だったんですよ。

ここで、聴いたかどうかのコモンも使っています。
曲を聞いたらmusic.savに自動でセーブし、音楽室の方にそれを流して
聴ける状態にしているコモンです。
つまり音楽室は4つのコモンでできているわけです。

もっと簡単にいくんでしょうけど
私にはこれが限界でした。
おいおい改善していきたいですね!



ここまでの流れ

ピクチャで枠を作った段階
しかしこれでどうやって選択するんだ?の時

音楽室1



万能ウィンドウに切り替え、曲目を入れた段階
ファイル名じゃ嫌!と思って悩んでいました。
パーティーを透明にする処理を入れてなかったので
主人公くんが存在を主張してます。

音楽室3


久しぶりに手つけてみたらずいぶん進んだ段階。
仮で入れた曲も再生できるし、コメントなどもでます。
ただしこれでは聴く前から全曲解放されてますね。

キャプチャ


完成!
ScreenShot_2014_1128_13_21_04.png



この音楽室ですが、全データ共通になっています。
ニューゲーム始めたら聴けなくなった!なんてことはありません。
あの曲初めて聴いたのにセーブする前にゲームオーバーになった!
なんてことがあっても、ちゃーんとセーブされています。
ですのでゲームオーバーの曲も音楽室に入りますww

これを応用すれば
オートセーブの中断データとかも作れるわけですね。


残る高い壁はグラフィックとセリフウィンドウの位置ですね。
グラは私が描くの遅いのもありますが。
完成まで(期限的に)もう少しです。 がんばるぞ!!
スポンサーサイト

テーマ:ゲーム製作 関連 - ジャンル:ゲーム

コメントの投稿

非公開コメント