DynamicAnimation&Motion サンプル技A【RPGツクールMZ&MVプラグイン】

2022年02月24日

 このページはDynamicAnimation(MZMV)および、DynamicMotion(MZMV)プラグインの解説の一部です。

 サンプル技を紹介していきます。少し複雑なものをいきます。
 コピペしてスキル(アイテム)のメモ欄に貼り付けできます。そのまま使うも改造するも自由です。

目次



爆裂脚


 ライダーキック的な挙動で敵に衝突します。


 アニメーションには『id=107(無属性/単体2)』を使っていますが、そこはお好みでどうぞ。
// 自動前進しない
<D-Setting:NoStep>

// 回転しながら浮上
<D-Motion:jump&roll&wait>
frame = 8
rotation *= 4
airY = -200 // 空中Y座標
ex = sx - 50 * mirroring
</D-Motion>

// 体を傾けて衝突
<D-Motion:crash>
frame = 3
rotation = (Math.PI * 2) / 6 // 360/6度
</D-Motion>

// 角度を戻す&しゃがむ
<D-Motion>
rotation = 0
motion = abnormal // 瀕死ポーズ
frame = 10
</D-Motion>

// アニメーション
<D-Animation/>

// 対象が吹っ飛ぶ
<D-Motion:jump&target>
ex = sx - 500 * mirroring
wait = 10
</D-Motion>

// 対象元の位置へ
<D-Motion:jump&home&target/>

// 戻る
<D-Motion:return/>


ズームアタック(2020/03/29)


 攻撃しながら徐々に対象へ向かってズーム処理をかけます。
 ※ズーム処理のテンプレート化に伴い記述を簡略化しました。(2020/03/29)


<D-Motion:near&zoomB/> // 対象にズーム
<D-Motion:attack/> // 武器振り
<D-Animation/> // アニメーション
<D-Motion:return&zoomOff/> // ズーム解除

 行動主体にズームしたい場合『zoomA』を使用してください。
 なお、これらの処理はズーム対象が移動していても自動で追尾します。

スライディング(2020/03/24)


 スライディングで敵をスピンさせます。


 スキルに設定するアニメーションの位置は『足元』にしてください。
 また砂煙用のアニメーションが別途必要です。下の例では『Earth1』のパターンを使っています。位置は『足元』。合成方法は『通常』に設定すると自然です。


// 90度回転して体を地面へ
<D-Motion:wait>
duration = 1
airY = a.height/3
rotation = (Math.PI * 2) / 4
</D-Motion>

// 砂煙のアニメーション
<D-Animation:self>
id = XXX // ←ここに砂煙用のIDを指定
repeat = 5
</D-Animation>

// 対象の左へ
<D-Motion:pierce>
frame = 5
wait = 4
ex = defaultX - 100 * mirroring
</D-Motion>

<D-Animation/> // アニメーション

// 敵がスピン
<D-Motion:target&roll&jump>
frame = 5
rotation *= 3
arcY = -100
</D-Motion>

// 角度と位置を戻す
<D-Motion:wait>
delay = 1
duration = 1
airY = 0
rotation = 0
</D-Motion>

// しゃがんで待つ
<D-Motion:wait>
motion = abnormal // 瀕死ポーズ
frame = 5
</D-Motion>

<D-Motion:return/> // 戻る


ウルトラジャンプ(2020/08/30修正)


 ランダムで敵を踏みつけます。
 例では範囲を『敵4体ランダム』にしていますが、『敵全体』などにしても問題なく機能します。


 スキルに設定するアニメーションを『頭上』に設定することで頭を狙います。
 例では『2:打撃/エフェクト』を頭上に変更したものを使用しています。
<D-Setting:NoStep> // 自動前進禁止

// 着地に合わせてアニメーション表示
<D-Animation:damage>
delay = 7 // 最初の着地までのフレーム
nextDelay = 7 // 滞空時間に間隔を合わせる

</D-Animation>

// 対象ごとにジャンプで踏む
<D-Motion:crash&jump&every>
ey += b.height/8 // 少し下を狙う
arcY = -200
motion = victory // 勝利ポーズ
frame = 7 // 移動(滞空)時間
nextDelay = 7 // 7フレーム間隔

