イベント制作全般を拡張 - InstantEvent.js
シェア用テキスト:
▼イベント制作全般を拡張(あわやまたな様作) - InstantEvent.js
https://plugin-mz.fungamemake.com/archives/6460
マップや戦闘で凝ったイベントを容易に量産可能にします。
ふりがな:いべんとせいさくぜんぱんをかくちょう
機能概要: マップや戦闘で凝ったイベントを容易に量産可能にします。
利用規約(ライセンス): MITライセンス
作者:あわやまたな
作者サイト:https://awaya3ji.seesaa.net/
解説ページ:https://awaya3ji.seesaa.net/article/503552403.html
ファイル名:InstantEvent.js
プラグインのヘルプ:
/*:ja * @target MZ * @base PluginCommonBase * @orderAfter PluginCommonBase * @plugindesc マップや戦闘で凝ったイベントを容易に量産可能にします。 * いわゆる引数や即時関数の概念を導入。 * @author あわやまたな (Awaya_Matana) * @url https://awaya3ji.seesaa.net/article/503552403.html * @help * [はじめに] * プラグインの用途を考慮し、「イベントID」の事を便宜上「対象ID」と呼ぶことにします。 * イベントIDを独自の制御文字で様々な数値に流用できるようにしている為です。 * 「引数」は、外部から干渉できない独立した変数です。 * 入力値に応じて処理を変えたい場合に役立ちます。 * * [プラグインコマンド] * 対象IDは基本的に「このイベント」を指定する為の数値ですが、 * 以下のスクリプトや制御文字を活用する事で別の数値として流用することも可能です。 * * [スクリプト] * this._eventId //現在の対象IDを取得 * this._args[n] //引数を取得(nは0以上の整数) * this._pictureId //現在置換中のピクチャIDを取得 * * [制御文字(プラグインコマンド専用)] * \eventId //現在の対象IDを取得 * \args[n] //引数を取得(nは0以上の整数) * \pictureId //現在置換中のピクチャIDを取得 * * [制御文字(文章の表示専用)] * \Vpp[n] //変数nを1加算(Variable++) * \Vmm[n] //変数nを1減算(Variable--) * \Son[n] //スイッチnをON(Switch ON) * \Soff[n] //スイッチnをOFF(Switch OFF) * * \WfV[n,m] //変数nがm以上になるまでウェイト(Wait for Variable) * \WfS[n] //スイッチnがONになるまでウェイト(Wait for Switch) * \WfS[n,false] //スイッチnがOFFになるまでウェイト * * [仕様] * 一度実行内容を達成した即席並列イベントは削除されます。 * * 識別子の重複した即席並列イベントを新たに生成しても古い方は削除されません。 * * 重複した識別子の即席並列イベントが複数存在する場合、その全てに対して *「即席並列イベントの削除」「完了までウェイト」が行われます。 * * 識別子が未指定、もしくは空欄である場合、空欄そのものが識別子となります。 * なので識別子が空欄のまま「即席並列イベントの削除」「完了までウェイト」が行えます。 * * this._pictureIdが0でも\pictureIdは1が入ります。 * テストプレイを円滑に行う為です。 * * [更新履歴] * 2024/06/05:Ver.1.0.0 公開。 * 2024/06/13:Ver.1.1.0 挙動の修正。 * 2024/09/08:Ver.1.1.1 制御文字\WfS[n]の挙動を修正。 * * @param controlCharactersEnabled * @text 制御文字有効化 * @desc 変数やスイッチを操作する制御文字を使います。 * @type boolean * @default true * * @param timing * @text タイミング * @desc マップでの即席並列処理をプレイヤーの処理より後に実行する。 * 標準は並列処理の後、プレイヤーの処理の前。 * @type boolean * @default false * @on プレイヤーより後 * @off 標準 * * @param playerToEvent * @text プレイヤーをイベント化 * @desc 対象IDが-1の時に「このイベント」やthis.character(0)などでプレイヤーを扱えるようにします。 * @type boolean * @default true * * @command setupInstantEvent * @text 即席イベントの設定 * @desc 真下にある「スキップ」内の実行内容を切り出し、様々な機能を追加した状態で順番に実行します。 * * @arg targetId * @text 対象ID * @desc 操作対象のIDを指定します。IDの数だけ実行内容を生成。 * 範囲・複数指定はコンマやハイフン、to(例:1-3,12,15,18to20) * @default \eventId * * @arg options * @text オプション * @type struct<options> * @desc 追加設定を行います。 * * @command setupInstantCommonEvent * @text 即席コモンイベントの設定 * @desc コモンイベントの実行内容に様々な機能を追加した状態で順番に実行します。 * * @arg targetId * @text 対象ID * @desc 操作対象のIDを指定します。IDの数だけ実行内容を生成。 * 範囲・複数指定はコンマやハイフン、to(例:1-3,12,15,18to20) * @default \eventId * * @arg commonEventId * @text コモンイベントID * @desc コモンイベントを選択します。 * @default 1 * @type common_event * * @arg options * @text オプション * @type struct<options> * @desc 追加設定を行います。 * * @command setupInstantParallelEvent * @text 即席並列イベントの設定 * @desc 真下にある「スキップ」内から実行内容を切り出し、1度だけ実行される使い捨ての並列処理を生成します。 * * @arg targetId * @text 対象ID * @desc 操作対象のIDを指定します。IDの数だけ実行内容を生成。 * 範囲・複数指定はコンマやハイフン、to(例:1-3,12,15,18to20) * @default \eventId * * @arg options * @text オプション * @type struct<parallelOptions> * @desc 追加設定を行います。 * * @command setupInstantParallelCommonEvent * @text 即席並列コモンイベントの設定 * @desc 実行内容に様々な機能を追加した状態のコモンイベントから、1度だけ実行される使い捨ての並列処理を生成します。 * * @arg targetId * @text 対象ID * @desc 操作対象のIDを指定します。IDの数だけ実行内容を生成。 * 範囲・複数指定はコンマやハイフン、to(例:1-3,12,15,18to20) * @default \eventId * * @arg commonEventId * @text コモンイベントID * @desc コモンイベントを選択します。 * @default 1 * @type common_event * * @arg options * @text オプション * @type struct<parallelOptions> * @desc 追加設定を行います。 * * @command removeParallelInstantEvent * @text 即席並列イベントの削除 * @desc 即席並列イベントを削除します。 * * @arg id * @text 識別子 * @desc 特定の文字列を入れると以下に置き換わります。 * %1:対象ID %2:マップID * @default EV:%1 * * @arg targetId * @text 対象ID * @desc %1に入る数字を指定します。 * 範囲・複数指定はコンマやハイフン、to(例:1-3,12,15,18to20) * @default \eventId * * @command removeAllParallelInstantEvents * @text 全ての即席並列イベントの削除 * @desc 即席並列イベントを全て削除します。 * * @command waitForCompletion * @text 完了までウェイト * @desc 指定した即席並列イベントが完了するまで待ちます。 * * @arg id * @text 識別子 * @desc 特定の文字列を入れると以下に置き換わります。 * %1:このイベントのイベントID %2:マップID * @default EV:%1 * * @command replacePictureId * @text ピクチャIDの置換 * @desc 標準のピクチャ系イベントコマンドの番号を一括で置き換えます。 * @arg pictureId * @text ピクチャID * @desc 0で元に戻す。 * @default \eventId * */