当サイトの運営者です。ゲーム制作とプラグイン開発が好きで、コミュニティに貢献したいと考えています。
RPGツクールMZでゲームを制作中です。
※プログラマ・エンジニアではありません。
MPP オブジェクト自由設置 - MPP_ObjectFreePlacement.js
シェア用テキスト:
▼MPP オブジェクト自由設置(木星ペンギン様作) - MPP_ObjectFreePlacement.js
https://plugin-mz.fungamemake.com/archives/4098
イベントを自由に設置できる機能を追加します。
ふりがな:おぶじぇくとじゆうせっち
機能概要: イベントを自由に設置できる機能を追加します。
利用規約(ライセンス): MITライセンス
作者:木星ペンギン
作者サイト:https://woodpenguin.web.fc2.com/MV_Plugin/
解説ページ:https://woodpenguin.web.fc2.com/MV_Plugin/FastForwardAn…
ファイル名:MPP_ObjectFreePlacement.js
プラグインのヘルプ:
/*:ja
* @target MV MZ
* @plugindesc イベントを自由に設置できる機能を追加します。
* @author 木星ペンギン
* @url
*
* @help [version 2.0.0]
* このプラグインはRPGツクールMVおよびMZ用です。
*
* ▼ プラグインコマンド
* - MVでは数値を入力する項目で v[N] と記述することで変数N番を参照します。
* - MZでは数値を入力する項目で、テキストを選択して v[N] と記述することで
* 変数N番を参照します。
*
* 〇 MV / MZ
*
* 〇 AddPlacementObj objId objTag / オブジェクト設置
* objId : 設置するオブジェクトのID(イベントID)
* objTag : 設置するオブジェクトのタグ(任意の値 / 未設定:0)
* - プレイヤーの位置から向いている方向にオブジェクトを設置します。
* - 細かな設置位置や条件はイベント側に設定したものが適用されます。
* - タグは個別に削除を行う際に使用します。
*
* 〇 AddPlacementObjPos objId x y objTag / オブジェクト座標設置
* objId : 設置するオブジェクトのID(イベントID)
* x : X座標
* y : Y座標
* objTag : 設置するオブジェクトのタグ(任意の値 / 未設定:0)
* - 指定した座標にオブジェクト設置します。
* - 設置条件の設置距離は無視されます。
* - タグは個別に削除を行う際に使用します。
*
* 〇 ErasePlacementObj objTag / オブジェクト削除
* objTag : オブジェクトのタグ
* - 指定したタグのオブジェクトを全て削除します。
*
* 〇 ClearAllPlacementObj mapId / オブジェクト全消去
* mapId : マップID(-1:全マップ, 0:現マップ / 未設定:0)
* - 指定したマップの全オブジェクトを削除します。
*
* ▼ イベントのメモ
* 〇 <PlcCdt:n>
* - 設置するオブジェクトに[設置条件]をn番に設定します。
* - [設置条件]はプラグインパラメータで設定したものを指定します。
*
* ▼ スクリプト全般
* 〇 $gamePlayer.canPlcObj(objId)
* objId : オブジェクトID(イベントID)
* - プレイヤーが現在の位置から指定したIDのオブジェクトを設置できるかどうかを
* 返します。
*
* 〇 $gamePlayer.canPlcObjPos(objId, x, y)
* objId : オブジェクトID(イベントID)
* x : X座標
* y : Y座標
* - 指定した座標(x,y)に指定したIDのオブジェクトが設置できるかどうかを
* 返します。
*
* ▼ プラグインパラメータ
* 〇 オブジェクトマップID [Objects Map Id]
* - 指定したマップのイベントが自由設置のオブジェクトとなります。
* - イベントIDがそのままオブジェクトIDとなります。
*
* 〇 設置条件 - 通行判定
* - プレイヤーの位置から設置位置まで通行できる場合、設置できるように
* なります。
*
* 〇 設置条件 - 衝突判定
* - 設置位置に他のイベントが存在する場合、設置できなくなります。
*
* 〇 設置条件 - 地形タグ/リージョン
* - 設置位置が指定した地形タグもしくはリージョンIDのときのみ、
* 設置できるようになります。
* - 数値を配列で設定する際、n-m と表記することでnからmまでの数値を
* 指定できます。
* 例: 1-4,8 => 1から4と8
*
* ▼ その他
* - 設置したオブジェクトが[イベントの一時消去]を実行した場合、
* そのオブジェクトは削除されます。
* - イベントの画像にタイル画像を使う場合、設置したマップのタイル画像が
* 適用されます。
* - 他のプラグインで、イベントのメモや注釈を使った機能には対応しています。
* - ただし、他サイトさんのプラグインには対応できない可能性があります。
*
* ================================================================
* Mail : wood_penguin@yahoo.co.jp (@は半角)
* Blog : http://woodpenguin.blog.fc2.com/
* License : MIT license
*
* @command addObj
* @text オブジェクト設置
* @desc
* @arg objId
* @text オブジェクトID
* @desc 設置するイベントのID
* @type number
* @min 1
* @max 999999
* @default 1
* @arg objTag
* @text タグ
* @desc 任意の値
* 削除する際に使用します。
* @type number
* @min -999999
* @max 999999
* @default 0
*
* @command addObjPos
* @text オブジェクト座標設置
* @desc
* @arg objId
* @text オブジェクトID
* @desc 設置するイベントのID
* @type number
* @min 1
* @max 999
* @default 1
* @arg x
* @desc
* @type number
* @min 0
* @max 999999
* @default 0
* @arg y
* @desc
* @type number
* @min 0
* @max 999999
* @default 0
* @arg objTag
* @text タグ
* @desc 任意の値
* 削除する際に使用します。
* @type number
* @min -999999
* @max 999999
* @default 0
*
* @command eraseObj
* @text オブジェクト削除
* @desc
* @arg objTag
* @text タグ
* @desc
* @type number
* @min -999999
* @max 999999
* @default 0
*
* @command clearAllObj
* @text オブジェクト全消去
* @desc 指定したマップに配置してあるオブジェクトを全て削除
* @arg mapId
* @text マップID
* @desc -1:全てのマップ, 0:現在のマップ
* @type number
* @min -1
* @max 999999
* @default 0
*
*
* @param Objects Map Id
* @text オブジェクトマップID
* @desc オブジェクトとして読み込むマップのID
* @type number
* @min 1
* @max 999999
* @default 1
*
* @param Conditions
* @text 設置条件
* @type struct<Condition>[]
* @desc 設置条件の配列
* (上から順に番号 1,2,3... となります)
* @default [”{”Distance”:”1”,”Passable”:”true”,”Collide”:”true”,”Tags”:””,”Regions”:””}”]
*
* @param Clear By Transfer
* @text マップ移動で削除
* @desc マップ移動を行た際、オブジェクトを全削除
* @type boolean
* @default true
*
*/