ページ 11

【解決済】$gameMessage.add()について

Posted: 2019年1月27日(日) 18:48
by ジャングル
基本的なことで済みません。

$gameMessage.add()を使用して自作プラグインからテキストを表示させているのですが、
それを前のウィンドウに入れないようにするにはどうすればいいですか?
イベントコマンドで表示しているウィンドウに、
追加されてしまいます。

メッセージウィンドウを継承するなどして、
自分でウィンドウを作ることになりますか?

ド素人質問で済みません。
わかる方お願いします。

Re: $gameMessage.add()について

Posted: 2019年1月27日(日) 21:34
by 奏ねこま
ちょっと状況がわからないので、新規プロジェクトから再現できる手順などありましたら書いて頂けますでしょうか?

Re: $gameMessage.add()について

Posted: 2019年1月28日(月) 10:56
by ジャングル
奏ねこま 様
返信ありがとうございます。

再現できる手順ですが、
次のプラグインを作ってそれを有効にします。

コード: 全て選択

(function() {
	var _Scene_Map_update = Scene_Map.prototype.update;
	Scene_Map.prototype.update = function() {
		_Scene_Map_update.call(this);

		if ($gameSwitches.value(1)) {
			$gameMessage.add("aaaaa"); // 店員のセリフ
			$gameMessage.add("ddddd"); // ヒロインのセリフ
		}

	}
})();
マップ上で、1番のスイッチがオンであれば、
2人のキャラが会話しだすという状況です。

単純化させると上のコードのように $gameMessage.add()が2つ並びます。
すると、2つ目の "ddddd" が上のウィンドウに入ってしまいます。
これを2つのウィンドウに分けたいのです。

「1つ目のセリフを4行以上にする」以外に解決方法はあるでしょうか?
宜しくお願いします。

↓これが、上記プラグインです。

Re: $gameMessage.add()について

Posted: 2019年1月28日(月) 11:05
by ジャングル
済みません。
自己解決しました・・・。

今、rpg_objects.js内にGame_Message.prototype.newPage を見つけて、
$gameMessage.add("aaaaa")の後に$gameMessage.newPage()を入れたら、
新しいページに"ddddd"を表示できました。

お騒がせして済みません・・・。