当サイトの運営者です。ゲーム制作とプラグイン開発が好きで、コミュニティに貢献したいと考えています。
RPGツクールMZでゲームを制作中です。
※プログラマ・エンジニアではありません。
NUUN 先制、不意打ち独自定義 - NUUN_PreemptiveSurpriseEx.js
シェア用テキスト:
▼NUUN 先制、不意打ち独自定義(NUUN様作) - NUUN_PreemptiveSurpriseEx.js
https://plugin-mz.fungamemake.com/archives/5779
先制不意打ちを独自の式で定義できます。またイベントでのエンカウントでも先制不意打ちを適用することができます。
ふりがな:せんせい、ふいうちどくじていぎ
機能概要: 先制不意打ちを独自の式で定義できます。またイベントでのエンカウントでも先制不意打ちを適用することができます。
利用規約(ライセンス): MITライセンス
作者:NUUN
作者サイト:https://github.com/nuun888
ダウンロードページ:https://raw.githubusercontent.com/nuun888/mz/master/NUU…
ファイル名:NUUN_PreemptiveSurpriseEx.js
プラグインのヘルプ:
/*:ja
* @target MZ
* @plugindesc 先制、不意打ちEX
* @author NUUN
* @version 1.3.0
* @base NUUN_Base
*
* @help
* 先制不意打ちを独自の式で定義できます。
* またイベントでのエンカウントでも先制不意打ちを適用することができます。
*
* 敵グループのバトルイベントの1ページ目に注釈(Comment)で記入
* <Presur:[id]or[name]>
* [id]:先制不意打ちのリストID
* [name]:先制不意打ちリストの指定の名称
*
* 評価式の取得変数
* members:パーティメンバー
* troop:敵グループ
* this:BattleManager
*
* 取得変数
* $gameParty.preemptiveCounter:先制攻撃した回数。
* $gameParty.surpriseCounter:不意打ちされた回数。
*
* ランダムエンカウントの場合上記のタグがない敵グループはデフォルト設定の判定になります。
* イベント判定では通常の処理になります。
*
* 先制攻撃時戦闘開始SE、不意打ち時戦闘開始SE
* 通常の戦闘時、先制攻撃時、不意打ち時に任意の戦闘開始時のSEを再生できます。
* 先制不意打ち設定の先制攻撃時、不意打ち戦闘開始SEのファイルが設定されていない場合はデフォルト先制攻撃時、不意打ち戦闘開始SE
* のSEが再生されます。
* なお、デフォルト先制攻撃時、不意打ち戦闘開始SEでもファイル名が指定されていない場合は通常の戦闘開始SEが再生されます。
*
* プラグインコマンド
* イベント先制不意打ち有効
* イベントから戦闘を発生された場合、先制不意打ちを有効にします。
* 先制不意打ち設定のIDを指定してください。
* 各敵グループに記入したタグの設定が優先されます。
* 先制不意打ち処理後に初期化されます。
*
* 利用規約
* このプラグインはMITライセンスで配布しています。
*
* 更新履歴
* 2023/7/4 Ver.1.3.0
* エンカウント時に指定のコモンイベントを即時実行できる機能を追加。
* 2023/1/29 Ver.1.2.0
* プラグインコマンドでイベントからの戦闘時先制不意打ちを有効にする機能を追加。
* 2022/12/2 Ver.1.1.1
* 通常のエンカウント時のデフォルト評価式の一部が、取得できなかった問題を修正。
* 通常時、先制攻撃時、不意打ち時の戦闘開始SEを設定できる機能を追加。
* 処理の修正。
* 2022/11/28 Ver.1.1.0
* 通常エンカウント時、先制時、不意打ち時に任意のスクリプトを実行できる機能を追加。
* 必ず先制、不意打ちを実行できるスイッチを追加。
* イベントの先制、不意打ちを有効にできるスイッチを追加。
* 先制された回数、不意打ちされた回数を取得できる機能を追加。
* 2022/7/31 Ver.1.0.0
* 初版
*
* @command EventPresurMode
* @desc イベントからの戦闘で先制不意打ちを有効にします。
* @text イベント先制不意打ち有効
*
* @arg SurpriseId
* @text 先制不意打ち設定ID
* @desc 先制不意打ち設定のリストIDを指定します。
* @type number
* @default 0
*
* @param PreemptiveSurpriseSetting
* @text 先制不意打ち設定
* @desc 先制不意打ち設定
* @type struct<PreemptiveSurpriseList>[]
* @default [”{”Name”:”'default'”,”RandomPreemptiveSetting”:”{\”EvalData\”:\”'Math.random() < this.ratePreemptive();//Default'\”}”,”EventPreemptiveSetting”:”{\”EvalData\”:\”\”}”,”RandomSurpriseSetting”:”{\”EvalData\”:\”'Math.random() < this.rateSurprise() && !preemptive;//Default'\”}”,”EventSurpriseSetting”:”{\”EvalData\”:\”\”}”}”,”{”Name”:”'eventpresur'”,”RandomPreemptiveSetting”:”{\”EvalData\”:\”'Math.random() < this.ratePreemptive();//Default'\”}”,”EventPreemptiveSetting”:”{\”EvalData\”:\”'Math.random() < this.ratePreemptive();//Default'\”}”,”RandomSurpriseSetting”:”{\”EvalData\”:\”'Math.random() < this.rateSurprise() && !preemptive;//Default'\”}”,”EventSurpriseSetting”:”{\”EvalData\”:\”'Math.random() < this.rateSurprise() && !preemptive;//Default'\”}”}”,”{”Name”:”direction”,”RandomPreemptiveSetting”:”{\”EvalData\”:\”\”}”,”EventPreemptiveSetting”:”{\”EvalData\”:\”'this.getEventBackDirection();//Event direction contact judgment. Required NUUN_EventPlayerDirection'\”}”,”RandomSurpriseSetting”:”{\”EvalData\”:\”\”}”,”EventSurpriseSetting”:”{\”EvalData\”:\”'this.getPlayerBackDirection() && !preemptive;//Event direction contact judgment. Required NUUN_EventPlayerDirection'\”}”}”]
*
* @param DefaultPreemptive
* @text デフォルト先制条件
* @desc ランダムエンカウント時のデフォルトの先制条件を記入します。空白で先制攻撃は発生しません。
* @type combo
* @option 'Math.random() < this.ratePreemptive();//デフォルト'
* @option '$gameSwitches.value(0);//スイッチ'
* @default 'Math.random() < this.ratePreemptive();'
*
* @param DefaultSurprise
* @text デフォルト不意打ち条件
* @desc ランダムエンカウント時のデフォルトの不意打ち条件を記入します。空白で不意打ちは発生しません。
* @type combo
* @option 'Math.random() < this.rateSurprise() && !preemptive;//デフォルト'
* @option 'Math.random() < this.rateSurprise();//不意打ち無効なし'
* @option '$gameSwitches.value(0);//スイッチ'
* @default 'Math.random() < this.rateSurprise() && !preemptive;'
*
* @param PreemptiveSE
* @text デフォルト先制攻撃時戦闘開始SE
* @desc デフォルトの先制攻撃時の戦闘開始SE
* @type struct<BattleStartSe>
* @default {”name”:””,”volume”:”90”,”pitch”:”100”,”pan”:”0”}
*
* @param SurpriseSE
* @text デフォルト不意打ち時戦闘開始SE
* @desc デフォルトの不意打ちを受けた時の戦闘開始SE
* @type struct<BattleStartSe>
* @default {”name”:””,”volume”:”90”,”pitch”:”100”,”pan”:”0”}
*
* @param EventPreSurSwitch
* @text イベント先制不意打ち適用スイッチ
* @desc イベントコマンドからの先制不意打ちを適用するスイッチID
* @type switch
* @default 0
*
* @param PreemptiveSwitch
* @text 先制スイッチ
* @desc 必ず先制するスイッチID
* @type switch
* @default 0
*
* @param SurpriseSwitch
* @text 不意打ちスイッチ
* @desc 必ず不意打ちを受けるスイッチID
* @type switch
* @default 0
*
* @param DefaultPresurSprict
* @text 通常エンカウントスクリプト
* @desc 通常のエンカウント時に実行するスクリプト。(複数指定可能)
* @type combo[]
* @option 'EncounterEffect.setType(1);//MPP_EncounterEffectタイプ変更'
* @option 'EncounterEffect.setColor(255,255,255);//MPP_EncounterEffectカラー変更'
* @option '$gameTemp.reserveCommonEvent(0);//コモンイベント'
* @default []
*
* @param PreemptivePresurSprict
* @text 先制時スクリプト
* @desc 先制攻撃時に実行するスクリプト。(複数指定可能)
* @type combo[]
* @option 'EncounterEffect.setType(1);//MPP_EncounterEffectタイプ変更'
* @option 'EncounterEffect.setColor(255,255,255);//MPP_EncounterEffectカラー変更'
* @option '$gameTemp.reserveCommonEvent(0);//コモンイベント'
* @default []
*
* @param SurprisePresurSprict
* @text 不意打ちスクリプト
* @desc 不意打ち時に実行するスクリプト。(複数指定可能)
* @type combo[]
* @option 'EncounterEffect.setType(1);//MPP_EncounterEffectタイプ変更'
* @option 'EncounterEffect.setColor(255,255,255);//MPP_EncounterEffectカラー変更'
* @option '$gameTemp.reserveCommonEvent(0);//コモンイベント'
* @default []
*
* @param DefaultPresurCommonEvent
* @desc 通常エンカウント時に実行するコモンイベント。
* @text 通常エンカウント時実行コモンイベント
* @type common_event
* @default 0
*
* @param PreemptiveCommonEvent
* @desc 先制攻撃エンカウント時に実行するコモンイベント。
* @text 先制攻撃エンカウント時実行コモンイベント
* @type common_event
* @default 0
*
* @param SurpriseCommonEvent
* @desc 不意打ちエンカウント時に実行するコモンイベント。
* @text 不意打ちエンカウント時実行コモンイベント
* @type common_event
* @default 0
*
*/