playSe = Jump1 // ジャンプの効果音
wait = auto
</D-Motion>

// 戻る
<D-Motion:return>
arcY = -200
damageAll = false // ダメージ表示は個別に任せる
</D-Motion>

 これを応用すれば、順番に体当りしていく技なども作成できます。
 タイミング調整が少し難しいので注意です。赤字部分に気をつけてください。

払い抜け(2020/03/31)


 対象とすれ違いながら、斬撃を放ちます。
 対象との角度によって斬撃の角度も変化します。


 以下のように左向きの斬撃を作ります。
 「6:斬撃/物理」を一括設定で45度回転させるなどすれば可能です。


<D-Setting:NoStep> // 自動前進禁止

// 対象の向こうまで移動
// X座標だけ指定すれば、Y座標も自動計算
<D-Motion:pierce&attack>
frame = 5
ex = defaultX - 150 * mirroring // 対象の左150pxまで移動
</D-Motion>

// 対象との位置関係でアニメーション角度変更
<D-Animation>
delay = 2
wait = auto
rotation = da.startRotation(Math.atan2(a.y - a.height/2 - defaultY, a.x - defaultX))
</D-Animation>

<D-Motion:return/> // 戻る

 赤字部分で、色々と細かい細工をしています。

  • da.startRotation()は開始時点の角度を保持する作者の独自関数です。
  • Math.atan2()は行動主体(a)と対象(defaultX, Y)の角度を求めます。
    こちらはJavaScriptの標準機能です。

 ※若干、意味不明かもしれませんが、コピペで大丈夫なのであまり気にしないでください。

疾風剣(2020/04/03)


 対象とすれ違いながら切り刻みます。
 角度を変えながらランダムで斬撃を再生しています。
 スキルに設定したアニメーションは「6:斬撃/物理」の色調を変えたものです。


<D-Setting:NoStep> // 自動前進禁止

// 対象とすれ違いながら武器振り
<D-Motion:pierce&attack>
frame = 5
ex = defaultX - 150 * mirroring
</D-Motion>

// 武器の止めポーズ
<D-Motion:attack2>
delay = 2
</D-Motion>

// 角度を変えながら斬撃リピート
<D-Animation>
delay = 3
repeat = 10
rotation = (Math.PI * 2) * da.random()
</D-Animation>

<D-Motion:return/> // 戻る

 基本的には『払い抜け』の流用です。
 『rotation(回転角度)』をランダムに変化させることで、様々な角度から斬撃を繰り出すようにしています。
 『Math.PI * 2』は360度の意味、『da.random()』は0〜1未満の値を取る関数です。つまり、0〜359度という意味ですね。

練気拳(単)(2020/04/06)


 敵を引きつけながら殴ります。
 スキルには単なる打撃アニメを設定しています。
 さらに吸引用のアニメが必要です。例では『102:闇/単体2』を元に、合成方法を一括設定で『加算』に変更しています。


// 自身に吸引アニメを表示
<D-Animation>
id = 102 // ←ここに吸引アニメのIDを指定
sx = a.x
sy = a.y - a.height/2
</D-Animation>

// 対象を引き寄せる
<D-Motion:target&wait>
frame = 5 // 引き寄せ時間
ex = subject.x - (subject.width/2 + a.width/2) * mirroring
ey = subject.y - subject.height/2 + a.height/2

</D-Motion>

// 殴るアニメとモーション
<D-Animation:follow/>
<D-Motion:thrust/>

// 対象をhomeへ戻す
<D-Motion:target&home>
delay = 1 // 殴り初めから吹っ飛ぶまでの時間差
frame = 2 // 吹っ飛び時間
</D-Motion>

 『subject』は常にスキルの行動主体を意味します。まぎらわしいですがモーション対象を変更した場合、『a』はモーション対象者となります。

練気拳(全)(2020/04/06)


 練気拳と言えば、そもそも全体技です。もちろんちゃんと用意しています。
 ※元ネタはロマサガ3です。


