DynamicAnimation&Motion サンプル技(事前計算)【RPGツクールMZプラグイン】

2025年03月15日

 このページはDynamicAnimationMZ、およびDynamicMotionMZプラグインの解説の一部です。

 スキルの結果計算を演出より先に実行するプラグインを活用したサンプルを紹介しています。そのため、該当のプラグインを導入しないと機能しません。

目次



突進(2025/03/15)


 命中の有無で挙動の変わる突進です。
 外れた場合は転びます。


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

// 敵の元へ移動(成功時)
<D-Motion:crash>
condition = BattleManager.isReservedSuccess(targetNo)
</D-Motion>

// 対象を振動(成功時)
<D-Motion:target&shake>
frame = 7
addX *= 5
condition = BattleManager.isReservedSuccess(targetNo)
</D-Motion>

// アニメーション(成功時)
<D-Animation>
condition = BattleManager.isReservedSuccess(targetNo)
</D-Animation>

// 敵のそばへ移動(失敗時)
<D-Motion:near>
condition = !BattleManager.isReservedSuccess(targetNo)
</D-Motion>

// コケる(失敗時)
<D-Motion:wait>
frame = 7
motion = dead
playSe = {"name":"Blow1","volume":90,"pitch":100,"pan":0}
condition = !BattleManager.isReservedSuccess(targetNo)
</D-Motion>

// 戻る(共通)
<D-Motion:return>
arcY = -200
frame = 10
damageAll = false // ダメージタイミングの調整
</D-Motion>

 『condition = BattleManager.isReservedSuccess(targetNo)』によって成功かどうかを判定します。『!』を先頭に付けるとその反対になります。

乱れうち(2025/03/15)


 攻撃が命中した場合のみ敵を振動させます。
 下の動画の場合は2撃目と4撃目のみ振動していることが分かると思います。


 ※分かりやすくするために振動を強調しています。
<D-Setting:NoStep> // 自動前進禁止

// 対象ごとに接近
<D-Motion:near&every>
frame = 4
nextDelay = 6 // 武器を振る間隔
wait = 4
</D-Motion>

// 武器振り
<D-Motion:attack&every>
nextDelay = 6 // 武器を振る間隔
motionFrame = 2/3
</D-Motion>

// 振動(成功時)
<D-Motion:target&shake>
frame = 5
addX *= 3
performerDelay = 6 // 武器を振る間隔
condition = BattleManager.isReservedSuccess(targetNo)
useConditionDelay = true

</D-Motion>

// タイミングを合わせてアニメーション表示
<D-Animation:damage&wait>
id = a.attackAnimationId1()
nextDelay = 6 // 武器を振る間隔
</D-Animation>

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

 『condition = BattleManager.isReservedSuccess(targetNo)』によって判定するのは突進と同じです。
 さらに『useConditionDelay』によってアニメーションとタイミングがズレないようにしています。この指定がない場合は振動だけが先に実行されてしまうので注意してください。

撃破演出(2025/03/17)


 とどめを刺した場合のみアニメーションを追加します。下の例ではとどめを刺した敵のみ炎を追加表示しています。


// 弓を引く
<D-Motion:attack>
repeat = 40
interval = 1/2
motionFrame = 1/2/3 // interval/3
</D-Motion>

// 矢連射
<D-Animation:arcRandomAll&lookCourse&wait>
repeat = 40
interval = 1/2
sx -= 10 * mirroring // 弓に位置を合わせる
sy += 10 // 弓に位置を合わせる
eyRandom = 130 // 終点Y座標ランダム幅
arrival = 12 // 到達フレーム
arcY = -500 // 放物線の高さ
</D-Animation>

// とどめ演出
<D-Animation>
delay = 12
id = 66
condition = b.isDeadReserved()
</D-Animation>

 『condition = b.isDeadReserved()』によって対象が撃破されたかどうかを判定しています。

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