AB ランダムな位置に出現するシンボルエンカウント - AB_SymbolEncounterMZ.js
シェア用テキスト:
▼AB ランダムな位置に出現するシンボルエンカウント(ミスティ様作) - AB_SymbolEncounterMZ.js
https://plugin-mz.fungamemake.com/archives/7268
出現位置がランダムなシンボルエンカウントシステム
ふりがな:らんだむないちにしゅつげんするしんぼるえんかうんと
機能概要: 出現位置がランダムなシンボルエンカウントシステム
利用規約(ライセンス): MITライセンス
作者:ミスティ
作者サイト:https://kilisamenosekai.web.fc2.com/
解説ページ:https://kilisamenosekai.web.fc2.com/resources/mzplugin.…
ファイル名:AB_SymbolEncounterMZ.js
プラグインのヘルプ:
/*: * @target MZ * * @plugindesc 出現位置がランダムなシンボルエンカウントシステム * * @author misty_rain * * @help イベントの名前を「EnemySymbol」と指定すると、 * そのイベントはシンボルエンカウント向きの動きをします。 * メモに「<Region:1>」と指定すると、そのイベントはリージョン1でのみ出現します。 * 「<Region:2,3>」と指定すれば、そのイベントはリージョン2と3で出現します。 * * ・普段は右か左に90度回転、一歩前進などの動きをします。 * ・プレイヤーが視界に入ると発見モードになります。 * ・イベントが向いてる方向に距離6(デフォルト)、幅3(固定)が視界です。横とか後ろから近付いても発見されません。 * ・発見モードになると、ひたすらプレイヤーに近づく動きになります。 * ・発見モードでは、プレイヤーとの距離8(デフォルト)より離れると見失います。向いてる方向関係ありません。 * ・普段の状態の場合、一定時間経過、プレイヤーとの距離10(デフォルト)より離れると消えます。 * ・消えた後、しばらくするとプレイヤーとの距離10(デフォルト)以内で、指定したリージョン番号の場所に出現します。 * ・イベントの実行内容で、移動ルートの指定:このイベントで不透明度0にした場合も、どこかへ出現します。 * ・戦闘の処理など、イベントの実行内容はツクーラーさんが作成してください。最後は移動ルートの指定:このイベントで不透明度0にして消してください。 * ・イベントが始まると消えます。イベント中は再出現しません。 * ・発見モード時、プレイヤーの後ろから接触された場合、不意打ち → パーティ能力の 不意打ち無効 で防げます * ・普段、イベントの後ろからプレイヤーが接触すると先制攻撃 → パーティ能力の 先制攻撃率アップ で正面以外先制攻撃(正面だと先に発見モードになる) * ・敵の視界は、スイッチで可視化できます。 * ・イベントの名前を「EnemySymbol_noFind」と指定すると、発見モードにならない敵シンボルになります。 * * 以下、上級編です。上手く使わないと動かなくなったりします。 * ・プラグインコマンドはありませんが、移動ルート指定でスクリプトに「this.checkPlayerInSightToSelfSwA();」を指定すると、 * プレイヤーが視界内にいるかどうかチェックし、いればセルフスイッチAがON,いなければOFFになります。 * ・同様に 「this.checkPlayerInSightToSelfSwB();」でセルフスイッチB、 * 「this.checkPlayerInSightToSelfSwC();」でセルフスイッチC、 * 「this.checkPlayerInSightToSelfSwD();」でセルフスイッチDがONになります。 * また、「this.checkPlayerInSightToSwitch(ONにしたいスイッチNo);」でチェック結果を指定したNoのスイッチに入れます。 * * ・イベントの移動ルートの指定にて、スクリプト「this.stareEffect(距離)」を指定すると、指定した距離内にいるイベントは、 * そのイベントがいる方を一定時間凝視します。例えば、不審な音がしたのでそちらを向くなどの用途に。 * ・移動ルート指定でスクリプトに「this.checkStareToSelfSwA();」を指定すると、 * 凝視中の動作を行い、凝視中ならセルフスイッチAがON,凝視していなければOFFになります。 * ・同様に 「this.checkStareToSelfSwA();」でセルフスイッチB、 * 「this.checkStareToSelfSwB();」でセルフスイッチC、 * 「this.checkStareToSelfSwC();」でセルフスイッチDがONになります。 * また、「this.checkStareToSwitch(ONにしたいスイッチNo);」でチェック結果を指定したNoのスイッチに入れます。 * ・イベントの移動ルートの指定にて、スクリプト「this.moveTowardStare();」を指定すると、凝視地点へ一歩近づきます。 * (例えば一定のルートを巡回しているような場合、凝視地点へ近付けさせた後、何もないと気付いて元のルートに戻るとかはありません) * ・イベントの移動ルートの指定にて、スクリプト「this.moveToward(x,y);」を指定すると、x,yで指定した座標へ一歩近づきます。 * * ============================================================================= * @param FindBalloon * @desc 発見モードになった時の吹き出し番号 * @default 1 * @type number * * @param LoseBalloon * @desc 発見モードで 見失った時の吹き出し番号 * @default 2 * @type number * * @param FindMoveSpeed * @desc 発見モード時の歩く速度 * @default 4 * @type number * * @param NormalMoveSpeed * @desc 普段の速度 * @default 3 * @type number * * @param AppearanceTime * @desc 普段の状態で、消えるまでの時間 * @default 100 * @type number * * @param SightArea * @desc 視界の距離 * @default 5 * @type number * * @param WarpTryTime * @desc 消えた後、再出現する位置をランダムで決め、リージョンが合うかの判定をする。合うまでは出現しない。その回数。 * @default 10 * @type number * * @param ChaseArea * @desc 発見モード時、追いかけてくる距離。これを超えると見失う。 * @default 8 * @type number * * @param AppearanceArea * @desc 普段、この距離以上にプレイヤーが離れたら強制的に消え、再出現する * @default 15 * @type number * * @param WarpArea * @desc 出現範囲。プレイヤーを中心に、ここで指定した範囲内でランダムに出現 * @default 10 * @type number * * @param LoseCount * @desc 発見モード時、プレイヤーを見失ってから、発見モードOFFになるまでのカウント * @default 100 * @type number * * @param MinWaitTime * @desc 普段、動作を待つカウントの最小 * @default 60 * @type number * * @param RndWaitTime * @desc 普段、動作を待つカウントの幅(最小+ランダム分待つ、そのランダムを指す) * @default 60 * @type number * * @param SightColor * @desc 敵視界を可視化した時の色 * @default red * @type number * * @param SightVisibleSwId * @desc 敵視界を可視化するスイッチの番号 1ならスイッチ1ONで敵の視界を可視化する * @default 1 * @type number * * @param SightOpacity * @desc 敵視界を可視化したとき、敵視界の不透明度 * @default 64 * @type number * * @param StareCountMin * @desc 不審な音がした時などで、そっちの方を凝視する時間の最小 * @default 180 * @type number * * @param FollowersThrough * @desc 1にすると敵シンボルは隊列歩行の仲間たちをすり抜ける * @default 0 * @type number * * ============================================================================= */