タイル上に自動でイベントを生成【RPGツクールMZ&MVプラグイン】

2021年09月11日

 タイル上に自動でイベントを生成します。
 タイルID、オートタイルタイプ、地形タグ、リージョンIDを条件にして、その上に自動で指定のイベントを生成します。

 また、タイルを消去してイベントに置き換えることも可能です。
 ※タイルID、オートタイルタイプが条件の場合のみ


 アニメーションするタイルなど様々な使い方が可能です。
 マップ切替時またはプラグインコマンドによって実行します。

 マップ版DynamicMotionをご利用の方は最新(2021/05/07 ver1.06〜)への更新をお願いします。大量のイベントが存在すると処理が重くなる不具合があるため、当プラグインとの併用時に大きな支障が発生します。
 http://newrpg.seesaa.net/article/477913000.html

目次


導入方法(Install)

更新履歴(History)

使用方法(Usage)

MZ用プラグインコマンド(PluginCommandMZ)

MV用プラグインコマンド(PluginCommandMV)

注意点(Notice)

プラグインパラメータ(基本)

テンプレートマップID(TemplateMapId)

設定リスト(SettingList)

ロード時にイベント初期化(InitEventOnLoad)

タイルセット変更時も処理(ApplyChangeTileset)

画面外のイベント描画停止(StopOutOfRange)

範囲外の余裕幅(OutOfRangeMargin)


プラグインパラメータ(設定リスト)

設定ID(SettingId)

全タイルセットで有効(ValidAllTilesets)

タイルID(TileId)

オートタイルタイプ(AutotileType)

地形タグ(TerrainTag)

リージョンID(RegionId)

<タイル置換設定>(

イベントID/名前(EventId)

タイルを置換する(Replace)

X座標補正(AdjustX)

Y座標補正(AdjustY)


謝辞(Acknowledgment)


導入方法(install)


 以下のファイルをダウンロードし 、[プロジェクト]\js\plugins に放り込みます。ツクールのプラグイン管理から機能をONにしてください。
 ※いずれのプラグインもMV、MZの両方で有効です。

 NRP_TileToEvent.js ver1.01(2021/09/11)

オプション

タイル情報をデバッグ表示する(詳細

 NRP_DebugTile.js ver1.01(2021/08/15)

 ※F2を押すだけで、足元のオートタイルタイプやタイルIDを確認できるようにするプラグインです。NRP_TileToEventの補助用に使えます。

更新履歴(History)


2021/09/11(ver1.01)

  • セーブ後にエディタでイベントの追加・削除を行い、ロードするとエラーになることがある不具合に対処。
    ※完璧を約束するものではありませんが、ある程度は緩和できると思います。

2021/05/15(ver1.00)

  • 公開!

使用方法(Usage)


 まずは生成したいイベントを準備します。

  1. テンプレート用のマップを作成し、イベントを作成する。
    分かりやすくイベント名を付けておく。
  2. プラグインパラメータのテンプレートマップIDに
    先程のマップIDを登録。

 要するに公式ローンチプラグインのTemplateEvent.js(トリアコンタン様)とほぼ同じです。

 次にプラグインパラメータの『設定リスト』に条件を指定し、生成するイベントの『イベントID/名前』を入力します。
 この際、参照用に『設定ID』を設定しておきます。
 ※タイルIDやオートタイルタイプを参照したい場合は、付属の『NRP_DebugTile.js』が便利です。

 最後にタイルセットのメモ欄に、先程の『設定ID』を登録すれば完了です。
 以下の?の部分に入力してください。
<TileToEvent:?>


MZ用プラグインコマンド(PluginCommandMZ)


IDを指定して実行

 設定IDを指定すれば処理が実行されます。
 内容は上記の使用方法にて、タイルセットに設定IDを登録した場合と同様です。

MV用プラグインコマンド(PluginCommandMV)


NRP.TileToEvent.CallId [設定ID]

 処理内容はMZ版と同じです。
 ※大文字小文字は不問。[]は含めないでください。

注意点(Notice)


 ツクールの仕様上、イベントが存在するだけで、少しずつマップ上での負荷が上昇します。例えば、千を超えるような大量のイベントを生成すると、動作が重くなる可能性があります。

 当プラグインには生成したイベントが画面範囲外の場合に、描画を停止する処理が含まれています。これによってある程度負荷を軽減できます。

 また、1マスずつタイルを確認&処理する仕様上、大きなマップに大量のイベントを生成すると少しだけ時間がかかります。
 ※とはいえ、よほどの処理をしない限り一瞬で終わりますが。

プラグインパラメータ(基本)


テンプレートマップID(TemplateMapId)

 タイルを置き換えるイベントを配置するマップIDです。

設定リスト(SettingList)

 設定内容の一覧です。
 詳細は下の『プラグインパラメータ(設定リスト)』を参照してください。

ロード時にイベント初期化(InitEventOnLoad)

 ゲームロード時にイベントを初期化します。
 オンにするとイベントの位置が保存されなくなります。

タイルセット変更時も処理(ApplyChangeTileset)

 タイルセットの変更時も処理を実行します。

画面外のイベント描画停止(StopOutOfRange)

 画面範囲外のイベントの描画を停止します。これにより、大幅な処理の軽量化が見込めます。
 競合などの問題が起きそうな場合はオフにしてください。

範囲外の余裕幅(OutOfRangeMargin)

 『画面外のイベント描画停止』について範囲外と見なす余裕の幅です。
 数値分だけ画面外にはみ出していても停止しません。

プラグインパラメータ(設定リスト)


設定ID(SettingId)

 タイルセットのメモ欄(あるいはプラグインコマンド)からの呼び出しに使う識別子です。
 『全タイルセットで有効』がオンの場合は不要です。

全タイルセットで有効(ValidAllTilesets)

 設定を全てのタイルセットで有効にします。
 オフにした場合は、個別のタイルセットに設定できます。

タイルID(TileId)

 対象とするタイルIDを指定します。複数指定も可能です。(例:1,3~5)

オートタイルタイプ(AutotileType)

 対象とするオートタイルタイプを指定します。複数指定も可能です。(例:1,3~5)

地形タグ(TerrainTag)

 対象とする地形タグ(1~7)を指定します。複数指定も可能です。(例:1,3~5)

リージョンID(RegionId)

 対象とするリージョン(1~255)を指定します。複数指定も可能です。(例:1,3~5)

イベントID/名前(EventId)

 置換先のイベントです。
 イベントは指定したテンプレートマップにあらかじめ配置してください。
 ID/名前の両方が有効です。

タイルを置換する(Replace)

 元々のタイルを消去します。
 タイルIDまたはオートタイルタイプが条件の場合のみ有効です。

X座標補正(AdjustX)

Y座標補正(AdjustY)

 イベントを生成するX座標、Y座標を補正します。
 元のタイルから少しずらして配置したいという場合にどうぞ。

謝辞(Acknowledgment)


 このプラグインは、トリアコンタン様の以下のプラグインの処理を参照&流用させていただきました。

  • TemplateEvent.js
  • EventReSpawn.js

 >RPGツクールMZ&MV目次に戻る
posted by 砂川赳 at 16:41 | RPGツクールMZ&MV | このブログの読者になる | 更新情報をチェックする