// 自身に吸引アニメを表示
<D-Animation>
id = 102 // ←ここに吸引アニメのIDを指定
nextDelay = 4
sx = a.x
sy = a.y - a.height/2
</D-Animation>

// 対象を引き寄せる
<D-Motion:target>
frame = 5
performerDelay = 4
ex = subject.x - (subject.width/2 + a.width/2) * mirroring
ey = subject.y - subject.height/2 + a.height/2
</D-Motion>

// 殴るアニメ(対象を追尾)
<D-Animation:follow>
delay = 5
nextDelay = 4
</D-Animation>

// 殴るモーション(対象毎)
<D-Motion:thrust&every>
delay = 5
nextDelay = 4
motionFrame = 1
</D-Motion>

// 対象をhomeへ戻す
<D-Motion:target&home>
delay = 6
frame = 2
performerDelay = 4
</D-Motion>

 ポイントは『performerDelay』と『nextDelay』の値を一致させることです。これが対象一体毎の処理に対する時間差となります。
 ちょっとややこしいですが『performerDelay』はモーション対象が複数いる場合の時間差です。
 『nextDelay』は「対象毎にアニメーションを表示する時間差」および「対象毎に行動主体がモーションを実行する時間差」です。

分身剣(2022/04/14更新)


 ※DynamicMotion ver1.03以降が必要です。
 分身しながら切り刻みます。


<D-Setting:NoStep>
<D-Motion:near/>

// 右から攻撃アニメ
<D-Animation:random>
repeat = 8
interval = 2
</D-Animation>

// 左から攻撃アニメ
<D-Animation:random>
repeat = 8
delay = 1 // 1フレームずらす
interval = 2
rotation = -Math.PI/2 // 90度回転
</D-Animation>

// 左右に分身しながら武器振り
<D-Motion:attack&wait>
repeat = 6
addX = (t % 4 < 2) ? -(b.width + a.width) : 0
scaleX = (t % 4 < 2) ? -1 : 1 // 左右反転

motionFrame = 1
frame = 3
</D-Motion>

<D-Motion:return/>

 赤字部分で2/60秒毎に瞬間的に位置を変えています。
 『scaleX』はバトラーの横幅を意味する値ですが、値を『-1』にすると左右反転になります。反転は『mirror = true』でも可能ですが、リアルタイムで変更したい場合は『scaleX』が使えます。

変身(2020/11/15更新)


 バトラーの画像を変更します。
 文字通りの変身技にも使えますが、それ以外にもモーションパターンの追加などへ利用可能です。
 また、敵も同じ要領で画像を変えられます。


// グラフィックを変更して接近
<D-Motion:near>
image = Actor1_1
</D-Motion>

<D-Motion:attack/>
<D-Animation/>

// グラフィックを戻して元の位置へ
<D-Motion:return>
image = ""
</D-Motion>

 『image = Actor1_1』というように指定した画像へとキャラを変更します。
 戻す時は『image = ""』というように空白文字を入力すればOKです。

 以下のように数式を記述すれば、可変にもできます。
image = "Test" + a.actorId() + "_2"

 例えば、アクターIDが4ならば『Test4_2』に変更されます。

 ちなみに、この画像変更は戦闘中のみの一時的な効果となります。

奥義演出(対象以外消去) DynamicMotion ver1.171(2021/01/20)


 行動主体と対象以外を消去して奥義っぽい演出を行います。
 ※DynamicMotion(およびMZ版)を2021/01/20以降のバージョンに更新する必要があります。


// 自動前進禁止
<D-Setting:NoStep>

// 行動主体と対象以外を透明化
<D-Motion:invisible>
condition = a != subject && a != b
performer = $gameParty.battleMembers().concat($gameTroop.aliveMembers())
</D-Motion>


// 接近
<D-Motion:near/>

// 武器振り
<D-Motion:attack>
repeat = 3
</D-Motion>

// アニメーション&ウェイト
<D-Animation:random&wait>
repeat = 20
</D-Animation>

// 戻る
<D-Motion:return/>

