ページ 11

イベントのメモ欄をコモンイベントにて書き換える方法

Posted: 2017年5月26日(金) 19:35
by magnet11
イベントのメモ欄をそのイベントで並列処理しているコモンイベントにて
書き換える方法を探しています。

現在いろいろ調べてみたのですが、なかなか出てきません…

主な内容としては
・並列処理しているコモンイベントにてそのイベントのメモ欄を書き換える方法。

プラグインやスクリプトでもできる方法を教えてくださると幸いです。

Re: イベントのメモ欄をコモンイベントにて書き換える方法

Posted: 2017年5月27日(土) 14:52
by フトコロ
こんにちは。
magnet11 さんが書きました:並列処理しているコモンイベントにてそのイベントのメモ欄を書き換える方法

この、「そのイベント」が何を指しているのかよくわからなかったのでもう少し説明していただけませんか?


なお、現在プレイヤーがいるマップのイベントのメモ欄データは以下スクリプトで取得できます。
$dataMap.events[n].note
n - イベントID

このため、対象のイベントのIDが分かれば、以下のようなスクリプトでメモ欄を書き換えることができます。
$dataMap.events[n].note = '新しいメモの内容'

なお、マップイベントの中でコマンドの[フロー制御]-[コモンイベント]を実行した場合、
呼び出したコモンイベント内では、this._eventId がマップイベントのIDと同じになります。

つまり、ID3のマップイベントの内でコモンイベントID5を呼び出した場合、
コモンイベントID5内では this._eventId == 3 ということになります。

よって、コモンイベントで以下のスクリプトを入力すると、呼び出し元のマップイベントのメモ欄を書き替えることができます。
$dataMap.events[this._eventId].note = '新しいメモの内容'


なお、この書き換えは、あくまで起動中のゲーム内のデータが対象です。
大本のJSONファイルを書き換えるわけではありませんので、ゲームを再起動すると(仮にセーブしても)元に戻っています。