/*:ja * @plugindesc (v.1.2) マップ画像上の選択した場所へ移動できる新しいシーンを作成します。 * * @author Galv - galvs-scripts.com * * @param Transfer Map Variable * @desc マップIDの保存に使用される変数ID * @default 1 * * @param Transfer X Variable * @desc 移動するx座標の保存に使用される変数ID * @default 2 * * @param Transfer Y Variable * @desc 移動するy座標の保存に使用される変数ID * @default 3 * * @param Confirm Text * @desc 確認ウィンドウで移動の表示テキスト * @default 移動 * * @param Cancel Text * @desc 確認ウィンドウでキャンセルの表示テキスト * @default キャンセル * * @param Confirm Window Width * @desc 確認ウィンドウの幅 * @default 180 * * @param Default Location Frames * @desc 場所のフレーム数 * @default 3 * * @param Frame Speed * @desc フレームアニメーションの速度(小さいほど速い) * @default 10 * * @help * 翻訳:ムノクラ * https://fungamemake.com/ * https://twitter.com/munokura/ * * --------------------------------------------------------------------------- * Galv's Map Travel * --------------------------------------------------------------------------- * マップ画像上の選択した場所へ移動できる新しいシーンを作成します。 * * このプラグインはプラグアンドプレイではありません。 * 使用者は、独自のマップ画像を作成し、 * 基本的なJavaScript(配列や文字列など)を理解できるスキルが必要です。 * * 画像 * * このマップ移動シーンの画像は、プロジェクトに新しいフォルダーを追加し、 * そこに保存します。(/img/maptravel/内) * * マップ画像は任意のサイズを使用でき、 * マップの移動シーンでスクロールするサイズを制御します。 * * 場所の画像も任意のサイズにできますが、3フレームを保持するには、 * 場所の画像の高さの3倍が必要です。 * 各フレームは異なる状況に表示されます。 * * 上:マップ上のデフォルト * 中央:場所を選択した場合 * 下:場所が無効の場合 * * サンプル場所画像のプラグインデモを見てください。 * * プラグイン設定で3つの場所変数を設定し、 * それらの変数をで他に使用しないでください。 * これらは'場所移動'コマンドで使用するmapid、x、yの値を保持します。 * * * --------------------------------------------------------------------------- * スクリプト * --------------------------------------------------------------------------- * Step 1. マップ作成 * --------------------- * 次のスクリプトでマップ移動シーンで使用する新しいマップを作成します。 * * Galv.MAPT.createMap(id,"mapImage",[[bg],[bg]],[[fg],[fg]]); * * 情報: * id = 作成したマップを識別する番号 * "mapImage" = 使用するマップ画像のファイル名(/img/maptravel/内)。 * この画像はシーン内のマップのサイズを決定します。 * [bg] = マップ画像の背景画像を設定する配列。 * 必要な数のbg配列を必要な数だけ設定できます。 * ["bgimage",xmove,ymove,opacity] * [fg] = bg配列と同じように機能しますが、前景画像用です。 * ["fgimage",xmove,ymove,opacity] * * * * Step 2. 場所とオブジェクトの設定 * ------------------------------------- * 以下のスクリプトを使用して、必要な数の場所をマップに追加できます。 * * Galv.MAPT.setLocation(id,"name","image",mx,my,tmid,tx,ty,"desc",f); * * 情報: * id = 上記で作成したマップを識別する番号 * "name" = 場所の名前(参照にも使用) * "image" = 場所画像のファイル名(/img/maptravel/内) * この画像には、次の3行が必要です。 * 上=通常、中=有効、下=無効 * mx = その場所のマップ画像上のx位置 * my = その場所のマップ画像上のy位置 * tmid = transfer map id - 移動先のマップID * tx = 移動先のマップx座標 * ty = 移動先のマップy座標 * "desc" = 場所が選択された時に表示される短い説明。 * 改行を指定するシンボルに|を使用します。 * f = 位置画像のアニメーションのフレーム数。 * プラグイン設定のデフォルトフレームを使用する場合、 * この属性を含めないでください。 * * このsetLocationを使用して、以前に設定した名前を別の名前に変更する場合、 * 同じ名前を使用して上書きできることに注意してください。 * * 場所に加えて、同様の方法で機能する'オブジェクト'を追加できますが、 * スプライトシートには1行の画像しかなく、場所リストには表示されません。 * * Galv.MAPT.setObject(id,"name","image",mx,my,f); * Galv.MAPT.removeObject(id,"name"); * * * Step 3. シーンを呼び出す * -------------------------- * プレーヤーがマップに追加された場所に移動できるように、 * マップの移動シーンを開くには: * * Galv.MAPT.openMap(id); // マップを開くために上記で設定されたID * * * * その他のスクリプト * ------------------- * * Galv.MAPT.hasMap(id) * // 条件分岐'スクリプト'で使用し、 * // プレイヤーのゲームでマップが作成されているかを確認します * * Galv.MAPT.mapSelected * // シーンが実行された後に条件分岐で使用し、 * // レイヤーが場所を選択したかどうかを確認 * * Galv.MAPT.initLocation("name"); * // マップシーンの開始位置をこの位置に設定 * * Galv.MAPT.enableLocation(id,"name",s); * // sをtrue/falseに指定し、マップIDの場所'name'を有効/無効に設定 * * Galv.MAPT.removeLocation(id,"name"); // mapidリストから場所を削除 * * Galv.MAPT.editLocation(id,"name","attribute",value); // 場所を編集 * * // id = 編集している場合はマップ * // "name" = 編集している場所の名前 * // "attribute" = 編集する属性。 次のいずれかです。 * // "image" 内容 = "imageName" * // "mapXY" 内容 = [x,y] * // "transfer" 内容 = [mapid,x,y] * // "desc" 内容 = "description here" * // value = 変更する値。各属性の値は上記です。 * * 例 * Galv.MAPT.editLocation(0,"Your Mansion","desc","A new description!"); * * 次を使用して場所を上書きすることもできます。 * Galv.MAPT.setLocation(id,"name","image",mx,my,tmid,tx,ty,"desc"); * 上書きする場合、同じ名前を入力します。 * * --------------------------------------------------------------------------- */