// 透明化解除
<D-Motion:visible>
condition = a != subject && a != b
performer = $gameParty.battleMembers().concat($gameTroop.aliveMembers())
</D-Motion>

 重要なのは赤字部分です。ここで透明化の制御を行います。
 間の部分は好きなように変更してください。ただし、アニメーションにはwaitも必要なことに注意です。これがないとアニメーションの終了を待たず、透明化が解除されてしまいます。

 また、暗転演出は上の記述に含まれていません。必要なら以下をご覧ください。
 http://newrpg.seesaa.net/article/475496918.html#darkness

詳細

performer = $gameParty.battleMembers().concat($gameTroop.aliveMembers())

 によって、『全アクター』と『生存している敵』を透明化の対象としています。
 なぜ、敵だけ生存者に絞っているかというと、そうしないと死んだ敵の表示まで透明化の解除時に復活してしまうからです。
 それに加えて
condition = a != subject && a != b

 によって、スキルの使用者と対象を透明化の対象から除外しています。

分身剣(残像版)(2022/04/14更新)


 残像を引き連れながら敵の周囲を回り、斬撃を繰り返します。
 残像プラグインの機能を使っているため、導入されていることが前提です。
 スキルに設定するアニメーションは普通の斬撃でよいと思います。他にも『通常攻撃』にしておくと武器によってアニメーションが変わるので面白いです。

 ※モーション設定プラグインの旧バージョンが入っているとうまく動作しない模様なので、導入している場合は要更新です。
 ※DynamicMotionが2021/09/11以降のバージョン(sx, syの指定に対応)である必要があります。



<D-Setting:NoStep>

// 対象の中心より半径分右へ移動
<D-Motion:crash>
frame = 3
ex = b.x + (15 + b.width/2) * mirroring
script = a.afterimage().start();
</D-Motion>

// ランダムな角度で斬撃
<D-Animation>
repeat = 16
rotation = (Math.PI * 2) * da.random()
</D-Animation>

// 武器を振る
<D-Motion:attack>
repeat = 5
interval = 3
motionFrame = 1
</D-Motion>

// 対象を中心に円運動
<D-Motion:revolve&wait>
frame = 20
sx = b.x
radiusX = (15 + b.width/2) // X半径
radiusY = (15 + b.width/2) / 2 // Y半径
radX *= 3 // X方向に3周
radY *= 3 // Y方向に3周
z = a.y + (b.height - a.height)/2 > b.y ? b.z+1 : b.z-1
scaleX = (a.y + (b.height - a.height)/2 > b.y ? 1 : -1) * mirroring

</D-Motion>

// 半径分右から開始して元の位置へ
<D-Motion:return>
sx = b.x + (15 + b.width/2) * mirroring
z = 3
script = a.afterimage().end();
</D-Motion>

 残像機能については残像プラグイン自体の説明をご覧ください。
 基本的にはrevolve型を利用して敵の周囲を回らせています。

 『15 + b.width/2』の部分が円運動の半径です。『15 + 対象の横幅÷2』の意味となります。
 性質上、対象の横幅が小さすぎると円周が小さすぎてショボくなる難点があります。こだわるなら最小値を保証する数式にするといいかもしれません。
 例:『Math.max(50, 15 + b.width/2)』。

 最も難解なのは『z = a.y + (b.height - a.height)/2 > b.y ? b.z+1 : b.z-1』『scaleX = (a.y + (b.height - a.height)/2 > b.y ? 1 : -1) * mirroring』といった赤字部分の数式だと思います。

 前者は敵との位置関係によって、アクターを前面に表示するか背面に表示するかを調整するためのものです。Y座標(画像縦幅も考慮)を比較し、アクターが下側にいる時は前面、上側にいる時は背面に表示させています。
 後者もY座標を比較しているのは同じですが、こちらはアクターを左右反転させるために使っています。同じくアクターが下側にいる時は左向き、上側にいる時は左右反転させて右向きに表示させています。
 これはscaleXの値を-1にすると、バトラーが左右反転する性質を利用しています。さらに敵側が使った場合は左右反転(mirroring)されるよう考慮しています。

 >DynamicAnimationMZプラグインに戻る
 >DynamicAnimationプラグインに戻る
 >DynamicMotionMZプラグインに戻る
 >DynamicMotionプラグインに戻る
 >RPGツクールMZ&MV目次に戻る
