当プラグインの基本的な使用法を紹介していきます。
そのままコピペもできるのでご活用ください。
目次
- モーション(motion)
- 接近(near)
- 移動時間を指定(duration)
- 移動時間を指定(frame)
- 移動先を指定(ex, ey)
- 帰還(return)
- 前進しない(NoStep)
- ジャンプ(jump)
- 繰り返し(repeat, interval)
- モーション時間(motionDuration)
- モーション時間(motionFrame)
使用法
モーション(motion)
モーションを実行します。
どのようなモーションがあるかはプラグインパラメータ一覧を参照してください。
例として、スキル(またはアイテム)のメモ欄へ以下を記述します。
※末尾の『/』の有無に注意してください。
<D-Motion>
motion = thrust // 突き
</D-Motion>
<D-Animation/> // アニメーション
『突き(thrust)』の動作と同時に、スキルに設定したアニメーションを再生しています。
<D-Animation/>についてはDynamicAnimationプラグインの説明を参照してください。
アニメーションの指定は省略可能です。動作終了後、スキルに設定されたアニメーションが自動で再生されます。細かい調整が不要ならこれでも構いません。
また、テンプレートを呼び出せば、以下のように省略できます。
<D-Motion:thrust/> // 突き
<D-Animation/> // アニメーション
内容は全く同じです。テンプレートの内容はプラグインパラメータから自由に変更・追加できます。
※有効なのはテンプレートに登録されているものだけです。全てのモーションが同じように呼び出せるわけではありません。
接近(near)
以下のようにテンプレートを呼び出せば、対象に近づきます。
<D-Motion:near/> // 対象へ接近
<D-Motion:attack/> // 武器振り
<D-Animation/> // アニメーション
<D-Motion:attack/>は上の『モーション』と同じ要領で使えます。装備中の武器で攻撃する動作を実行します。
このように処理は記述した順番で実行されます。
また、移動先は設定されたアニメーションの『位置』に依存します。『頭上』『中心』『足元』『画面』、それぞれの設定に応じた位置へ移動します。(画面は敵陣の中央へ向かいます。)
移動時間を指定(duration)
初期設定では敵への接近は12/60秒で行うようになっています。スキルごとにこの値を変えたい場合、以下のようにテンプレートへ記述を追加します。
<D-Motion:near> // 対象へ接近
duration = 6 // 6/60秒で移動
</D-Motion>
<D-Motion:attack/> // 武器振り
<D-Animation/> // アニメーション
倍速になりました。
移動時間を指定(frame)
移動時間の指定方法はもう1つあります。
<D-Motion:near> // 対象へ接近
frame = 2 // 2フレームで移動
</D-Motion>
<D-Motion:attack/> // 武器振り
<D-Animation/> // アニメーション
frameを指定すれば、アニメーションのフレーム単位で時間指定できます。通常1フレームは4/60秒です。
アニメーションとタイミングを合わせたい場合はこちらが便利です。
ちなみに小数や分数も使用できます。
移動先を指定(ex, ey)
テンプレートを使わず、移動先を自由に指定することも可能です。
<D-Motion>
ex = a.x + 300 * mirroring // 終点X座標 = 現在地 + 300
wait = auto // 動作終了を待つ
</D-Motion>
<D-Motion:near/> // 対象へ接近
<D-Motion:attack/> // 武器振り
<D-Animation/> // アニメーション
一旦、後ろへ下がって助走のような動作を取るようにしました。
既にDynamicAnimationの説明を読んだ方にとっては、既出の情報ですが……。
- 『a.x』は行動主体のX座標です。『a.y』ならY座標になります。
- 『wait = auto』は動作終了を待つ命令です。
これがないと次の移動動作に上書きされてしまうので注意です。『接近(near)』などのテンプレートは最初からこの設定が入っています。
- 『mirroring(詳細)』は対象が味方なら値が『-1』になる変数です。
つまり、敵が味方へ攻撃する場合は左方向に助走します。
対象を基準に座標を指定する場合は、以下のように記述します。
<D-Motion:near> // 対象へ接近
ey = defaultY + 100 // 終点Y座標 = 対象 + 100
</D-Motion>
<D-Motion:attack/> // 武器振り
<D-Animation/> // アニメーション
やや下のほうに移動して攻撃しています。
なお、X座標は『接近(near)』の場合と変わらないため、そのまま流用しています。
『defaultX』『defaultY』には、アニメーションの位置設定(頭上、中心、足元、画面)を考慮した対象(b)の座標が入っています。
- 頭上:defaultX = b.x, defaultY = b.y - b.height
- 中央:defaultX = b.x, defaultY = b.y - b.height / 2
- 足元:defaultX = b.x, defaultY = b.y
- 画面:defaultX, defaultY共にプラグインパラメータの設定値
詳細は上記の通りです。
いちいち『b.y - b.height / 2』とか入力するのも面倒なので、こちらを使っていくと便利です。
帰還(return)
さらに元の位置へ戻る処理もきちんと入れましょう。
<D-Motion:near/> // 対象へ接近
<D-Motion:attack/> // 武器振り
<D-Animation/> // アニメーション
<D-Motion:return/> // 戻る
なお、この指定がなくとも、アクターは元の位置へ自動的に戻ります。これはツクールMVの仕様によるものです。
ただし、スキルの使用者が敵の場合は自動的に戻りません。基本的には、きちんと指定しておくことをオススメします。
前進しない(NoStep)
細かいことですが、上のダッシュ斬りでは一歩前進してから、敵への接近を開始しています。
最初の一歩前進が不要な場合、以下のように記述を追加します。
<D-Setting:NoStep> // 前進しない
<D-Motion:near/> // 対象へ接近
<D-Motion:attack/> // 武器振り
<D-Animation/> // アニメーション
<D-Motion:return/> // 戻る
これでまっすぐに敵へ駆け寄るようになりました。
いちいち記述するのが面倒ならば、プラグインパラメータで常に一歩前進しない設定にもできます。
その場合も<D-Motion:stepForward/>と記述すれば前進します。
敵に接近して放つタイプのスキルは、これが基本形になります。コピペして使っていくと便利です。
ジャンプ(jump)
次はジャンプしてみましょう。
<D-Motion:jump/>
と、だけ書くとその場でジャンプします。
……が基本的に、このテンプレートは他と組み合わせて使います。
テンプレート同士を『&』で接続すれば、機能を同時実行できます。
<D-Setting:NoStep> // 前進しない
<D-Motion:near&jump/> // 対象へジャンプして接近
<D-Motion:attack/> // 武器振り
<D-Animation/> // アニメーション
<D-Motion:return/> // 戻る
見事、ジャンプ斬りになりました。
ちなみに『<D-Motion:near & jump/>』というように空白を入れても大丈夫です。見やすいようにしてください。
なお、ジャンプの高さはarcYで変更可能です。初期値は-100なので5倍にしてみました。
※ツクールMVの仕様により、マイナスが上になります。
<D-Setting:NoStep> // 前進しない
<D-Motion:near&jump> // 対象へジャンプして接近
arcY = -500 // 高度500ピクセル
duration = 30 // 30/60秒で移動
</D-Motion>
<D-Motion:attack/> // 武器振り
<D-Animation/> // アニメーション
<D-Motion:return/> // 戻る
ジャンプの移動(滞空)時間も『duration』や『frame』で変更できます。初期値だと速すぎたので長くしてみました。
いちいち着地してから武器を振るのが微妙……という場合は以下のようにも書けます。
<D-Setting:NoStep> // 前進しない
<D-Motion:near&jump&attack/> // 対象へジャンプ&接近&武器振り
<D-Animation/> // アニメーション
<D-Motion:return/> // 戻る
こっちのほうがスピーディですね。
本当はもっと細かくタイミング調整できますが、基本編なのでこんなところで。
繰り返し(repeat, interval)
『repeat』を指定すれば、動作の繰り返しが可能です。
『interval』で間隔を指定します。
<D-Animation:randomAll/> // アニメーションの大量生成
<D-Motion:attack> // 武器振り
repeat = 5 // 5回繰り返す
interval = 5 // 繰り返し間隔
</D-Motion>
intervalで指定した繰り返し間隔は、アニメーションフレーム基準の長さとなります。
モーションの途中であっても、中断して次のモーションに入ります。
intervalの指定がない場合、繰り返し間隔は自動で移動またはモーションの長さに合わせます。
両方を指定した場合は、長いほうを優先して採用します。
ただし、歩行などのループモーションは対象外です。
モーション時間(motionDuration)
モーションの長さを調整し、短縮します。こちらは1/60秒単位です。
intervalは省略し、モーションの長さに任せます。
モーションの長さの初期値は12/60秒です。以下では倍速の6/60秒を指定しています。モーションは3パターンでセットであるため、実際にはその3倍の18/60秒を所要します。
<D-Animation:randomAll/> // アニメーションの大量生成
<D-Motion:attack> // 武器振り
repeat = 5 // 5回繰り返す
motionDuration = 6 // モーション時間
</D-Motion>
武器の振りが高速化、モーションが中断することがなくなりました。基本的にはintervalを使うよりも、こちらのほうが安定すると思います。
モーション時間(motionFrame)
移動と同じでモーションもアニメーションフレーム単位での長さ指定が可能です。アニメーションに合わせたい場合はこちらが便利です。
<D-Animation:randomAll/> // アニメーションの大量生成
<D-Motion:attack> // 武器振り
repeat = 5 // 5回繰り返す
motionFrame = 2 // モーション時間
</D-Motion>
>DynamicMotionMZプラグインに戻る
>DynamicMotionプラグインに戻る
>RPGツクールMZ&MV目次に戻る