今回は剣振りアニメーションを中心にARPGプラグインセットを見ていきます。
目次
●ARPGプラグインセット
公式で公開されているARPGプラグインセットを勉強中です。
前回は剣振り高速化方法と、装備武器に応じての特性変更方法について勉強していました。
イベント・メモ・コモンイベントなど総合的に触っていく必要があり、難しいです。
気合を入れて根気よくいきましょう。
●剣振りアクション
・剣振りの更なる高速化
武器アニメーションのウエイトをfalseにすることで、高速化できました。
次見ようと思っていたところに期待するものがあったとは思わなかったです。
吹き出しとかと同じように、並列で処理される感じですかね。
コモンイベント「通常攻撃」にある武器アニメーションのウエイトをfalseにすることで実現できます。

・止まらずに剣振り
剣を振ると一旦止まってしまうので心地よくない状態です。
スキルメモにプラグインへの指示を追加することで回避できました。
<disableMove: false>

・走りながら剣振り
次は加速度を維持したいですね。
止まることなく斬れるようになりましたが、振っている間は移動速度が落ちています。
こちらも同様にスキルメモに指示を追加することで回避できました。
<cancelAcceleration: false>

まだ引っかかりを感じる気もしますが、これぐらい振り回せないと気持ちよくないですね。
●剣振りアニメーション
剣を振った時の軌跡もう少し滑らかな曲線にしたいので、軌跡画像を差し替えたいと思います。
しかし、プロジェクト全体を検索してもそれらしい画像は見つかりませんでした。
・剣振りアニメーションの解析
テストプレイ中にF12を押すと開発者ツールを開けます。
このツールのネットワークタブでは読み込んだ画像などを確認することができます。
各素材は必要になった時点で読み込まれるようなので、タイトルの時点で開発者ツールを開いておけばリストに現れるはずです。
5回ほど振って確認しましたが、剣振りアニメーションの軌跡が描かれた画像はありませんでした。
やはり、スクリプトを追っていくしか無さそうです。

・剣振りアニメーションを探す
開発者ツールのパフォーマンスタブでは記録した範囲の関数呼び出し履歴が見れます。
スナップショットもあるので、剣振り開始フレーム周辺をチェックしてみます。
「update」ばかりですが、関数呼び出し履歴を根気よく覗いていたら「ARPG_WeponAnimation.js」というのが見つかりました。
(ファイルを確認するだけで見つかったはずですが、ARPG_Core.jsの行数を見た時点で戦意喪失していました)

ソースへのリンクを開いて周辺を確認したところ「Sprite_SwordAnimation」とありました。
期待する処理が書かれてそうなので、ここを重点的に解析してみます。

・剣振りアニメーションの修正
updateを保持しているSprite_SwordAnimationは初期化時にwindowオブジェクトに保存して利用するようです。
Sprite_SwordAnimationでは初期化時にSlashSpriteを配列で作成しています。
SlashSpriteでグラデーションを描画していたので赤っぽく変更したところ赤い軌跡になりました。
ここを変えるだけで良さそうです。


sinを使って描いているので細かい調整方法がわかりません。
値変更→確認を繰り返すのは面倒なので、今回は少し横長にする程度に留めます。

●剣を振りまわして遊ぶ
気持ちいいので剣を振り回していたら2発目が命中していない事に気付きました。
爆弾投げを作ろうとしてましたけど、先にこっちですね…。
ダメージを受けた時の無敵時間は、noDamageFrameの値で変わるとのことです。
しかし、0にすると1回斬っただけで3回ダメージを与えてしまいます。
奥深すぎて一筋縄ではいかないですね、次回はこの辺を見ていこうと思います。
コメント