posted by 砂川赳 at 18:57 | RPGツクールMZ&MV | このブログの読者になる | 更新情報をチェックする

各種モーションの設定【RPGツクールMV&MZプラグイン】

 サイドビュー戦闘における各種モーションの設定を行うプラグインです。


 特徴は以下の通りです。

  • 各モーションの再生速度を変更可能。
  • 各状態でのモーションを変更可能。
  • ついでに前進・後退時間も変更可能。

 例えば、以下のような用途に使えます。

  • 歩行モーションを歩行専用として分離する。
    ※デフォルトでは、コマンド確定前の状態にも使用されています。
  • 不要なモーションを統合して、新しいモーションを追加する。
    例えば『魔法&スキル&アイテム』『瀕死&睡眠&状態異常』を統合など。
  • 武器振りモーションの速度をアニメーションに合わせる。
  • DynamicMotionによるアクション中のデフォルトポーズを変更。
    ※通常は歩行(足踏み)になっています。
  • 前進・後退時間を早めて戦闘テンポ高速化。

目次


導入方法

更新履歴

プラグインパラメータ(各種モーション時間)

プラグインパラメータ(移動時間)

プラグインパラメータ(標準モーション)


導入方法


 以下のファイルをダウンロードし 、[プロジェクト]\js\plugins に放り込みます。ツクールのプラグイン管理から機能をONにしてください。
 ※このプラグインはMV、MZの両方で有効です。

 NRP_MotionSetting.js ver1.02(2022/02/24)

 ※NRP_DynamicMotion.jsと共用する場合はこちらを上に配置してください。それ以外でも配置は比較的上部をオススメします。
 配置が下の場合、BattlerGraphicExtend.js(トリアコンタン様)のモーション速度変更と競合することを確認しています。


更新履歴


2022/02/24(ver1.02)

  • 移動中はモーション変更しない処理を削除。
    ※そもそも、何のために入れていたのか忘れましたが、DynamicMotionが一部想定外の動作をするため修正します。

2020/08/22 -> 10/29(ver1.01 -> 1.012)

  • ツクールMZ向けにヘルプを修正。
  • 不要な競合を避けるため『モーション時間の初期値』の初期値を空白に変更。(09/21 ver1.011)
  • MZ用に配置順序を指定。(内容変更なし)(10/29 ver1.012)

2020/06/11(ver1.00)

  • 公開開始!
    ※当プラグインはモーション時間の変更プラグイン(NRP_MotionTime)にモーション変更機能を追加して、一新したものです。

注意点


 NRP_CountTimeBattleと併用する場合はあちらをver1.071〜に更新してください。それ以前のバージョンでは『入力時のモーション』設定が有効になりません。
 ちなみに性質上、CTBには待機(行動確定後)状態はありません。

プラグインパラメータ(各種モーション時間)


モーション時間の初期値(defaultTime)

 指定がない場合に適用される時間の初期値です。
 各モーション項目をブランクにすると、この値が適用されます。
 空白だと初期値の12になります。

前進(コマンド待ち)(walk)

 前進時のモーション時間です。
 ※MVのヘルプでは『前進』となっていますが、実際にはコマンド待ちや後退時もこのモーションです。

通常待機(wait)

 通常待機時のモーション時間です。
 正確にはコマンド入力後の待機状態を指します。

詠唱待機(chant)

防御(guard)

ダメージ(damage)

回避(evade)

突き(thrust)

振り(swing)

飛び道具(missile)

汎用スキル(skill)

魔法(spell)

アイテム(item)

逃げる(escape)

勝利(victory)

瀕死(dying)

状態異常(abnormal)

睡眠(sleep)

戦闘不能(dead)

 各種モーションの時間です。
 大体そのまんまなので、詳細は割愛します。

プラグインパラメータ(移動時間)


前進時間(stepForward)

 行動時に一歩前へ出る際の所要時間です。
 MVの初期値は12です。8ぐらいにしておくとオススメ。

