; CNSファイルはカンフーマンの定数（基本データ）と
; 状態（各動作）を記述するものです。
; キャラクターの心臓とも言える部分なのでとても重要です。
;---------------------------------------------------------------------------
;---------------------------------------------------------------------------
;基本データ部分
[Data]
life              = 1000  ;体力ゲージの最大値を決めます
power             = 3000  ;パワーゲージ最大値（デフォルトは 3000 = Lv.3 になります・オプション）
attack            = 100   ;攻撃力パーセンテージ（デフォルトは 100% になります）
defence           = 100   ;防御力パーセンテージ（デフォルトは 100% になります）
fall.defence_up   = 50    ;一時的に上昇するダウン時の防御力パーセンテージ
liedown.time      = 60    ;倒れてから起き上がるまでの時間
airjuggle         = 15    ;ジャグルポイント限界値　★１
sparkno           = 2     ;デフォルトのヒットスパーク番号（fightfx.airか、キャラのairから呼び出す）
guard.sparkno     = 40    ;デフォルトのガードスパーク番号（fightfx.airか、キャラのairから呼び出す）
KO.echo           = 1     ;ＫＯ時の声にエコーを掛けるかどうか（0=しない・1=する）
volume            = 128   ;キャラの音量　255が最高
intpersistindex   = 20    ;Varを次のラウンドへ持ち越しが可能 (最小=0, 最大=59)  ★２
floatpersistindex = 40    ;FVarを次のラウンドへ持ち越しが可能 (最小=0, 最大=39) ★２



;★１：「ジャグルポイント」って何？
;　ダウン（受け身しなければ地面にそのまま吹っ飛び倒れる）効果の空中の相手に
;　攻撃を入れられる限界を設定するポイントです。
;　各ステートで設定した数値分攻撃が当たった時に溜まって行き、
;　限界値に到達したり超えてしまうと全ての攻撃が一切当たらなくなります。
;　攻撃が終わると数値が元に戻りますが、ジャグルポイントを設定してない攻撃や、
;　場合によってはダウン効果の無い攻撃を空中の相手に何回も当てると、
;　溜まらずに永久連続技（永久コンボ）になるので注意です。
;　あなたがキャラを作ったら永久コンボがないか探しましょう。永久コンボは絶対に存在してはいけません。
;
;　なお、ゲーム中Ctrl+Cで当たり判定ボックスを表示している時に攻撃を当てるとピンク色の文字が出てきますが、
;　その一番右の数値の部分がジャグルポイントの現在値表示になっているので確認出来ます。
;
;★２：「Var」と「FVar」って何？
;　いわゆる『変数（Variables）』です。「何も入っていない番号のある箱」のようなモノで、
;　中に自由にデータを入れ（トリガーで自由に条件を指定）、
;　フラグを立てます（トリガーの条件が揃えば設定した数値が有効になる）。
;　ステートコントローラのVar～～系で設定出来ますが、ここでは省略。
;　設定する数値は、Varでは整数しか使用出来ませんが、
;　FVarでは小数点以下（8.1や7.26とかや0.354など）が可能です。
;　ちなみにそれぞれアドレスがあり、Varは０～５９まで、FVarは０～３９まで使う事が出来ます。
;
;　変数持ち越しの使用例：
;　１：IntPersistIndex = 20　（Var(20)以降の変数が次のラウンドへ持ち越され、それ以外は0に戻る）
;　２：FloatPersistIndex = 25（FVar(25)以降の変数が次のラウンドへ持ち越され、それ以外は0に戻る）
;
;　※パラメータをIntPersistIndex=60、FloatPersistIndex=40にした場合、
;　　それぞれ０～５９・０～３９以外の数値ならば、全ての変数の持ち越しを無効に出来ます。
;　　バグにはならないので、使用する時が来るまではそれでも構いません。
;
;　覚えておくとキャラ作りに大変役立つモノなので、ある程度慣れてきたらいろいろチャレンジしてみましょう。
;


