カンフーアッパー

Last-modified: 2014-09-09 (火) 23:09:42

シンプルな対空アッパーカット、無敵こそ無いものの、その強い攻撃判定は十分に対空として機能する
ヒットすれば相手を打ち上げエリアルにも、ただし前への攻撃判定が狭いのでコンボには不向き

 

<注意点>
「var(1)」は変数、変数元の記述と条件が一致したら使用される。キャラクター作者の方が
記述内容を減らすために使っていることが多いが、AI作成の際には各triggerにそれぞれ条件を設定したい
という場合が多いので、変数元の記述に書き戻してしまうことがほとんどである

 

[State -1, 変数の例2];必殺技の発生条件をチェック
type = VarSet
trigger1 = statetype != A
trigger1 = ctrl
trigger2 = (stateno = [200,299]) || (stateno = [400,499])
trigger2 = stateno != 440 ;[Statedef 440](足払いのステート)ではない時
trigger2 = movecontact
var(1) = 1

 

変数元の記述はこうなっている、「var(1)」は全てこれに戻してからAIとして作成していく
<注意点>


 

速いカンフーアッパー

編集前

[State -1, 速いカンフーアッパー];ゲージ消費
type = ChangeState
value = 1120
triggerall = command = "upper_xy"
triggerall = power >= 330
trigger1 = var(1)

 
編集後

;性能は悪くないが、ゲージを使うとなるとどうしても「スマッシュカンフーアッパー」と比べてしまう
;[State -1, 速いカンフーアッパー];ゲージ消費
;type = ChangeState
;value = 1120
;triggerall = command = "upper_xy"
;triggerall = power >= 330
;trigger1 = var(1)


やはりゲージを使う以上は、「スマッシュカンフーアッパー」があるので
温存してそちらに回したいと考えてしまう、なのでコメントアウトして使わないことに

 

弱カンフーアッパー

編集中

[State -1, 弱カンフーアッパー]
type = ChangeState
value = 1100
triggerall = command = "upper_x"
trigger1 = var(1)

 
編集中

[State -1, 弱カンフーアッパー]
type = ChangeState
value = 1100
triggerall = command = "upper_x"
trigger1 = statetype != A
trigger1 = ctrl
trigger2 = (stateno = [200,299]) || (stateno = [400,499])
trigger2 = stateno != 440 ;[Statedef 440](足払いのステート)ではない時
trigger2 = movecontact

 
編集後

;横距離は39まで届き、高さは130まで届く、発生も早く頼れるが打点は高い
[State -1, 弱カンフーアッパー]
type = ChangeState
value = 1100
triggerall = roundstate = 2
triggerall = p2statetype != L
triggerall = p2bodydist X = [-10,39]
triggerall = p2bodydist Y >= -130
triggerall = p2statetype = A
trigger1 = statetype != A
trigger1 = ctrl
trigger1 = p2movetype != I
trigger1 = random <= 300
trigger2 = (stateno = [200,299]) || (stateno = [400,499])
trigger2 = stateno != 440 ;[Statedef 440](足払いのステート)ではない時
trigger2 = movecontact
trigger2 = random <= 500


基本的には「スマッシュカンフーアッパー」と同じような使い方だが、地上で使うのは危険なので
空中の相手に対してカウンターで放つ。「p2movetype != I」というのは「相手がその他の状態でないとき」
転じて「相手が攻撃態勢か食らい中のとき」という意味。ゲージを消費しないので、当たるかどうか
分からない(ガードも食らい中に含まれるので)状態の相手に対しても積極的に振っていける
ただし「スマッシュカンフーアッパー」のような無敵は無いので過信は禁物ではある

 

またその発生の早さを生かして、相手が空中にいる際のコンボにも使用するようにしてある

 

強カンフーアッパー

修正前

[State -1, 強カンフーアッパー]
type = ChangeState
value = 1110
triggerall = command = "upper_y"
trigger1 = var(1)

 
修正中

[State -1, 強カンフーアッパー]
type = ChangeState
value = 1110
triggerall = command = "upper_y"
trigger1 = statetype != A
trigger1 = ctrl
trigger2 = (stateno = [200,299]) || (stateno = [400,499])
trigger2 = stateno != 440 ;[Statedef 440](足払いのステート)ではない時
trigger2 = movecontact

 
修正後

;横距離は39まで届き、高さは130まで届く、発生は遅いが当たれば高く打ち上げる
[State -1, 強カンフーアッパー]
type = ChangeState
value = 1110
triggerall = roundstate = 2
triggerall = p2statetype != L
triggerall = p2bodydist X = [-10,39]
triggerall = p2bodydist Y >= -130
trigger1 = statetype != A
trigger1 = ctrl
trigger1 = p2statetype = A
trigger1 = p2movetype != A
trigger1 = random <= 300
trigger2 = (stateno = [200,299]) || (stateno = [400,499])
trigger2 = stateno != 440 ;[Statedef 440](足払いのステート)ではない時
trigger2 = movehit
trigger2 = p2statetype = S
trigger2 = random <= 500


発生が遅めなのでカウンターでは使わず、「p2movetype != A」の安全だと思われるときに出す

 

またコンボの方でも地上の相手を打ち上げ、エリアルコンボに行くために使うことを想定している
と言うのも発生が遅いので、空中の相手にコンボで出しても当たる前に着地されている可能性があるため
空中の相手に対してコンボで出すのならば、弱カンフーアッパーを使った方が良い

 

打点が高いのはスマッシュカンフーアッパーとおなじなので、当然しゃがんでいる相手には当たらない
なので立ち状態の相手にだけ使用し、ガードされると不利なのでmovehitの時だけ使うことに