後退時間(stepBack)

 行動終了時に後ろへ戻る際の所要時間です。
 MVの初期値は12です。8ぐらいにしておくとオススメ。

プラグインパラメータ(標準モーション)


入力時のモーション(inputtingMotion)

 コマンド入力時のモーション名です。
 初期値は前進(walk)です。

アクション中のモーション(actingMotion)

 アクション中のモーション名です。
 初期値は前進(walk)です。

 DynamicMotionなどのアクション中も、命令がなければこの状態になります。

行動確定前のモーション(undecidedMotion)

 行動確定前のモーション名です。
 初期値は前進(walk)です。

待機のモーション(waitMotion)

 待機(行動確定後)のモーション名です。
 初期値は待機(wait)です。

詠唱待機のモーション(chantMotion)

防御のモーション(guardMotion)

ダメージのモーション(damageMotion)

回避のモーション(evadeMotion)

汎用スキルのモーション(skillMotion)

魔法のモーション(spellMotion)

アイテムのモーション(itemMotion)

逃げるのモーション(escapeMotion)

勝利のモーション(victoryMotion)

瀕死のモーション(dyingMotion)

状態異常のモーション(abnormalMotion)

睡眠のモーション(sleepMotion)

戦闘不能のモーション(deadMotion)

 各種状態でのモーション名です。
 大体そのまんまなので、詳細は割愛します。

 >RPGツクールMZ&MV目次に戻る
posted by 砂川赳 at 11:34 | RPGツクールMZ&MV | このブログの読者になる | 更新情報をチェックする

戦闘時、選択中の対象にカーソルを表示【RPGツクールMZ&MVプラグイン】

2022年02月12日

 戦闘時、選択中の対象にカーソルを表示します。
 それに伴い、様々な調整が可能です。


 特にサイドビューにおいて、リスト上の敵名と実際の敵の並び順が一致しない問題を軽減します。
 敵グループの配置を自動化&ランダム化するプラグインとも相性が良いです。

 初期値ではサイドビューを想定していますが、設定を調整すれば、フロントビューでも使えます。

 方向キーを押した時に対象の位置関係を参照して、カーソルの遷移先を判定するような高度な機能はありません。
 キーを押すと単純に前後のIDの対象に移るだけです。

目次


導入方法(Install)

更新履歴(History)

使用方法(Usage)

プラグインパラメータ(敵)

敵名リストを非表示(HideEnemyNameList)

敵の上下切替(SwitchEnemyUpDown)

敵の左右切替(SwitchEnemyLeftRight)

敵カーソルの画像(EnemyTargetCursor)

敵のカーソル基準点(EnemyCursorPosition)

敵のカーソル調整X(EnemyCursorAdjustX)

敵のカーソル調整Y(EnemyCursorAdjustY)

選択中の敵名を表示(ShowTargetEnemyName)

敵名ウィンドウの縦幅(EnemyNameWindowHeight)

敵名ウィンドウの不透明度(EnemyNameWindowOpacity)

敵名ウィンドウの調整X(EnemyNameWindowAdjustX)

敵名ウィンドウの調整Y(EnemyNameWindowAdjustY)

敵名フォントサイズ(EnemyNameFontSize)

敵名テキストの調整Y(EnemyNameTextAdjustY)


プラグインパラメータ(アクター)

アクターの上下切替(SwitchActorUpDown)

アクターの左右切替(SwitchActorLeftRight)

アクターカーソルの画像(ActorTargetCursor)

アクターカーソル基準点(ActorCursorPosition)

アクターカーソル調整X(ActorCursorAdjustX)

アクターカーソル調整Y(ActorCursorAdjustY)

選択中のアクター名を表示(ShowTargetActorName)

アクター名ウィンドウの縦幅(ActorNameWindowHeight)

アクター名ウィンドウ不透明度(ActorNameWindowOpacity)

アクター名ウィンドウの調整X(ActorNameWindowAdjustX)

アクター名ウィンドウの調整Y(ActorNameWindowAdjustY)

アクター名フォントサイズ(ActorNameFontSize)

アクター名テキストの調整Y(ActorNameTextAdjustY)


