「マップの拡大率を制御できるプラグイン」です。
どなたかのお役に立てば幸いです。
/*:ja * @target MZ * @url https://raw.githubusercontent.com/munokura/MNKR-MZ-plugins/master/MNKR_DP_MapZoomMZ.js * @plugindesc マップの拡大率を制御します。 * @author drowsepost (改変 munokura) * * @help * ========================================================================= * About * ========================================================================= * 各種座標処理に拡大率の計算を反映し * マップシーンの拡大率を制御します。 * また、指定したイベントをカメラが追うように指定します。 * 標準のフォーカス対象は先頭のプレイヤーとなります。 * * ========================================================================= * Knowing issue * ========================================================================= * 巨大なマップにおいて拡大率をあまりに小さくすると * canvasモードで処理落ち、webglモードでマップ欠けの問題が発生します。 * これはPIXIライブラリの限界であり、解決方法は調査中です * * ========================================================================= * How To Use * ========================================================================= * ◆ マップメモ欄 * * <zoomScale:0.5> * などと記述すると、マップごとに基準になる拡大率を指定することが出来ます。 * * <camTarget: 3> * 等と記述すると、イベントID n番のイベントが画面中央になった状態にできます。 * フォーカスはイベントの移動に画面が追従します。 * * ◆ プラグインコマンド * * (1)ズーム機能 * dpZoom {倍率} {変更にかけるフレーム数} {対象イベントID / this / player} * 指定したイベントにフォーカスを合わせつつ画面の拡大率を変更できます。 * 第3引数に何も指定しない場合、画面中央に向かって拡大します。 * * 例: * プラグインコマンドにおいて対象イベントの部分に * 「this」もしくは「このイベント」と指定すると、 * イベント実行中のオブジェクトを指定します。 * dpZoom 2 360 this * 例えば上記はそのイベントが中心になるように6秒かけて2倍の拡大率に変化します。 * <非推奨> mapSetZoom は利用できますが、非推奨とします。 * * (2)フォーカス機能 * dpFocus {対象イベントID / this / player} {変更にかけるフレーム数} * 画面の拡大率を変更せずに指定したイベントにフォーカスを合わせます。 * * ========================================================================= * Settings * ========================================================================= * Base Scale * ゲーム開始時の拡大倍率を指定します。 * 倍率には0以上を指定してください。 * * Encount Effect * エンカウントエフェクトを置き換えるかどうかを指定します。 * オリジナルのエフェクトで置き換えている場合はこちらをfalseにしてください。 * その場合、画面の拡大率をそれぞれ反映できるように調整する必要があります。 * * Camera Controll * falseの場合はイベントを指定した拡大を含む * 拡大中のカメラ制御は動作しません。 * 別プラグインでカメラ制御を行う場合にご利用ください。 * * Weather Patch * trueの場合、天候スプライトの生成範囲に関する修正を行い、 * 拡大率変更後も天候スプライトをまんべんなく分布させます * 別プラグインで天候演出の制御を行っている場合等はfalseにしてください。 * * Picture Size Fixation * trueの場合、ピクチャを拡大処理から除外します。 * * Old Focus * trueの場合、古いDP_MapZoom.jsと同様のフォーカス処理を行います。 * このフォーカス処理は対象イベントまでの座標のずれを基準にしているため、 * イベントの移動を追尾しません。 * * Easing Function * ズーム時のイージングを主に0から1の間で戻す式を設定できます。 * 引数 t にズームの進捗が0から1で入ります。JavaScript。 * * ========================================================================= * Technical information * ========================================================================= * 現在の画面の拡大率は$gameScreen.zoomScale()で取得できます。 * これはプラグインの利用に関わらず元から存在する関数です。 * 他のプラグインで利用する「screenX」や「screenY」がずれる場合は、 * 「screenX」や「screenY」にそれぞれ$gameScreen.zoomScale()を掛けて下さい。 * * このプラグインは$gameScreenを制御します。 * * 指定された拡大率設定は$gameMap._dp_scaleが保持します。 * シーン離脱時のスクロール量は$gameMap._dp_panが保持します。 * マップのフォーカスイベントは$gameMap._dp_targetが保持します。 * * * このプラグインについて * RPGツクールMV用に作成されたプラグインをMZ用に移植したものです。 * お問い合わせは改変者へお願いいたします。 * * * 利用規約: * MITライセンスです。 * https://licenses.opensource.jp/MIT/MIT.html * 作者に無断で改変、再配布が可能で、 * 利用形態(商用、18禁利用等)についても制限はありません。 * * * @param Base Scale * @text 基本拡大率 * @desc 基本の拡大率を設定します。(0以上) * Default: 1 * @default 1 * * @param Encount Effect * @text エンカウントエフェクト反映 * @desc エンカウントエフェクトに拡大率を反映 * Default: true (ON: true / OFF: false) * @default true * @type boolean * * @param Camera Controll * @text 拡大処理中センタリング制御 * @desc 拡大処理中のセンタリング制御をこのプラグインが行う * Default: true (ON: true / OFF: false / 最小: minimum) * @default true * @type select * @option ON * @value true * @option OFF * @value false * @option Minimum * @value minimum * * @param Weather Patch * @text 天候スプライト生成範囲 * @desc 天候スプライトの生成範囲を広げる修正を適用します。 * Default: true (ON: true / OFF: false) * @default true * @type boolean * * @param Picture Size Fixation * @text ピクチャ除外 * @desc マップの拡大処理から除外するピクチャを選択します。 * @default true * @type select * @option 全ピクチャを拡大 * @value false * @option 全ピクチャを除外 * @value true * @option $がファイル名先頭のピクチャを除外 * @value $ * @option screen_がファイル名先頭のピクチャを除外 * @value screen_ * @option fix_がファイル名先頭のピクチャを除外 * @value fix_ * * @param Old Focus * @text 追跡なしフォーカス使用 * @desc 古いバージョンの追跡なしのフォーカスを使用します。 * Default: false (ON: true / OFF: false) * @default false * @type boolean * * @param Easing Function * @text アニメーションのイージング式 * @desc アニメーションのイージング式。 * 引数 t (0.00~1.00) 戻り値 数値(0.00~1.00) Default: t * @default t * @type string * * * @command dpZoom * @text 画面の拡大率を変更 * @desc 指定したイベントにフォーカスを合わせつつ画面の拡大率を変更できます。 * * @arg focusScale * @text 倍率 * @desc 画面の拡大率 * @default 1 * * @arg focusFlame * @text フレーム数 * @desc 変更にかけるフレーム数 * @default 1 * * @arg focusTarget * @text 対象 * @desc ズーム対象 * (数字:イベントID / this:実行イベント / player:プレイヤー) * @type combo * @option this * @option player * @default this * * * @command dpFocus * @text 対象にフォーカス * @desc 画面の拡大率を変更せずに指定したイベント等にフォーカスを合わせます。 * * @arg focusTarget * @text 対象 * @desc フォーカス対象 * (数字:イベントID / this:実行イベント / player:プレイヤー) * @type combo * @option this * @option player * @default this * * @arg focusFlame * @text フレーム数 * @desc 変更にかけるフレーム数 * @default 1 */
コメントを投稿するにはログインしてください。