;---------------------------------------------------------------------------
;サイズ設定
[Size]
xscale           = 1        ;キャラ画像の横のスケール
yscale           = 1        ;キャラ画像の縦のスケール
ground.back      = 15       ;キャラの幅（地上後方）
ground.front     = 16       ;キャラの幅（地上前方）
air.back         = 12       ;キャラの幅（空中後方）
air.front        = 12       ;キャラの幅（空中前方）
height           = 60       ;跳び越す相手のためのキャラの高さ
attack.dist      = 160      ;攻撃を出した時に相手がガード体勢に入る最低の距離
proj.attack.dist = 90       ;相手がガード体勢に入る発射物との最低の距離
proj.doscale     = 0        ;xscaleとyscaleが発射物のスケールにも影響するかどうか（0=しない・1=する）
head.pos         = -5, -90  ;BindToTargetの時に必要な頭の座標
mid.pos          = -5, -60  ;BindToTargetの時に必要な体中心の座標
shadowoffset     = 0        ;影の垂直方向の位置
draw.offset      = 0,0      ;キャラ描画表示位置（Ｘ軸,Ｙ軸）

;---------------------------------------------------------------------------
;移動速度設定
[Velocity]
walk.fwd     = 2.4         ;前進歩行速度
walk.back    = -2.2        ;後退歩行速度
run.fwd      = 4.6, 0      ;前に走る時の速度（Ｘ軸,Ｙ軸）
run.back     = -4.5,-3.8   ;後ろに走る時の速度（Ｘ軸,Ｙ軸）
jump.neu     = 0,-8.4      ;垂直ジャンプ速度（Ｘ軸,Ｙ軸）
jump.back    = -2.5        ;後ジャンプ速度
jump.fwd     = 2.55        ;前ジャンプ速度
runjump.back = -2.55,-8.1  ;後ろに走りながらのジャンプ速度（オプション）
runjump.fwd  = 4,-8.1      ;前に走りながらのジャンプ速度（オプション）
airjump.neu  = 0,-8.1      ;空中垂直ジャンプ速度（オプション）
airjump.back = -2.5        ;空中後ジャンプ速度（オプション）
airjump.fwd  = 2.55        ;空中前ジャンプ速度（オプション）

;---------------------------------------------------------------------------
;動作設定
[Movement]
airjump.num     = 1      ;空中ジャンプが出来る回数（オプション）
airjump.height  = 35     ;空中ジャンプするために必要な最低限の高さ（オプション）
yaccel          = .44    ;重力（垂直下降加速度）
stand.friction  = .85    ;立ち状態の摩擦係数
crouch.friction = .82    ;しゃがみ状態の摩擦係数


;---------------------------------------------------------------------------
; Varの使用状況
; ここに自分が使ったvarをメモしておくといろいろと好都合です。
; var(1)  - コマンドファイルのコンボ用
; var(2)  - 投げに使った(800)
; var(3)  - ハイジャンプ
; var(4)  - 空中ダッシュ
; var(5)  - 板投げ
; var(20) - CPUアルゴリズム用
; var(21) - Random var用

;---------------------------------------------------------------------------
;「ステート」の説明と基本的な使い方
;---------------------------------------------------------------------------
;■ステートとは「状態」を意味しますが、
;　ＭＵＧＥＮでは通常攻撃や必殺技などの枠にはまらない
;「ゲーム中における全ての行動を決めるプログラム」の事を指します。
;「ゲージ消費が必要無く、一撃で相手を倒せる攻撃」なども簡単に作成出来るので注意です。
;　１ステート（一つの行動）ずつに対して必ず番号（アドレス）が割り当てられます。
;　俗に「ステートナンバー」と呼ばれています。
;
;■基本的な設定の例
; [Statedef STATENO]       一つの行動を定義する記述です。「STATENO」に必ず番号を設定してください
; type = ?      S/C/A/L/U  キャラの状態を指定
; S=立ち　C=しゃがみ　A=空中　L=倒れている　U=前のステートの状態を引き継ぐ
;
; movetype = ?  I/A/H      キャラの行動内容を指定
; I=何もしない　A=攻撃している　H=攻撃を食らっている
;
; physics = ?   S/C/A/N/U  キャラの物理的な体勢
; S=立ち　C=しゃがみ　A=空中　N=重力や摩擦の影響を受けない　U=前のステートの体勢を引き継ぐ
;
; juggle = ?               攻撃を当てた時に溜まるジャグルポイントの設定
;
; [State STATENO, ?]      「ステートコントローラ」と呼ばれるステートの色々な操作を定義し、設置や追加をします
; type = ?                 ステートコントローラの種類をこの部分に状況に応じて入れます
; 　                       トリガーで条件を指定し、様々な効果を適用させて行きます
;
;
; ※１ステートには必ず一つはステートコントローラを設置する必要があります。
;
; 後は実際に使われているステートを参照してください。（[Statedef 200]に更に詳しい説明もあります）
;
;---------------------------------------------------------------------------
;---------------------------------------------------------------------------
;---------------------------------------------------------------------------
; 基本行動のステート
;---------------------------------------------------------------------------
; タイムオーバー時
; CNS レベル: 基本