プラグインパラメータ(共通)

左の限界X座標(LeftLimitX)

右の限界X座標(RightLimitX)

上の限界Y座標(UpLimitY)

下の限界Y座標(DownLimitY)

カーソル位置を常時更新(UpdateCursorPosition) ver1.01


導入方法(install)


 以下のファイルを右クリックで保存し 、[プロジェクト]\js\plugins に放り込みます。ツクールのプラグイン管理から機能をONにしてください。
 ※このプラグインはMV、MZの両方で有効です。

 NRP_BattleTargetCursor.js ver1.04(2022/02/12)

更新履歴(History)


2022/02/12(ver1.04)

  • ver1.033にて『カーソル位置を常時更新』がオンの場合、行動の決定・キャンセル時にカーソルが残ったままになる不具合を修正。

2021/08/13 -> 2022/02/01(ver1.03 -> 1.033)

  • マウスでの対象選択ができない不具合修正。
  • NRP_PartyAttack.js(ver1.01)の全体選択に対応。
  • 『選択中の敵名を表示』『選択中のアクター名を表示』がオフの場合、カーソルが表示されなくなる不具合修正。(09/06 ver1.031)
  • MVにて一部のスキルがエラーになる不具合修正。(09/29 ver1.032)
  • 『選択中の敵名を表示』がオフの場合、『カーソル位置を常時更新』が機能しない不具合修正。(2022/02/01 ver1.033)

2021/08/05(ver1.02)

  • MVでカーソル画像を設定するとエラーになる不具合修正。
  • スキルの効果範囲を拡張するプラグインと併用した場合、カーソルが正しく表示されない不具合修正。
    ※リンク先のプラグインも不具合修正していますのでご確認ください。

2021/07/14(ver1.01)

  • プラグインパラメータに『カーソル位置を常時更新』を追加。
    オンにすると、MPP_Pseudo3DBattle.jsのようなリアルタイムでバトラーの位置が変動する戦闘システムにも対応できるようになります。

2021/07/08(ver1.00)

  • 公開!

使用方法(Usage)


 プラグインを導入するだけで挙動が変わります。
 ただし、カーソル画像は初期状態では設定されていませんので、対象の名前表示だけが行われます。

 手軽にカーソル画像が欲しいという方のために、サンプルを作りました。
 ※MVMZの武器画像から加工して適当に作ったものです。
  MVMZで兼用の画像なので、いずれかのユーザなら問題なく利用できます。



 右クリックで好きな名前で保存し、pictureフォルダに放り込んでください。
 『敵カーソルの画像』のプラグインパラメータに設定すればOKです。

 後はその他のプラグインパラメータを好きなように調整してください。

 なお、アクター側のパラメータの大半は空白でも構いません。
 その場合は、自動的に敵側のパラメータが参照されます。
 ※カーソル画像およびX座標の調整分は左右反転されます。

プラグインパラメータ(敵)


敵名リストを非表示(HideEnemyNameList)

 デフォルトの敵名リストを非表示にします。
 初期値はオンです。

 オフにすると、ツクールの標準の動作に近くなります。
 下の『敵の上下切替』『敵の左右切替』が無効化され、敵名リストの判定が優先されるようになります。

敵の上下切替(SwitchEnemyUpDown)

 敵の選択を上下で切替できるようにします。

敵の左右切替(SwitchEnemyLeftRight)

 敵の選択を左右で切替できるようにします。

敵カーソルの画像(EnemyTargetCursor)

 敵を対象にした際のカーソル画像を指定します。
 画像はピクチャーフォルダに配置してください。

敵のカーソル基準点(EnemyCursorPosition)

 敵を対象にした際のカーソル画像の上下の基準点です。
 敵名ウィンドウもこれを基準にします。

敵のカーソル調整X(EnemyCursorAdjustX)

 敵を対象にした際のカーソル画像のX座標を調整します。

敵のカーソル調整Y(EnemyCursorAdjustY)

 敵を対象にした際のカーソル画像のY座標を調整します。

選択中の敵名を表示(ShowTargetEnemyName)

 選択中の敵の名前を表示します。

