当サイトの運営者です。ゲーム制作とプラグイン開発が好きで、コミュニティに貢献したいと考えています。
RPGツクールMZでゲームを制作中です。
※プログラマ・エンジニアではありません。
Keke ニアストップ・イベント - Keke_NearStopEvent.js
シェア用テキスト:
▼Keke ニアストップ・イベント(ケケー様作) - Keke_NearStopEvent.js
https://plugin.fungamemake.com/archives/31866
プレイヤーと近づいたイベントを自動で立ち止まらせる。もしくは近寄らせる、離れると元に戻る、近づくと発動系ギミックにも活用可能
ふりがな:にあすとっぷ・いべんと
機能概要: プレイヤーと近づいたイベントを自動で立ち止まらせる。もしくは近寄らせる、離れると元に戻る、近づくと発動系ギミックにも活用可能
利用規約(ライセンス): MITライセンス
作者:ケケー
作者サイト:https://kekeelabo.com/
解説ページ:https://kekeelabo.com/?i=37
ファイル名:Keke_NearStopEvent.js
プラグインのヘルプ:
/*:
* @target MV MZ
* @plugindesc プレイヤーと近づいたイベントを立ち止まらせる
* @author ケケー
* @url https://kekeelabo.com
*
* @help
* 【ver.1.1.5】
* プレイヤーと近づいたイベントを自動で立ち止まらせる。もしくは近寄らせる
* 離れると元に戻る
* 近づくと発動系ギミックにも活用可能
*
*
* 【機能1】イベント別にニアストップを設定
* => イベントコマンドの『注釈』を使う
* ◎注釈を置く位置
* 「現在のページの一番上」か「1ページ目の一番上」
* まず現在のページのがあればそれを使い、なければ1ページ目のを使う
* 注釈は複数つなげることも可能
* ◎置いた注釈の中に
* <nearStop> {
* scope: break: time: noStop:
* through: push: dir: come: speed:
* freq: common1: common2:
* self: noRegion: doRegion:
* }
* ★パラメータの説明
* scope: ストップ発動距離。1~。0 ならストップ無効(なお範囲は円形)
* break: ストップ解除距離。1~。-1 なら距離解除しない
* time: ストップ解除時間。1~。0 なら時間解除しない
* noStop: ストップを封印するか。1-有効 0-無効
* through: ストップ中はすり抜け。1-有効 0-無効
* push: 押し込み時間。1~。0 ならすぐすり抜け
* dir: ストップ中はこっち向く。1-有効 0-無効
* come: ストップ中は近づく。1-有効 0-無効
* speed: 移動速度変更。0 なら変更しない
* freq: 移動頻度変更。0 なら変更しない
* fast: 即座に近づく。1-有効 0-無効
* common1: 発動時コモンイベント。IDで指定。0 ならコモン実行しない
* common2: 解除時コモンイベント。IDで指定。0 ならコモン実行しない
* self: セルフスイッチ。a~d。a ならセルフスイッチ A をオン
* noRegion: 無効リージョン。IDで指定。0 なら無効リージョンなし
* doRegion: 有効リージョン。IDで指定。0 なら有効リージョンなし
* ★例
* <nearStop> { scope:5 }
* プレイヤーが5マス以内に入ると停止
* <nearStop> { scope:0 }
* ニアストップ無効
* <nearStop> { scope:5 come:1 break:10 }
* プレイヤーが5マス以内に入ると近づいてくる。10マス以上離れると解除
* <nearStop> {
* scope:10 come:1 speed:6 freq:5 fast:1
* common1:20 doRegion:11
* }
* (店主用)
* プレイヤーがイベントの10マス以内に入ると、コモンイペント20を実行
* 移動速度を6、移動頻度を5にして即座に近づいてくる
* プレイヤーがリージョン11の上にいる時のみ有効
* <nearStop> {
* scope:10 come:1 speed:6 freq:5 fast:1
* common1:20 common2:21 self:A noRegion:10
* }
* (追いかけてくる敵用)
* プレイヤーがイベントの10マス以内に入ると、セルフスイッチAをオン
* コモンイペント20を実行し、移動速度を6、移動頻度を5にして即座に近づいてくる
* プレイヤーがリージョン10の上にいる時は無効
* 射程外に離れるかリージョン10に入ると解除され、セルフスイッチAをオフ
* コモンイベント21を実行する
*
* 【機能2】マップ上の全てのイベントにニアストップを設定
* => マップのメモ欄に
* <nearStop> { }
* 書式は上のイベント個別の場合と同じ
*
*
* 【機能3】ニアストップを一時的に無効(MZ限定)
* => プラグインコマンド → ニアストップ無効
* ◎有効に戻す時は プラグインコマンド → ニアストップ有効
*
*
* 【応用】「ストップ」「近づく」以外の動きを設定
* ◎セルフスイッチを使う
* [1]注釈での設定で
* <nearStop> { self:A noStop:1 }
* とセルフスイッチを起動させ、ストップを封印する
* [2]セルフスイッチを条件としたページを作り、
* 移動タイプ『カスタム』で好きな動きを設定する
*
*
* 【付属機能】真ランダム移動
* デフォルトのイベントのランダム移動はそれほどランダムでないので、
* それを真のランダムにできる
* ★設定のしかた
* ・イベントを移動タイプ「ランダム」にした上で、
* ・注釈に
* <trueRondomMove>
* 注釈を置く位置は上のニアストップの場合と同じ
*
*
* 【注意】プレイヤーの進路妨害について
* ◎「ストップ中はすり抜け」を無効にすると、
* プレイヤーの進路を塞いでしまうおそれがある
* ◎その場合は「無効リージョンID」「有効リージョンID」を使い、
* イベントが危険な位置で立ち止まらないようにしよう
*
*
* ● 利用規約 ●
* MITライセンスのもと、自由に使ってくれて大丈夫です
*
*
* @param ストップ条件
*
* @param 自動ニアストップ
* @parent ストップ条件
* @desc ゲーム中の全ての自立歩行するイベントに、自動でニアストップを適用する
* @type boolean
* @default true
*
* @param ストップ距離
* @parent ストップ条件
* @desc ストップを発動する距離。2.5 なら プレイヤーとの距離が 2.5マス 以内(円形範囲) で発動。空欄ならストップ無効
* @default 2
*
* @param ストップ解除距離
* @parent ストップ条件
* @desc ストップを解除する距離。5 なら プレイヤーとの距離が 5マス 以上で解除。-1 なら距離解除しない。空欄なら発動距離と同じ
* @default
*
* @param ストップ時間
* @parent ストップ条件
* @desc ストップを解除するまでの時間。50 なら 50フレーム 経過後に解除。空欄なら時間解除しない
* @default
*
* @param ストップ中の挙動
*
* @param ストップ中はすり抜け
* @parent ストップ中の挙動
* @desc ニアストップ中はプレイヤーからすり抜け可能にする。プレイヤー以外はすり抜けない
* @type boolean
* @default true
*
* @param …押し込み時間
* @parent ストップ中の挙動
* @desc 一定時間押し込むことですり抜けるようにする。60 なら 60フレーム 押し込んだらすり抜け。空欄ならすぐすり抜け
* @type number
* @default 60
*
* @param ストップ中はこっち向く
* @parent ストップ中の挙動
* @desc ニアストップ中は常にプレイヤーの方を向くようにする
* @type boolean
* @default true
*
* @param ストップ中は近づく
* @parent ストップ中の挙動
* @desc ニアストップ時、停止ではなくプレイヤーに近づいてくるようになる
* @type boolean
* @default false
*
* @param …移動速度変更
* @parent ストップ中の挙動
* @desc 近づく時、移動速度を変更する。5 なら移動速度 5 に、+1 なら元の移動速度に +1 する。空欄なら変更しない
* @default
*
* @param …移動頻度変更
* @parent ストップ中の挙動
* @desc 近づく時、移動頻度を変更する。5 なら移動頻度 5 に、+1 なら元の移動頻度に +1 する。空欄なら変更しない
* @default
*
* @param …即座に近づく
* @parent ストップ中の挙動
* @desc 近づく時、即座に近づくモードに切り替える。若干不自然な動きになることもあるが、素早い反応を優先したい場合に
* @type boolean
* @default
*
* @param コモン/スイッチ
*
* @param 発動時コモンイベント
* @parent コモン/スイッチ
* @desc ニアストップ発動時にイベントに実行させるコモンイベント
* @type common_event
* @default
*
* @param 解除時コモンイベント
* @parent コモン/スイッチ
* @desc ニアストップ解除時にイベントに実行させるコモンイベント
* @type common_event
* @default
*
* @param セルフスイッチ
* @parent コモン/スイッチ
* @desc ニアストップ中にオンにするセルフスイッチ
* @type select
* @option A
* @option B
* @option C
* @option D
* @default
*
* @param 無効設定
*
* @param 無効の移動タイプ
* @parent 無効設定
* @desc 自動ニアストップを適用しない移動タイプを設定できる
* @type struct<noMoveType>
* @default
*
* @param 無効リージョンID
* @parent 無効設定
* @desc ニアストップを無効にするリージョンのID。プレイヤーがこのリージョン上にいる時はストップしない
* @type number
* @default
*
* @param 有効リージョンID
* @parent 無効設定
* @desc ニアストップを有効にするリージョンのID。プレイヤーがこのリージョン上にいる時のみストップする
* @type number
* @default
*
*
*
* @command ニアストップ有効
* @desc ニアストップを有効にする
*
* @command ニアストップ無効
* @desc ニアストップを無効にする
*/