当サイトの運営者です。ゲーム制作とプラグイン開発が好きで、コミュニティに貢献したいと考えています。
RPGツクールMZでゲームを制作中です。
※プログラマ・エンジニアではありません。
BMSP Event Before Action - BMSP_EventBeforeAction.js

▼BMSP Event Before Action(gentlawk様作) - BMSP_EventBeforeAction.js
https://plugin.fungamemake.com/archives/12505
戦闘アクション実行前にコモンイベントを起動します。
ふりがな:いべんとびふぉあーあくしょん
機能概要: 戦闘アクション実行前にコモンイベントを起動します。
利用規約(ライセンス): MITライセンス
作者:gentlawk
作者サイト:https://x.com/gentlawk
解説ページ:http://blueredzone.com/script/mv/mv_eventbeforeaction.h…
ダウンロードページ:https://raw.githubusercontent.com/gentlawk/BMSP_MV/mast…
ファイル名:BMSP_EventBeforeAction.js
プラグインのヘルプ:
/*:
* @plugindesc 戦闘アクション実行前にコモンイベントを起動します。
* @author gentlawk
* @website http://blueredzone.com
* @url https://github.com/gentlawk/BMSP_MV
* @license
* Copyright(c) 2015 BlueRedZone, gentlawk
* Released under the MIT license
* https://github.com/gentlawk/BMSP_MV/blob/master/LICENSE
*
* @version 1.03
*
* @help
* プラグインコマンド:
* EventBeforeAction cancelAction # 「使用前」行動前イベント中に実行するとイベント後のアクションをキャンセル
*
* 使用方法:
* 戦闘アクション実行前にコモンイベントを起動します。
* カットインの演出や、特定条件下で発展するスキルなどを表現できます。
*
* ●コモンイベントの作成方法
* ・コモンイベントの名前
* なんでも構いません。わかりやすい名前を付けて下さい。
* ・トリガー
* なし
* ・実行内容
* 一行目に注釈を作成してください。
* 内容は
* ==行動前イベント:%type%==
* と記述します。
* %type%は「使用前」もしくは「使用後」で置き換えます。
* 使用前:スキル・アイテム使用前にコモンイベントを実行します
* 使用後:スキル・アイテム使用後(使用メッセージが表示され、MPなどが消費された直後)にコモンイベントを実行します
**
* 二行目から注釈でないイベントコマンドまでは条件を表す注釈となります。
* 注釈1つにつき必ず満たすべき条件を書きます。
* また、注釈内1行につきいずれかを満たせば良い条件を書きます。
* 例
* //
* 注釈:条件1
* :条件2
* 注釈:条件3
* //
* この例では、条件1かつ条件3を満たすときまたは、
* 条件2かつ条件3を満たすときにこのイベントが実行されます。
* 条件以降については任意のイベントコマンドを並べることが出来ます。
*
* ●条件の書き方
* 条件部分は任意のJavascriptを記述します。
* 特殊な変数として以下の3つを使用できます。
* ・use
* 使用するアイテム・スキルを参照できます。(Game_Item)
* ・user
* 使用するアクター・エネミーを参照できます。(Game_Actor、Game_Enemy)
* ・targets
* スキル・アイテムのターゲットとなるアクター・エネミーの配列です。
* 「使用後」のイベントでしか参照できません。
* 「使用前」のイベントでは空配列となります。
**
* ●アクションのキャンセルについて
* プラグインコマンド”EventBeforeAction clearAction”を「使用前」のイベント中で呼び出すと、
* 本来行われるアクションをキャンセルすることが出来ます。
* 強制アクションと組み合わせることで一定条件下で発展するスキルなどが表現できます。
*
* ●使用例
* 条件の書き方などがよく分からない場合は掲示板(http://blueredzone.bbs.fc2.com/)
* にて依頼して頂ければ条件式をお作りします。
* ※ただし複雑な場合や実現不能な場合はお断りする場合があります
*
* 例:アクター001がスキル「防御」を使用したときに実行
* //
* 注釈:user.isActor() && user.actorId() == 1
* 注釈:use.isSkill() && use.object().name == '防御'
* //
* 例:アクター001またはアクター002がアイテムを使用したときに実行
* //
* 注釈:user.isActor()
* 注釈:user.actorId() == 1
* :user.actorId() == 2
* 注釈:use.isItem()
* //
* 例:ターゲットにID1のエネミーが含まれる場合に実行
* //
* 注釈:targets.some(function(battler){ return battler.isEnemy() && battler.enemyId() == 1;})
* //
* 例:ターゲットにインデックス1のエネミーが含まれる場合に実行
* //
* 注釈:targets.some(function(battler){ return battler == $gameTroop.members()[0];})
* //
*/