Superior Hook Rope - SuperiorHookRope.js

シェア用テキスト:
▼Superior Hook Rope(神無月サスケ様作) - SuperiorHookRope.js
https://plugin.fungamemake.com/archives/2631
多機能フックロープをイベントコマンドを使わずに実現出来ます。

ふりがな:すぐれたふっくろーぷ

機能概要: 多機能フックロープをイベントコマンドを使わずに実現出来ます。

利用規約(ライセンス): MITライセンス

作者:神無月サスケ

作者サイト:https://twitter.com/ktakaki00

解説ページ:https://forum.tkool.jp/index.php?threads/851/

ファイル名:SuperiorHookRope.js

プラグインのヘルプ:

/*:ja
 * @plugindesc 多機能フックロープをイベントコマンドを使わずに実現出来ます。
 * @author 神無月サスケ(謝辞:さかちゃん)
 *
 * @param Hook Rope Animation File Name
 * @desc img/animations/ にあるフックロープのファイル名。拡張子なしで指定。
 * @default HookRope
 * @require 1
 * @type animation
 *
 * @param Max Length
 * @desc フックロープの最大距離
 * @default 7
 *
 * @param Require Strict Length
 * @desc 0:最大距離丁度の位置に杭があった時のみ移動 1:最大距離以内なら何歩先でも有効
 * @default 1
 *
 * @param Trigger For Hook Rope
 * @desc フックロープ起動条件。以下が有効: ok, shift, pageup, pagedown, none (デフォルト:ok)
 * @default ok
 *
 * @param Switch ID HookRope Works
 * @desc フックロープ作動中だけONになるスイッチID。0にしないでください。
 * @default 20
 *
 * @param Default Event Invocation Mode
 * @desc 接触したイベントを起動するか (0:しない 1:!で始まる画像のみ 2:する)
 * @default 0
 *
 * @param Default Event Fectch Mode
 * @desc 接触したイベントを取ってくるか(0:しない 1:!で始まる画像のみ 2:する)
 * @default 0
 *
 * @param Require HookRope Item
 * @desc 1: フックロープアイテム所持の時だけ起動 0:アイテムに関係なく起動
 * @default 0
 *
 * @param Go Backward For Fetch
 * @desc 目の前が通行不可の場合、プレイヤーが一歩後退して取るか。 1: する(デフォルト) 0: しない 2: 接触時以外する
 * @default 1
 *
 * @param Shot SE File Name
 * @desc フックロープ発射時のSEです。
 * @default Evasion1
 * @require 1
 * @dir audio/se/
 * @type file
 *
 * @param Shot SE Volume
 * @desc フックロープ発射時のSEボリュームです。
 * @default 90
 *
 * @param Shot SE Pitch
 * @desc フックロープ発射時のSEのピッチです。
 * @default 100
 *
 * @param Shrink SE File Name
 * @desc フックロープが収縮する際のSEです。省略すると演奏されず、発射時のSEが演奏され続けます。
 * @default Evasion2
 * @require 1
 * @dir audio/se/
 * @type file
 *
 * @param Shrink SE Volume
 * @desc フックロープ収縮する際のSEボリュームです。
 * @default 90
 *
 * @param Shrink SE Pitch
 * @desc フックロープ収縮する際のSEピッチです。
 * @default 100
 *
 * @param Fetch SE File Name
 * @desc フックロープがイベントを手繰り寄せる時とプレイヤーが移る時のSEです。省略すると通常の収縮の設定になります。
 * @default Decision1
 * @require 1
 * @dir audio/se/
 * @type file
 *
 * @param Fetch SE Volume
 * @desc フックロープがイベントを手繰り寄せる際のSEボリュームです。
 * @default 90
 *
 * @param Fetch SE Pitch
 * @desc フックロープがイベントを手繰り寄せる際のSEピッチです。
 * @default 100
 *
 * @help
 * ■概要
 * マップ上で特定のキーを押すか、またはメニュー画面でアイテムを使用した時に、
 * プレイヤーの向きに応じてフックロープのアニメーションを表示します。
 * フックロープには、以下の3つの使い方があります。
 * 1.フックロープの先に杭があった場合、プレイヤーは杭の手前まで移動します。
 * 2.フックロープが接触したイベントを起動します。
 * 3.フックロープの先に接触したイベントを、目の前に持ってきます(フェッチ)。
 *
 * なお、フックロープは壁を通り抜けられません。壁がある場合、その手前までしか
 * 伸びません。
 * また、プレイヤーが壁の上にいる時は、フックロープは起動しません。
 *
 * ■優先順位に関する注意
 *  ・プレイヤーに隣接するするイベントでは、トリガ(オプションで指定する、
 *   どのキーでフックロープを起動するか)がokの場合、通常イベント起動の方が
 *   優先され、フックロープによる起動は無視されます。
 * ・もし、フックロープの範囲内に、複数のフックロープイベントがある場合、
 * 一番「近くにある」イベントが最優先されます。
 * ・もし、上記のうち複数の特徴を持つイベントが指定された場合、
 * 、優先順位は、1>2>3 となります。
 * 
 * ■1.杭となるイベントやタイルの指定方法
 * ・イベントのメモにて<picket>と書くことで、そのイベントの1ページ目の画像を
 *   持つイベントが、一律、杭とみなされるようになります。
 *   1ページ目以外の画像を参照したい場合、例えば<picket:5>と記述することで、
 *   そのイベントの5ページ目の画像が杭と見做されます。
 *   画像は、タイルでもイベントでもかまいません。
 * ・マップのメモにて、中層(タイルA2の右半分)を持つ座標が指定された場合、
 *   そのA2タイルが杭と見做されます。
 *   例:マップのメモに<picket:(15,20)>と書くことで、座標(15,20)の中層タイルが
 *   杭と見做されます。
 * ・マップとイベント、双方に記述がある場合、イベントの設定が優先されます。
 * ・マップが切り替わっても、設定は維持されます。他マップで、新たに杭が
 *   設定された場合、杭がその画像に置き換わります。
 *
 * ■2.接触したイベントの起動方法
 * ・オプション「Default Event Invocation Mode」にて、起動可能なイベント種類を
 *   設定できます。
 * ・起動可能な場合でも、画像設定のないイベントなど透明イベントは起動しません。
 * ・イベントのメモに<onHook>と書くことで、オプションの値に関係なく起動します。
 *   逆に<ignoreHook>と書いたイベントは、オプションを無視して起動しません。
 *   透明イベントでも、メモに<onHook>と設定の場合、起動可能となります。
 * ・オプション「Switch ID HookRope Works」で指定されたイベントIDは、
 *   フックロープ起動中のみONになります。よって、このスイッチを見ることで
 *   フックロープから起動されたかどうかが分かるため、
 *   イベント内でそのスイッチで条件分岐を行うと、「フックロープで起動されたか
 *   否か」で処理を分けることが可能です。
 *
 * ■3.接触したイベントを、主人公の目の前に、引き寄せる方法
 * ・オプション「Default Event Fectch Mode」で機能可能なイベント種類を
 *   設定できます。
 * ・引き寄せ可能なのは、「プライオリティ」が「通常キャラと同じ」で、なおかつ
 *   画像が設定されており、透明でないイベントだけです。
 * ・イベントのメモに<canFetch>と書くことで、オプションを無視して起動します。
 *   逆に<noFetch>と書かれたイベントは、オプションを無視して起動しません。
 * ・オプションの値を2に設定した場合、そのイベントが人物であっても
 *   メモ設定がなければ、引き寄せ可能になってしまうため、注意が必要です。
 * ◆ポイント:もし目の前が通行可能なら、そのままイベントを引き寄せますが、
 *   通行不可の場合で、なおかつプレイヤーが後方に通行可能な場合、
 *   プレイヤーは一歩後退し、プレイヤーがいた場所にイベントが引き寄せられます。
 *
 * ■起動キーオプションの設定とキー、パッドのボタンとの対応
 * ok : enter, space, Z, または Gamepad A
 * shift : shift, または Gamepad X
 * pageup : pageup, Q, または Gamepad LB
 * pagedown : pagedown, W, または Gamepad RB
 * none : キーは受け付けない(アイテムやプラグインコマンドで起動する人向け)
 *
 * ■タッチパネルでの操作方法
 * 歩いてたどり着くことが不可能なイベント(例:川に囲まれている)を
 * タップすると、自動的に必要な場所でフックロープを使用します。
 * 直線距離上に移動し、フックロープが使えるようになったら使ってくれます。
 *
 * ■フックロープとなるアイテムの設定方法
 * アイテムのメモに <hookRope> と書くことで、そのアイテムはフックロープと
 * みなされます。戦闘以外で使用することで、即マップに切り替わり、
 * フックロープのイベントが起動します。
 *
 * ■応用1:プラグインコマンド
 * HookRope resetPicket
 * 杭の画像をリセットします。杭のないマップで行うと有効です。
 * HookRope off
 * フックロープの機能を無効にします。フックロープ不要のマップでの設定を
 * 想定しています。設定は「HookRope on」が呼ばれるまで保持されます。
 * HookRope on
 * フックロープの機能を有効にします。(デフォルト)
 *
 * HookRope start
 * フックロープを起動します。
 * イベントコマンドからフックロープを起動するときに呼び出してください。
 *
 * ■応用2:メモ
 * マップのメモに<HookRopeDisable>と書くことで、そのマップに限り、
 * フックロープは起動しなくなります。
 *
 * ■応用3:応用プラグインコマンド
 * HookRope MaxLength 12
 * HookRope MaxLength 7
 * HookRope MaxLength V4
 * フックロープの最大距離を変更します。
 * 頭にVを付けると、その変数の値になります。
 *
 * HookRope Picket off
 * 杭に飛び移る機能(上記の1)を一時的に無効にする
 * HookRope Picket on
 *  杭に飛び移る機能を有効にする(デフォルト)
 *
 * HookRope Invoke off
 * 接触したイベントを起動する機能(上記の2)を一時的に無効にする
 * HookRope Invoke on
 * 接触したイベントを起動する機能を有効にする(デフォルト)
 *
 * HookRope Fetch off
 * 接触したイベントを引き寄せる機能(上記の3)を一時的に無効にする
 * HookRope Fetch on
 * 接触したイベントを引き寄せる機能有効にする(デフォルト)
 *
 * ■競合対策
 * - サンシロ様の SAN_AnalogMove.js との競合を解決しています。
 *
 * ■ライセンス表記
 * このプラグイン作成にあたって、さかちゃん様の「たらぽんくえすと4」で
 * 使われた「びよよんロープ」の画像を、そのまま利用しています。
 * 快諾下さった「さかちゃん」さんに感謝します。
 *
 * このプラグインは MIT ライセンスで配布されます。
 * ご自由にお使いください。
 * http://opensource.org/licenses/mit-license.php
 */

備考:参考動画

0

スポンサードリンク

スポンサードリンク

Copyright© #ツクプラ , 2020 All Rights Reserved.