[Statedef 170]
type = S
ctrl = 0     ;ここでCtrlSetを簡略化できます。　1=自由に動かせる
anim = 170
velset = 0,0 ;ここでVelSetを簡略化できます。　x方向,y方向 の順

[State 170, 無敵]
type = NotHitBy
trigger1 = 1 ;1にするといかなる条件でも有効で、0にするといかなる条件でも無効
value = SCA  ;※
time = 1


;※ 無敵の設定について
;
;value = 1, 2, 2, 2, 2, 2… のように設定する。
;1には、無効化する全てのS(立ち),C(屈み),A(空中)攻撃を設定する。
;2には、無効化する攻撃属性を設定する。（NA,SA,HA,NT,ST,HT,NP,SP,HP,AA,AT,APがある）
;
;効果例
;value = SCA ・ value = ,AA,AT,AP ・ value = SCA,NA,ST,HP　…全て無敵。　注意。
;value = SC　…地上攻撃に対して全て無敵。
;value = A, NA, NT, NP　…空中攻撃全てと通常攻撃、通常投げ、通常飛び道具に対して無敵。
;
;意味
;NA+SA+HA=AA・NT+ST+HT=AT・NP+SP+HP=AP



;---------------------------------------------------------------------------
; 勝利ポーズ分岐
; CNS レベル: 基本
;
;ここで勝利ポーズを選択する。　MatchOverは試合終了を判定するので、
;一回目と二回目勝利を別のポーズにしたい時に便利。

[Statedef 180]
type = S

[State 180, 勝利ポーズ1]
type = ChangeState
triggerall = RoundState != 0 ;エンディング対策
trigger1 = Time = 0
trigger1 = MatchOver = 0     ;0なら次の試合がまだ残ってるということ
value = 182

[State 180, 勝利ポーズ2]
type = ChangeState
trigger1 = Time = 0
trigger1 = MatchOver = 1     ;これが1だと試合終了したとき
trigger2 = RoundState = 0    ;エンディング時はこちらを使う
value = 181

;---------------------------------------------------------------------------
; 勝利ポーズ
; CNS レベル: 基本

[Statedef 181];深くお辞儀
type = S
ctrl = 0
anim = 181
velset = 0,0

[State 181, 無敵]
type = NotHitBy
trigger1 = 1
value = SCA
time = 1

[State 181, カンフーボイス]
type = Null;PlaySnd
triggerall = Time = 1
trigger1 = Alive
value = 90,0
channel = 4

[Statedef 182];浅くお辞儀した後、次の試合に備える
type = S
ctrl = 0
anim = 195
velset = 0,0

[State 182, 無敵]
type = NotHitBy
trigger1 = 1
value = SCA
time = 1

[State 182, 立ちアニメへ]
type = ChangeAnim
trigger1 = AnimTime = 0
value = 0
elem = 11   ;11枚目のアニメから始まる

;---------------------------------------------------------------------------
; イントロ分岐
; CNS レベル: 基本
;
; ここでは変数(var)を使っていますが、詳しい説明は後ほど。
; VarRandomはrangeで指定された範囲からひとつを選ぶので、
; いろいろな分岐に便利です。

;イントロ選択
[Statedef 190]
type = S
ctrl = 0
anim = 0
velset = 0,0

[State 190, ランダムに変数を選ぶ]
type = VarRandom
trigger1 = 1
v = 21
range = 0,2  ;範囲を決定、これだと0～2という意味

[State 190, 上で選ばれた変数が0以外だったら]
type = ChangeState
trigger1 = Time = 1
trigger1 = var(21) != 0
value = 191

[State 190, 0だったらこちらへ分岐]
type = ChangeState
trigger1 = Time = 1
trigger1 = var(21) = 0
value = 192


;---------------------------------------------------------------------------
; イントロ（試合開始直前のアクション）
; CNS レベル: 基本

[Statedef 191]
type = S
ctrl = 0
anim = 190
velset = 0,0

[State 191, アニメ変更] ;画面フェードインの間だけアニメーションを繰り返し、止まっているように見せています
type = ChangeAnim
trigger1 = RoundState = 0
value = 190

[State 191, 特殊効果] ;「ROUND1, FIGHT!」のアナウンスが始まるまでは、このコントローラを使ってください
type = AssertSpecial
trigger1 = 1
flag = Intro ;イントロの状態になります

