説明の形式
イベント名 | 説明 |
ここではEventsで説明しきれないことを説明します。Event名は参考にした文章ごとに違うのでEvent名でなくコードでどんなEventなのか判断してください。
Eventを指定したフレーム後に出す(Asynchronus Timer、Synchronus Timer)
SAでEventを使うときに絶対に必要になるのがタイマーです。指定したフレーム後にイベントを行うよう設定できます。
Asynchronus Timer | SubActionが始まって何F後にしたのEventを行うか |
Synchronus Timer | 前回のEventが終わって何F後に次のEventを行うか |
判定を何F出しているかを確認しやすくしたいときはSynchronus Timerを使う、アニメーションに合わせて設定したいときはAsychronus Timerを使う、などといったように自分の目的に合わせて使い分けるといいでしょう。
設定したEventを繰り返し行いたい(Set Loop,Execute Loop,Loop Rest)
Loop設定についてです。同じ処理を何回も繰り返したいとき、Loopを使うことで簡潔に記述できます。
Set Loop | 引数にループ回数を指定することで繰り返し処理を行える。FFFFFFFFにした場合永久ループするが、Allow Interruptをおかないとループが終わらない |
Execute Loop | ここにたどり着いたらSet Loopの次の行にループする |
Loop Rest | 永久ループを設定しているときはExecute Loopの前に必ずおく 編集項目がAcitonsでない場合はこの限りではない |
キャラの当たり判定を変えたい(Body Collision)
Body Collisionではキャラの当たり判定について設定を変えることができます。キャラに無敵判定をつけたいなどの目的で使います。
Body Collision | 引数に00で通常、01で当たり判定のみでダメージなし、02で当たり判定そのものが消える |
キャラの攻撃判定を制御したい(Offensive Collision,Terminate Collisions)
すみません、B+Wikiにあるのでひとまず飛ばします…
キャラの技をキャンセルしたい(Allow Interrupt)
これを入れることで出している技を他の技でキャンセルすることができます。
Allow Interrupt | 技をキャンセル可能にする(このEventを挿入した後のみ) |
Allow Specific Interrupt | 技を特定の行動でキャンセル可能にする(このEventを挿入した後のみ) |
Allow Specific Interruptで設定できる行動キャンセル(B+Wikiより引用)
1 - 地上で必殺技を出す
2 - 地上でアイテム使用
3 - つかみ
4 - 通常技(地上)
5 - 地上で緊急回避
6 - シールドを張る
7 - 地上ジャンプ
8 - ほかの地上動作(ステップなど)
9 - 着地動作
A - 崖つかまり
B - 空中で必殺技を出す
C - 空中でアイテム投げ
D - 空中グラップ、空中ヒモヘビなど
E - 空中緊急回避
F - 通常技(空中)
10- ふみつけジャンプ
11- 三角跳び
12- 空中ジャンプ
2 - 地上でアイテム使用
3 - つかみ
4 - 通常技(地上)
5 - 地上で緊急回避
6 - シールドを張る
7 - 地上ジャンプ
8 - ほかの地上動作(ステップなど)
9 - 着地動作
A - 崖つかまり
B - 空中で必殺技を出す
C - 空中でアイテム投げ
D - 空中グラップ、空中ヒモヘビなど
E - 空中緊急回避
F - 通常技(空中)
10- ふみつけジャンプ
11- 三角跳び
12- 空中ジャンプ
別の流れに飛びたい(Sub Routine、Return、Goto)
ある動きの説明をするのに他の動きと同じ事(たとえばピーチの上Bの地上版と空中版)を書かなくてはならないのは面倒です。そこで、Sub Routineを使って手間を省きましょう。
Sub Routine | 指定したオフセットにジャンプする(プログラミングにおける関数呼び出しみたいなものかな?) |
Return | サブルーチンから帰る(Actionを編集するとき以外はなくても自動的に戻る) |
Goto | サブルーチンに飛ぶ(元の位置に帰ってこない) |
条件によって別のEventを設定したい(If、Endif、Else、Elseif、AndIf)
何かの条件(たとえば地上にいるときや前を向いているとき)に応じて処理を変更する命令です。
If | EndifかElseにたどり着くまでIf内のEventを行う |
Endif | Ifのブロックを閉じる |
Else | Ifの条件に合わないとき、次の動作を行う |
Elseif | Ifの条件に合わなくて、かつ新たな条件を与えて場合分けしたいときに使う |
OrIf | Ifの条件"または"別の条件のどっちかが合ったとき、次の動作を行う |
AndIf | Ifの条件に、さらに追加で条件をつけたいときに使う |
同じ条件によって複数の場合に分けたい(Switch、Case、Default Case、End Switch)
IfとElseifを用いれば作れる構文でもSwitch文を用いることで冗長さを防ぐことができます。
Switch | 与えられた条件にしたがって場合分けをする |
Case | 引数に与えた条件に合致する場合、次のEventを行う |
Default Case | どのCaseにも合致しない場合、次のEventを行う |
End Switch | Switchの有効範囲を終わらせる |
つかみ判定を出したい(Grab Collision、Terminate Grab Collisions)
キャラクターにはつかみボタン以外にもつかむ技があり、そういったものはこのEventで設定しています。クッパ、ガノンの横Bはおそらくこれでしょう。
Grab Collision | 指定した数値に応じてつかみ判定を出現させる |
Terminate Grab Collisions | つかみ判定を消す |
投げられているキャラに攻撃判定をつけたい(Throw Attack Collision)
このEventには引数が17個あります…
投げられているキャラに攻撃判定をつけることができます。おそらくマリオ・二番手のジャイアントスイングなどはこれで指定してあります。
投げられているキャラに攻撃判定をつけることができます。おそらくマリオ・二番手のジャイアントスイングなどはこれで指定してあります。
Throw Attack Collision | 投げられているキャラに攻撃判定をつける |
※ver2.70ではThrow Attack Collisionは投げワザの性能を決めるものとされています
投げ終わったキャラに攻撃判定をつけたい(Throw Collision)
投げ終わった後のキャラにも攻撃判定をつけることができます。引数は5つです…
Throw Collision | 投げ終わったキャラに攻撃判定をつける |
※ver2.70ではThrow Collisionは投げているキャラを離すタイミングを決めるものとされています
攻撃を防ぐ/飛び道具を反射する(Defensive Collision)
このEventでは防御判定を出すことができます。実際に見てみたことはないので翻訳をそのまま載せます
ちなみに、Parameter0を3、Parameter1を0、Parameter2を2に設定することで、キャラの全身にリフレクト判定が付き、飛び道具を反射することができます。そのSubaction中にリフレクト判定を消したい場合は、Defensive Collision Operationを、Defensive Collisionと全く同じ値に設定すればよいです。
マリオの横Bの設定を参照するといいでしょう。
ちなみに、Parameter0を3、Parameter1を0、Parameter2を2に設定することで、キャラの全身にリフレクト判定が付き、飛び道具を反射することができます。そのSubaction中にリフレクト判定を消したい場合は、Defensive Collision Operationを、Defensive Collisionと全く同じ値に設定すればよいです。
マリオの横Bの設定を参照するといいでしょう。
Defensive Collision | 引数3つで防御判定を出す |
効果音を出したい(Sound Effect)
SFXの設定になりますがこのEventを用いれば効果音を出すことができます。
与える引数にはそのIDを入れましょう
ちなみにSound Effectは3つ存在しますが、そのうちの最後のSound Effectには、Actionが終わった、または中断した時にその効果音が中断される特徴があります。このSound Effectは、ソニックのアピールの設定でも利用されています。
与える引数にはそのIDを入れましょう
ちなみにSound Effectは3つ存在しますが、そのうちの最後のSound Effectには、Actionが終わった、または中断した時にその効果音が中断される特徴があります。このSound Effectは、ソニックのアピールの設定でも利用されています。
Sound Effect | 指定したIDの効果音を流す |
効果音をミュートにしたい(StopSoundEffect)
このEventを用いることで、止めたいと思った効果音を自分にとって良いタイミングで停止させることができます。
Stop Sound Effect | 指定したIDの効果音を止める |
編集や何かのコピペにご活用ください