【はじめてのRPGツクール】幼なじみのお姉ちゃんとお泊りHゲーム版その23
どうも、ダメージ床Rの色塗り担当の「そば」です。
『はじめてのRPGツクール』記事では
いつかエッチでやりがいのあるゲームが作りたい…!と夢見る、ゲーム制作ド初心者2人がRPGツクールで試作ゲームを作っている様子を毎回お伝えしています。
使用しているのはRPGツクールMZです。
試作ゲームの詳細はこちら
既読スキップ機能を作ろう 後編
既読文章のスキップ機能を作ろう!の後編です。
~前編までのあらすじ~
メッセージウィンドウ右上にボタンがつき、ログ表示・文章スキップ・オート再生ができるようになりました。
でも今の状態だと、既読でも未読でも全部スキップしてしまうので
「既読だけ」をスキップするようにしていこうと思います。
使用プラグイン
SkipAlreadyReadMessage.js プラグイン
既読を判定してスキップするプラグイン。
DarkPlasma_SharedSwitchVariable.js プラグイン
全てのセーブデータで共有するスイッチ・変数を指定するプラグイン。
既読情報を保存するのに使います。
後編ではこの二つを使います。
プラグインの詳細は前編へ。
既読スキップを実装
既読スキップはSkipAlreadyReadMessage.js プラグインを使わせてもらいます。
プラグイン設定です。変更箇所は赤矢印。
"既読フラグ保存用変数ID"は既読かどうかを判断する情報を保存する変数を指定します。
"既読メッセージ文字色制御スイッチID"は既読文章が表示されたとき色を変えるかどうかのONOFFを決めるスイッチです。
MessageSkip.js(前回参照)と併用すると、未読スキップ機能が使えなくなるようなので、"未読スキップ判定用スイッチID"のほうの設定はいらないのかもしれません。※間違ってたらコメントで教えてください
この状態でのテストプレイ。
未読の文章はスキップされなくなり
既読のみ、文章が薄青くなりスキップするようになりました。
共有セーブ実装
上のプラグイン入れたら完成なんじゃないの?
と思われるかもしれないんですが……まだです!
実は、スイッチや変数の中身はニューゲームをはじめるごとにリセットされてしまうらしいのです。
変数[8]に既読情報を保存しているのに!?
それを消すなんてとんでもない!
今のままだと、AのセーブとBのセーブで各々違う箇所が既読として保存され「読んだことある文章なのに飛ばせないよ~」となってしまう。
AセーブでもBセーブでも、どこかで1回でも読んだことがあれば既読になるようにしたい。
というのを解消するのが、全てのセーブデータで共有するスイッチ・変数を指定できるDarkPlasma_SharedSwitchVariable.jsプラグインです!便利~!
というわけで、プラグインの設定画面です。
共有で保存するスイッチと変数を指定します。
スイッチは16と17を指定したいので、from 16 to 17。
変数は8だけなので、from 8 to 8になりますね。
英語だ…(IQ3の感想)
既読スキップ完成!
既読スキップのテストプレイしてみた動画。
セーブ19で文章を読む→セーブ17に移動して既読になってるのを確認できました!
変数8の中身が共有されてる。やったぜ。
既読スキップ編 ~完~
おつきあいありがとうございました、来週もよろしくお願いします!
そば担当の記事は毎週金曜日に更新予定(できる限り)