[State 191, カンフーボイス]
type = PlaySnd
triggerall = Time = 1
trigger1 = Alive
value = 20,0
channel = 4

[State 191, ステート変更]
type = ChangeState
trigger1 = AnimTime = 0
value = 0 ;common1.cns参照

;KFMが蹴る木の板です。
[State 191, エフェクト表示（飛んでくる板）]
type = Explod
trigger1 = RoundState != 0
persistent = 0
anim = 191
postype = P1
pos = 260, -90
velocity = -4.2, -7
accel = 0, .32
removetime = 48 ;消えるまでの時間

[State 191, エフェクト表示（蹴られて割れて吹っ飛ぶ板）]
type = Explod
trigger1 = AnimElemTime(7) = 1
anim = 192
postype = P1
pos = 60, -70
velocity = 2, -4
accel = 0, .32
removetime = 35

;これらは蹴られて割れて吹っ飛ぶ板の音を再生します。
[State 191, 音を鳴らす]
type = PlaySnd
trigger1 = AnimElem = 7
value = F5,2 ;Fが付いていればdataフォルダのcommon.sndから、付いていなければキャラのsndファイルから出す音を指定します
volume = -40 ;固有音量、ここで設定すると全体の音量に関係しなくなる。非推奨

[State 191, 音を鳴らす]
type = PlaySnd
trigger1 = AnimElemTime(7) = 3
value = F5,3
volume = -80


; 画面外から歩いて登場する
;
; 自分は透明になって元の位置から動かず、ヘルパーを画面外から歩かせて
; あたかも自分が画面外から登場しているように見せます。

[Statedef 192]
type = S
ctrl = 0
anim = 0
velset = 0,0

[State 192, 無敵]
type = NotHitBy
trigger1 = Time < 110
value = SCA

[State 192, イントロ用フラグ]
type = AssertSpecial
trigger1 = 1
flag = Intro

[State 192, 透明化]
type = AssertSpecial
trigger1 = Time < 110
flag = Invisible  ;これを使うと自キャラが見えなくなる

[State 192, 立ちのまま]
type = ChangeAnim
trigger1 = Time < 110
value = 0

[State 192, ヘルパーを出す];ヘルパーについては後に詳しい解説があります
type = Helper
trigger1 = Time = 30
name = "NAOK"
stateno = 193
ID = 193
pos = -200, 0 ;自分の後方200から出現

[State 192, 礼をさせる]
type = ChangeAnim
trigger1 = Time = 115
trigger1 = Anim = 0   ;使わなくても良いが、使う癖をつけた方がいいかも
value = 195

[State 192, ステート変更]
type = ChangeState
trigger1 = Anim = 195
trigger1 = AnimTime = 0
value = 0

;後ろから歩いてくるNAOKのヘルパー
[Statedef 193]
type = S
ctrl = 0
anim = 20
velset = 2.5,0

[State 193, 無敵]
type = NotHitBy
trigger1 = 1
value = SCA

[State 193, 消滅]
type = DestroySelf
trigger1 = Time = 80
trigger2 = Parent,stateno != 192 ;本体に変化があっても消えるように


;---------------------------------------------------------------------------
;AssertSpecialは特殊なフラグを設定します。同時に三つまで設定できます。

;[State xxx, フラグ設定記述例]
;type = AssertSpecial
;trigger1 = 1
;flag  = invisible
;flag2 = noshadow
;flag3 = timerfreeze

;種類一覧
;intro　　　　　 イントロの動作をしていることを宣言します。
;invisible　　　 設定している間は、キャラクターの姿が見えなくなります。
;　　　　　　　　但し、AfterImageの残像は見えます。
;roundnotover　　キャラが勝ちポーズ中であることを宣言します。
;nobardisplay　　設定中はライフバー、パワーバーが消えます。
;noBG　　　　　　設定中は背景が綺麗に黒になります。
;noFG　　　　　　設定中はステージレイヤー１が消えます。
;nostandguard　　設定中は立ち防御不可能になります。
;nocrouchguard　 設定中はしゃがみ防御不可能になります。
;noairguard　　　設定中は空中防御不可能になります。
;noautoturn　　　設定中はキャラが自動的にターンしないようになります。
;nojugglecheck　 設定中はキャラのJuggleがカウントされなくなります。
;　　　　　　　　特殊モード時に連続ヒットさせる時等に使用します。
;nokosnd　　　 　設定中はノックアウト時に11,0(KOsnd)を再生できなくするフラグです。
;nokoslow　　　　設定中はノックアウト時にスローモーションを効かなくする。
;noshadow　　　　設定中『影』が未表示になります。
;globalnoshadow　設定中全てのキャラクター、Helper、Explodの影が消えます。
;nomusic　　　　 設定中、BGMが停止します。
;nowalk　　　　　設定中、歩く状態にならなくなります。
;　　　　　　　　ダッシュ状態が歩き状態にならないようにすることに使用するのが主。
;timerfreeze　 　設定中、時間がカウントされなくなります。
;unguardable　　 設定中、全てのHitdefのガードフラグが無視されます。
;　　　　　　　　つまり、ガード不能技になります。



