やりたいことは、『ペーパーマリオ』のように、タイミングよくボタンを押すと追加攻撃が出る仕組みを再現することです。プレイヤーが「OK」キーを押して最大2回の追加攻撃を行い、それぞれ異なるモーション(斬り付け、突き、ミサイル)が再生されるようにしたいのです。(武器のグラフィックは使わず、武器はSVバトルスプライトに組み込まれており、「ミサイル」はスピンフィニッシャーとして扱われます。)
流れは以下のようになります:
キャラクターがターゲットに接近
プレイヤーが「OK」キーを押す
斬り付け攻撃モーション
プレイヤーが「OK」キーを押す
突き攻撃モーション
プレイヤーが「OK」キーを押す
ミサイル攻撃モーション
キャラクターが元の位置に戻る
タイミングは正確である必要はなく、単に入力を検知するだけで構いません。
よろしくお願いいたします!
Baz
2
プラグインは、ボタンを押すのにかかるフレーム数を数値変数に格納し、ウィンドウが消去されると0に戻します。おそらく、ターゲットアクション内でYanflyの「条件分岐」機能を使ってこの変数をチェックするのが手っ取り早いですね。攻撃スキルの備考欄に次のように入力してみてください。
<target action>
move user: target, front base, 20
wait for movement
motion swing: user
wait: 10
action animation
wait for animation
action effect
start sequence input: ok, 10
wait for sequence input: 30
if $gameVariables.value(10) > 0
motion thrust: user
wait: 10
action animation
wait for animation
action effect
start sequence input: ok, 10
wait for sequence input: 30
end
if $gameVariables.value(10) > 0
motion missile: user
wait: 10
action animation
wait for animation
action effect
end
</target action>
10は、まだ使用していない変数IDに置き換えてください。30は、プレイヤーが「OK」を押せるフレーム数です。もし最初の入力を逃すと変数は0のままになるので、両方の追加アクションがスキップされます。元の場所への移動は、デフォルトの完了アクションで処理されるはずです。
SRD_SequenceInputは、ロード時にBattle Engine Coreの有無を確認するため、プラグインマネージャーでBattle Engine Coreの下に配置してください。