新倉四季 2020/03/03 15:29

ゲーム制作の進捗報告+雑感

雑感

まず先に報告しておきたいのですが、Ci-enのプランについて見出しと内容の記事を分けるということを初めに書いていたと思います。
ですがそれをすっかり忘れ前回の記事はそのまま書いてしまいました。
期待していた方には申し訳ないです。
プラン特典ではサンプルゲームをダウンロードできるようにしようかと思います。
しばらくは進捗報告だけになるかと思いますが引き続きよろしくお願いします。

進捗報告

今回は前回と同様、マウス操作対応の作業をしていきます。

メッセージウィンドウでの作業に取り掛かっているときにウディタ内で「文と選択肢でマウス入力を受け付ける」項目があるのに気づきました。
タイトル画面は選択肢で表示されているのでこの項目をONにするだけでマウス操作に対応しわざわざ作る必要はありませんでした。
ただメニュー画面などの選択項目には対応してないので別途修正が必要。
ノウハウが無駄にはならずによかったです。

メッセージウィンドウ周りの入力操作

決定ボタン・マウス左クリックを長押ししているときにメッセージのスキップ機能を実装しました。
以前作っていたスキップ機能はスキップ機能のオン・オフができるボタンを追加していましたが、今作ではボタンの数が限られているのでこのような形になりました。
ウィンドウを一時的に隠す機能は取消キーに割り当てる予定です。
そうなるとオート機能に使えるボタンが無くなるわけですがこの機能は無くてもいいかな?
両手をフリーにしてやることもないと思うので。

ここで作業を進めていくときに問題が一つ、デフォルトで取消キーも文字送りの機能がありました。
このためウィンドウの一時消去に取消キーを割り当てるのはちょっとめんどくさいことをしないといけないのです(取消キー入力を無効にし、取消キーに設定されているキー入力で判定するしかない)。
力技でやってもいいのですが、後にキー設定を変更する場合さらに面倒ごとが増えそうです。
よってタイトル画面同様メッセージウィンドウも自作します。
これには他にも利点があり、メッセージ表示にウェイトが設定されていると一文字づつ文章が表示されますが、この状態の途中でボタン入力しようが文末まで一瞬で表示させることができません(もしかしたらできるかもしれません)。
これはかなりストレスになります。
一応機能として一瞬で文末まで常時表示すれば問題ないのですが会話文ではウェイトがあったほうがそれっぽいでしょう。

これで問題は解決し、無事スキップ機能とウィンドウの一時消去機能が実装できました。
しかし「文と選択肢でマウス入力を受け付ける」機能は全く使わないことになりました、なんかもったいない…。
あとこれは作り手側への利点ですが、”〇〇を手に入れた”や”〇〇があるようだ…”などの文章とNPCとの会話文、これらを自動で判別し会話文の場合は名前の表示と会話文章を鉤括弧"「」"でまとめるなどの機能を追加しています。

マウス操作でイベントの実行

メッセージウィンドウで上記の機能を確認するためにNPCに話しかける作業がありましたが、マウスで確認するときに少しめんどくさいなと思いついでにマウスの左クリックでイベントを実行できるようにしました。
ただし現状ではNPCと隣接している必要があります。
今後、クリックした対象と離れている場合自動でルート検索をして近づき話しかけるという仕様にする予定です。
デフォルトで対象に近づくという事はできるのですがルート検索をしておらずそのまま実装すると精度は悪いです。
RPGツクールMVのほうでもクリックで移動ができますがプレイヤーの思った通りにはいかないでしょう。
このあたりも前作のほうでシステムを構築済みなので移植し改良すれば解決しそうです。

次回は……

まだまだ基本操作あたりを詰めていきます。
次回は設定(オプション)項目辺りをしようかと思います。
メッセージウィンドウ辺りでもいくつかプレイヤーによって色々動作を変えたいところがあると思います、私もそうです。
まず最初は入力のタイプ設定、キーボード入力だけ、マウス入力だけ、その両方!みたいなものを考えています。
テストプレイをしているとわかりましたが両方に対応しているとマウスカーソルをほったらかしてキー操作するときにマウスカーソルが選択される場所にあるとその位置で固定されてしまいます。
これは邪魔ですね。
キー入力をするとマウスカーソルを一時的に消すという方法もありますがそれはまた別の設定箇所にします。
マウスカーソルの設定で、通常カーソル、独自カーソル、カーソルの消去を設定できるように。
カーソルの消去をするとマウス操作無効ってことですね。
マウスのクリックの設定もいくつか、クリックをボタン操作と同じにする、またはカーソル位置を選択するの2タイプですね。
例えばメッセージウィンドウで文字送りをする場合、ボタン操作と同じ処理にするなら全画面どこをクリックしても文字送りできますが、カーソル位置を限定するならメッセージウィンドウ内をクリックした時だけ文字送りをするという感じに。
現在はボタン操作と同じにしていますがこの場合の欠点は、ゲームの他になにか作業をしていてマウスクリックでゲーム画面に戻るとボタン操作がされてしまうという点。
ALT+TABなどで戻るなら問題ないですが、ちょっと気になる動作なのでオプションの方で対応するように。
他には会話文が表示される速度を、遅い・普通、早い・一瞬というような、これはよくあるやつですね。
あとはサウンド周りですね、これはおいおい。

それでは今回はこの辺で、ではでは。

この記事が良かったらチップを贈って支援しましょう!

チップを贈るにはユーザー登録が必要です。チップについてはこちら

最新の記事

記事のタグから探す

月別アーカイブ

限定特典から探す

記事を検索