;---------------------------------------------------------------------------
; 挑発
; CNS レベル: 基本
[Statedef 195]
type     = S
movetype = I
physics  = S
anim     = 195
velset   = 0,0
ctrl     = 0
sprpriority = 2 ;ここで表示優先度を決定できます。　範囲は-5～5、大きいほど手前に表示される
facep2 = 1      ;相手の方を向いてから挑発（結構重要）

[State 195, パワーが溜まる];(闘婚風味)
type = PowerAdd
trigger1 = Time = 44
value = 200

[State 195, コントロール可否]
type = CtrlSet
trigger1 = Time = 48
value = 1

[State 195, ステート変更]
type = ChangeState
trigger1 = AnimTime = 0
value = 0
ctrl = 1


;------------------------------------------------------------------------
;CPU用ガード
;
;WinMUGEN時代に突入してからガード方法が一部変わりました。
;独自にCommonを持っていたDOS用キャラはガードに修正を加える必要があるのは
;周知の事実ですが、CPUアルゴリズムはDOS用のまま修正を加えていなかったため
;05/4/15に不具合を発見し、修正を試みました。


;CPU用しゃがみガード
[Statedef 131]
type    = C
physics = C

[State 131, コモン]
type = ChangeAnim
trigger1 = Anim != 131
value = 131

[State 131, CPU用含む]
type = ChangeState
trigger1 = Var(20) = 0
trigger1 = command != "holddown"
trigger2 = Var(20) = 1
trigger2 = p2statetype = A ;この辺は何か良い案がほしい…
trigger2 = time = 1        ;これを付けないと強制終了した
value = 130

[State 131, コモン]
type = ChangeState
trigger1 = command != "holdback"
trigger2 = !inguarddist
value = 140

;ガードエンド
[Statedef 140]
type = U
physics = U
ctrl = 1

[State 140, コモン1]
type = ChangeAnim
trigger1 = Time = 0
value = 140 + (statetype = C) + (statetype = A)*2

[State 140, コモン2]
type = StateTypeSet
trigger1 = Time = 0 && statetype = S
physics = S

[State 140, コモン3]
type = StateTypeSet
trigger1 = Time = 0 && statetype = C
physics = C

[State 140, コモン4]
type = StateTypeSet
trigger1 = Time = 0 && statetype = A
physics = A

[State 140, CPU用含むHtoL]
type = StateTypeSet
trigger1 = Var(20) = 0
trigger1 = statetype = S && command = "holddown"
trigger2 = Var(20) = 1
trigger2 = statetype = S && p2statetype = C
statetype = C
physics = C

[State 140, CPU用含むLtoH]
type = StateTypeSet
trigger1 = Var(20) = 0
trigger1 = statetype = C && command != "holddown"
trigger2 = Var(20) = 1
trigger2 = statetype = C && p2statetype = A
trigger3 = Var(20) = 1
trigger3 = statetype = C && p2statetype = S
trigger3 = Var(21) = [0,19]
statetype = S
physics = S

;立ちガードヒット
[Statedef 150]
type    = S
movetype= H
physics = N
velset = 0,0

[State 150, コモン1]
type = ChangeAnim
trigger1 = 1
value = 150

[State 150, 人間]
type = ChangeState
trigger1 = Var(20) = 0
trigger1 = HitShakeOver
value = 151 + 2*(command = "holddown")

[State 150, CPU]
type = ChangeState
trigger1 = Var(20) = 1
trigger1 = HitShakeOver
value = 151 + 2*(p2statetype = C)

[State 150, CPU用含むHtoL]
type = StateTypeSet
trigger1 = Var(20) = 0
trigger1 = statetype = S && command = "holddown"
trigger2 = Var(20) = 1
trigger2 = statetype = S && p2statetype = C
statetype = C
physics = C