敵名ウィンドウの縦幅(EnemyNameWindowHeight)

 敵名ウィンドウの縦幅です。初期値は72です。

敵名ウィンドウの不透明度(EnemyNameWindowOpacity)

 敵名ウィンドウの不透明度(0~255)です。

敵名ウィンドウの調整X(EnemyNameWindowAdjustX)

 敵名ウィンドウのX座標を調整します。

敵名ウィンドウの調整Y(EnemyNameWindowAdjustY)

 敵名ウィンドウのY座標を調整します。

敵名フォントサイズ(EnemyNameFontSize)

 敵名のフォントサイズです。
 空欄ならシステム2の設定値を使用します。

敵名テキストの調整Y(EnemyNameTextAdjustY)

 敵名ウィンドウに表示されるテキストのY座標を調整します。

プラグインパラメータ(アクター)


アクターの上下切替(SwitchActorUpDown)

 アクターの選択を上下で切替できるようにします。

アクターの左右切替(SwitchActorLeftRight)

 アクターの選択を左右で切替できるようにします。
 こちらはMZの標準動作です。

アクターカーソルの画像(ActorTargetCursor)

 アクターを対象にした際のカーソル画像を指定します。
 空欄なら敵のものを左右反転します。

アクターカーソル基準点(ActorCursorPosition)

 アクターを対象にした際のカーソル画像の上下の基準点です。
 空欄なら敵と同じ値を使用します。

アクターカーソル調整X(ActorCursorAdjustX)

 アクターを対象にした際のカーソル画像のX座標を調整します。
 空欄なら敵の値を左右反転して使用します。

アクターカーソル調整Y(ActorCursorAdjustY)

 アクターを対象にした際のカーソル画像のY座標を調整します。
 空欄なら敵と同じ値を使用します。

選択中のアクター名を表示(ShowTargetActorName)

 選択中のアクターの名前を表示します。
 空欄なら敵と同じ値を使用します。

アクター名ウィンドウの縦幅(ActorNameWindowHeight)

 アクター名ウィンドウの縦幅です。
 空欄なら敵と同じ値を使用します。

アクター名ウィンドウ不透明度(ActorNameWindowOpacity)

 アクター名ウィンドウの不透明度(0~255)です。
 空欄なら敵と同じ値を使用します。

アクター名ウィンドウの調整X(ActorNameWindowAdjustX)

 アクター名ウィンドウのX座標を調整します。
 空欄なら敵の値を左右反転して使用します。

アクター名ウィンドウの調整Y(ActorNameWindowAdjustY)

 アクター名ウィンドウのY座標を調整します。
 空欄なら敵と同じ値を使用します。

アクター名フォントサイズ(ActorNameFontSize)

 アクター名のフォントサイズです。
 空欄なら敵と同じ値を使用します。

アクター名テキストの調整Y(ActorNameTextAdjustY)

 アクター名ウィンドウに表示されるテキストのY座標を調整します。
 空欄なら敵と同じ値を使用します。

プラグインパラメータ(共通)


左の限界X座標(LeftLimitX)

 カーソル表示の左限界となるX座標です。
 初期値は画面左端(0)

 カーソルや敵名ウィンドウが画面外にはみ出した際に、調整するための項目です。

右の限界X座標(RightLimitX)

 カーソル表示の右限界となるX座標です。
 初期値は画面右端(Graphics.width)

上の限界Y座標(UpLimitY)

 カーソル表示の上限界となるY座標です。
 初期値は画面上端(0)

下の限界Y座標(DownLimitY)

 カーソル表示の下限界となるY座標です。
 初期値は画面下端(Graphics.height)

カーソル位置を常時更新(UpdateCursorPosition) ver1.01

 カーソル位置を毎フレーム更新します。
 MPP_Pseudo3DBattle.jsのようなリアルタイムでバトラーの位置が変動する戦闘システムとの併用にどうぞ。

 わずかに負荷がかかるため、デフォルトではオフになっています。

 >RPGツクールMZ&MV目次に戻る
posted by 砂川赳 at 20:43 | RPGツクールMZ&MV | このブログの読者になる | 更新情報をチェックする