スクリプト呼び出しでイベントの自律移動を設定する方法に関する投稿を参照しました。イベントを「接近」から「固定」に変更し、その後元に戻したいと考えています。以下のスクリプトはその役割を果たしますが、
$gameMap.event(3)._moveType = 0
このスクリプトが、「このイベント」に設定されているかのように自身を参照するようにしたいのです。このスクリプト呼び出しが必要なイベントが多数あるため、すべてのIDを手動で設定するのは現実的ではありません。何かアドバイスはありますか?
スクリプト呼び出しでイベントの自律移動を設定する方法に関する投稿を参照しました。イベントを「接近」から「固定」に変更し、その後元に戻したいと考えています。以下のスクリプトはその役割を果たしますが、
$gameMap.event(3)._moveType = 0
このスクリプトが、「このイベント」に設定されているかのように自身を参照するようにしたいのです。このスクリプト呼び出しが必要なイベントが多数あるため、すべてのIDを手動で設定するのは現実的ではありません。何かアドバイスはありますか?
スクリプトコマンド内では、this はそのイベントのインタープリターを指すため、3 を this.eventId() に置き換えることができます:
$gameMap.event(this.eventId())._moveType = 0;
また、this.character(0) もあり、これはエディタで「このイベント」を選択することと同じです:
this.character(0)._moveType = 0;
元に戻す場合はアプローチが 2 になります。共通イベントからも呼び出すことが可能ですが、共通イベント自体がそれを呼び出すイベントである必要があります(共通イベントは呼び出し元のイベント ID を保持するため)。スイッチから独立して実行される共通イベントには、そのような ID は存在しません。
this.character(0) のバージョンは、ID を一つずつ変更せずに同じスクリプトを複数のイベントにコピーできるため、特にあなたのケースには便利です。ただし、Baz によるコモンイベントに関する注意点を覚えておいてください:これはイベント自体がコモンイベントを呼び出す場合には機能しますが、スイッチによってコモンイベントが単独で実行される場合には機能しません。
どうもありがとうございます!