[State 150, CPU用含むLtoH]
type = StateTypeSet
trigger1 = Var(20) = 0
trigger1 = statetype = C && command != "holddown"
trigger2 = Var(20) = 1
trigger2 = statetype = C && p2statetype = A
trigger3 = Var(20) = 1
trigger3 = statetype = C && p2statetype = S
trigger3 = Var(21) = [0,19]
statetype = S
physics = S

[State 150, コモン2]
type = ForceFeedback
trigger1 = time = 0
waveform = square
time = 3

[Statedef 151]
type    = S
movetype= H
physics = S
anim = 150

[State 151, コモン1]
type = HitVelSet
trigger1 = Time = 0
x = 1

[State 151, コモン2]
type = VelSet
trigger1 = Time = GetHitVar(slidetime)
trigger2 = HitOver
x = 0

[State 151, コモン3]
type = CtrlSet
trigger1 = Time = GetHitVar(ctrltime)
value = 1

[State 151, CPU用含むHtoL]
type = StateTypeSet
trigger1 = Var(20) = 0
trigger1 = statetype = S && command = "holddown"
trigger2 = Var(20) = 1
trigger2 = statetype = S && p2statetype = C
statetype = C
physics = C

[State 151, CPU用含むLtoH]
type = StateTypeSet
trigger1 = Var(20) = 0
trigger1 = statetype = C && command != "holddown"
trigger2 = Var(20) = 1
trigger2 = statetype = C && p2statetype = A
trigger3 = Var(20) = 1
trigger3 = statetype = C && p2statetype = S
trigger3 = Var(21) = [0,19]
statetype = S
physics = S

[State 151, コモン4]
type = ChangeState
trigger1 = HitOver
value = 130
ctrl = 1


;しゃがみガードヒット
[Statedef 152]
type    = C
movetype= H
physics = N
velset = 0,0

[State 152, コモン1]
type = ChangeAnim
trigger1 = 1
value = 151

[State 152, 人間]
type = ChangeState
trigger1 = Var(20) = 0
trigger1 = HitShakeOver
value = 151 + 2*(command = "holddown")

[State 152, CPU]
type = ChangeState
trigger1 = Var(20) = 1
trigger1 = HitShakeOver
value = 151 + 2*(p2statetype = C)

[State 152, CPU用含むHtoL]
type = StateTypeSet
trigger1 = Var(20) = 0
trigger1 = statetype = S && command = "holddown"
trigger2 = Var(20) = 1
trigger2 = statetype = S && p2statetype = C
statetype = C
physics = C

[State 152, CPU用含むLtoH]
type = StateTypeSet
trigger1 = Var(20) = 0
trigger1 = statetype = C && command != "holddown"
trigger2 = Var(20) = 1
trigger2 = statetype = C && p2statetype = A
trigger3 = Var(20) = 1
trigger3 = statetype = C && p2statetype = S
trigger3 = Var(21) = [0,19]
statetype = S
physics = S

[State 152, コモン2]
type = ForceFeedback
trigger1 = time = 0
waveform = square
time = 4

[Statedef 153]
type    = C
movetype= H
physics = C
anim = 151

[State 153, コモン1]
type = HitVelSet
trigger1 = Time = 0
x = 1

[State 153, コモン2]
type = VelSet
trigger1 = Time = GetHitVar(slidetime)
trigger2 = HitOver
x = 0

[State 153, コモン3]
type = CtrlSet
trigger1 = Time = GetHitVar(ctrltime)
value = 1

[State 153, CPU用含むHtoL]
type = StateTypeSet
trigger1 = Var(20) = 0
trigger1 = statetype = S && command = "holddown"
trigger2 = Var(20) = 1
trigger2 = statetype = S && p2statetype = C
statetype = C
physics = C

[State 153, CPU用含むLtoH]
type = StateTypeSet
trigger1 = Var(20) = 0
trigger1 = statetype = C && command != "holddown"
trigger2 = Var(20) = 1
trigger2 = statetype = C && p2statetype = A
trigger3 = Var(20) = 1
trigger3 = statetype = C && p2statetype = S
trigger3 = Var(21) = [0,19]
statetype = S
physics = S

[State 153, コモン4]
type = ChangeState
trigger1 = HitOver
value = 131
ctrl = 1

;CPUのガード方法変更は初めての取り組みなので、不具合がないとは言い切れない…


