忍者ブログ
なんかもういろいろ
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

今回は様々な速度や軌道が変化する物に関する解説をば

飛び道具でも突進技でも、様々な軌道があるのが普通ですね
単純に一直線に飛ぶ物もあれば、放物線を描く物
ホップする物だってあるだろうし、バウンドする物だってあります

飛び道具や突進技の作り方についてはすでに書きましたので
必要な部分だけ書いてみましょうか

さて、以前説明した通り、移動させる命令は
velsetかveladdを使います

まずは放物線を描く物から行きますと
ついtype = Sにして、その物体に重力を掛ければ良いと思いがちですが

これをやると、初期の設定通りの重力しか掛けられない為
ゆっくり落としたり、すばやく落としたりという事が出来ません

なので、ここではtype = Nに設定する事から始めます

普通の放物線を描くには

[State 100]
type = velset
trigger1 = time = 0
x = 4

[State 101]
type = velset
trigger1 = time = 0
y = -4

これで斜め45度に一直線に上がりはじめますね

で、放物線を描かせる為に

[State 102]
type = veladd
trigger1 = 1
y = 0.2

こんなですか

addについては説明しましたが、再度

この場合、1フレームに0.2の速度を増加させますので
最頂点に到達するのは20フレーム時ですね
その後降下し始めます

さて、これだけだと、地面にめり込んでも落下を止めませんので

[State 103]
type = changestate
trigger1 = pos Y <= 0
trigger1 = time >= 20
value = ???

こんな構文でchangestateしましょう

一見timeは必要無さそうに思いますが
posだけで設定すると、飛び上がる前にchangestateしてしまいます

この場合放物線を描いてから地面に接地した時点で終了ですが
2,3回バウンドする場合はどうするかというと

最初のvelsetを

[State 104]
type = velset
trigger1 = pos Y <= 0
y = -5

こっちに変えて、changestateを

[State 105]
type = changestate
trigger1 = time >= 100
trigger1 = pos Y <= 0
value = ???

と、timeを長く取ってやれば
バウンドしますね

もっとちゃんと作りこみたい場合
pos Y <= 0 で changestateして
飛び道具であれば地面に接地した時点でムニョンと変形した絵を出したり
ヘルパーであれば着地した絵を出したりして
再度飛び上がるステートに移行してやる方がいいですな
 

ホップする場合はveladdのyの数値をマイナスにしてやれば
ぐーっとホップします

この場合はchangestateのtriggerにposを加えず
timeだけで取ってやれば良いです

veladdはこのように放物線を描く為に使う事も出来れば
ゆっくりと速度を落とす場合にも使えますね

直進した物体がゆっくりと速度を落とす場合

[State 106]
type = veladd
trigger1 = time > 0
trigger1 = vel X > 1
x = -0.1

このように使えば、射出してから50フレーム時には
速度1まで減速してくれます

trigger1 = vel X > 1というトリガーを入れて限定しているのは
こうやって切ってやらないと、バックし始めるからですね

このvel X の数値を0にすれば最終的に停止しますし
逆に正数を入れてやれば加速します


triggerで1を指定してますけど
例えば

trigger1 = time > 0
trigger1 = time < 30

と、時間を限定して指定する事も出来ますね

[State 107]
type = veladd
trigger1 = time > 0
trigger1 = time < 30
y = 0.5

[State 108]
type = veladd
trigger1 = time > 30
trigger1 = time < 60
y = -0.5

こんな構文にしてやれば
放物線を描いて落下しだしたかと思えば
再度ホップし始めるという、すごい変化球になりますね

これを見て気付いた方も居ると思いますが
誘導弾も作れます


[State 108]
type = veladd
trigger1 = p2dist X > 0
x = 0.2

[State 108]
type = veladd
trigger1 = p2dist X < 0
x = -0.2

[State 108]
type = veladd
trigger1 = p2dist Y > 0
y = 0.2

[State 108]
type = veladd
trigger1 = p2dist Y < 0
y = -0.2

すっごい簡易ですが
これで誘導弾になりますね

波動拳のような、画像が横向きじゃないとおかしい物の場合は
角度や向きを変更してやらないといけませんが
それはまた今度

拍手[4回]

PR

今回は、みんな出したいストライカー編です

以前、ヘルパーステートを利用した
飛び道具の作り方について書きましたが
それを応用する方法で作ります

というか、ヘルパーを使った飛び道具の方が
飛び道具風のヘルパーと言えますな

ヘルパーには、これも以前書いた、hitoverrideも必要ですよ、バグ防止の為

さて、そのヘルパーがどんなヘルパーか
まず考えておく必要がありますね

飛び道具との差、ですか

まず、飛び道具と違って、攻撃を受けてその場で消滅するというだけではなく
ダメージモーションで吹き飛ばされないといけません

横一直線に飛ぶ訳ではないですし、背後などから発生して地面に立ち
そこから攻撃、などという事も多いです
ものによってはそのまま居続け、操作可能なんて事も

つまり、はるかに複雑に動く訳です

今回は

「背後の空中から、ジャンプ攻撃をしながら飛び込んで、着地した後飛び去る」

というヘルパーを作る方法を書いてみます

それを踏まえて今回用意する物

・操作キャラのヘルパー呼び出し用モーション
・ヘルパーの飛び込み攻撃モーション
・ヘルパーの着地モーション
・ヘルパーのダメージモーション
・ヘルパーの飛び去りモーション

・hitoverrideの知識
・velの知識
・helperの知識

ですね

では実際に書いてみますが
今回は以前やった物は略しますよ


[Statedef 1000]
type    = S                     
movetype= I                 
physics = S      

[State 1000,1 ヘルパーを出す]
type = Helper
trigger1 = time = 0
name = "helpersann"  ;ちゃんと名前を付けてあげるとバグが出た時便利です
stateno = 1005       ;
ID = 1005            ;ヘルパーのIDナンバー
helpertype = normal  ;ヘルパーの属性:画面スクロールの影響を受けるか否かを決める
                     ;(Player=影響有り・画面外に出られない Normal=影響無し・画面外に出られる)
pos = -100,-100 ; ※下記注意         ;ヘルパーの出現位置
postype = back         ;ヘルパーの最初に出る軸位置の属性(Explodのpostypeと書き方は同じだが効果が少し違う)
facing = 1
keyctrl = 0          ;ヘルパーがコントロール可能かどうか(0=操作不可・1=操作可能)
ownpal = 0           ;ヘルパーが(PalFXなどで)本体の色が変わった時に一緒に変わるかどうか(Explodのownpalと一緒)
supermovetime = 30
pausemovetime = 30
size.xscale = 1      ;ヘルパーの横のサイズ
size.yscale = 1      ;ヘルパーの縦のサイズ
sprpriority = -2

[State 1000,2]
type = changestate
trigger1 = time = 30
value = 0


まず最初のヘルパー呼び出しステートです

画面外から登場するのでhelpertype = normalですね
斜めに落ちてくる訳なのでposのY軸を高めに設定しておきましょう


ここは飛び道具の時にやったのでこれくらいですか、説明する部分は
大切なのはヘルパーステートですしね

という件のヘルパーステートがこれです


[Statedef 1005]
type    = S                     
movetype= I                 
physics = N

[State 1001,1]
hitdef(略)

[State 1001,2]
type = velset
trigger1 = time = 0
x = 5
y = 5

[State 1001,3]
type = HitOverride
trigger1 = 1
attr = SCA,AA,AP,AT
stateno = 1010
time = 1

[State 1001,4]
type = changestate
trigger1 = pos Y >= 0
value = 1006


上のhelperのstatenoの項目で書いたステート1005番ですね

physics = Nが重要で、SやAにすると地面に接地した時分身しますよ
間違いなくNにしましょう

で、繰り返しになっちゃいますが、斜めに落ちてくるので斜め向きのvelsetです

それとここでhitoverrideの登場です
なんで当身用のステートがこんなとこで必要なのかと言いますと
ヘルパーは接地すると本体になっちゃいますし
ダメージを受ければ当然、本体のダメージモーションに飛びます
ゆえに、ヘルパーがダメージを受けたらヘルパーのダメージモーションに
当身を使う事で飛ばす訳です

では、まずは着地ステートです


[Statedef 1006]
type    = C                     
movetype= I                 
physics = N
anim = ??? ;ヘルパーの着地モーションを
velset = 0,0 ;停止させます

[State 1001,3]
type = HitOverride
trigger1 = 1
attr = SCA,AA,AP,AT
stateno = 1010
time = 1

[State 1001,4]
type = changestate
trigger1 = time = 20
value = 1007


ここは書いたまんまです、着地してからジャンプするまでの間です
その間攻撃された時の為にちゃんとhitoverrideをつけときましょう

で、飛び去り用のステート


[Statedef 1007]
type    = A                     
movetype= I                 
physics = N
anim = ??? ;ヘルパーの飛び去りモーションを

[State 1001,2]
type = velset
trigger1 = time = 0
x = -5

[State 1001,2]
type = velset
trigger1 = time = 0
y = -5

[State 1001,2]
type = veladd
trigger1 = time >= 5
y = 0.2

[State 1001,3]
type = HitOverride
trigger1 = 1
attr = SCA,AA,AP,AT
stateno = 1010
time = 1

[State 1001,4]
type = destroyself
trigger1 = backedgebodydist < -10


ここはちょっと違いますね

veladdを使っているのは放物線を描かせる為です

で、見慣れない奴を

destroyselfとは、ヘルパーを消す命令です
トリガーに入っているbackedgebodydistは
後ろの画面端との距離を取る物で
画面端より10ピクセル奥まで行った時に発動するようになってます

で、次がダメージモーション用です


[Statedef 1010]
type    = A                     
movetype= I                 
physics = N
anim = ??? ;ヘルパーのダメージモーションを入れましょう

[State 1001,2]
type = velset
trigger1 = time = 0
x = -5
y = -5

[State 1001,2]
type = veladd
trigger1 = time >= 5
y = 0.2

[State 1001,4]
type = destroyself
trigger1 = backedgebodydist < -10


ほとんど飛び去りステートとおんなじですね

でもこれがとても重要で、これがないと
ダメージを受けたら分身しちゃいますし
うっかりヘルパーが投げられた上で分身、とかなると
相手側に不具合が出る可能性もあります

hitoverrideはp2statenoのあるを無効に出来るという
効果がありますので、ヘルパーを作る場合には必須です

で、ここでもう一個、分身対策に


[State -2]
type = destroyself
trigger1 = ishelper
trigger1 = stateno = 0


これを-2ステートにつっこんどきましょう

これは、ステートナンバー0の時に
プレイヤーがヘルパーであればdestroyselfするという物です

なんの為に必要かと言うと、hitoverrideはreversaldefよりも
弱い命令なので、攻撃判定がぶつかった時に分身してしまいます

最悪分身してしまった時、そのヘルパーは本体の分身として
地上で通常モーションを取りますので消滅するという寸法です


難しいですけど、やっぱ一度はやりたいストライカー
覚えてしまえばかなり複雑な事も出来るようになりますし
演出にも使えます

拍手[1回]

飛び道具には沢山種類がありますが
今回は、本体から射出される固体系
つまり波動拳のタイプと
レーザー系で行ってみましょう

まずは波動拳タイプから

必要な物は

・飛び道具を撃つ本体の画像
・飛んでいる飛び道具の画像
・当たった時の画像

ですね

それを作った上で

今回使う命令、かつ重要なのは

helper
destroyself

です
他にも作る方法はいっぱいありますけど
一番簡単な方法で

helper : ヘルパーを呼び出す為の命令です
destroyself : ヘルパーを消す為の命令です


では組んでみます

仮に、前述した飛び道具を撃つ画像を1000番
飛び道具自体の画像を1010番
飛び道具が消える画像を1020番に登録したとして話を進めます


;まずは飛び道具を打ち出すステートから
[Statedef 1000]
type = S
movetype = A
physics = S
anim = 1000

[State 1000]
type = Helper
trigger1 = time = 10
helpertype = normal ;ここをplayerにすると画面から出られないヘルパーになります
name = "tobidougu";適当で良いですけど分かりやすい名前を付けましょう
ID = 1010
stateno = 1010;飛び道具のステートナンバーです
pos = 0,-40;射出される位置を指定します x,y の並びになってますxは正数で前方、yは正数で下方向になります
postype = p1;どこを基準にposを指定するかを決めています、この場合プレイヤー1ですね
facing = 1
supermovetime = 0
pausemovetime = 0

[State 1000,1]
type = changestate
trigger1 = time = 30
value = 10
ctrl = 1


これで10フレーム目にステート1010番のヘルパーが出現します

ここまでの内容は

・本体が1000番のアニメ
・ステート1010番を、技が始まって10フレーム目に
 Xが0、Yがー40の位置に出現させる
・30フレームで通常モーションに戻る


;次、飛び道具自体のステートです
[Statedef 1010]
type = A
movetype = A
velset = 4,0;速度の指定ですよ
physics = N;ここをNにしとかないと摩擦で止まっちゃいますし、高い位置で出現すると落ちてきます
anim = 1010

[State 1010,1]
type = hitdef
(略)

;ここでhitoverrideを仕込みます、当身されない様にというのが一つ
;誤作動を減らす為ってのも一つ、また、相手の打撃や飛び道具に触れると
;消えるって場合の為ですね
[State 1010,2]
type = hitoverride
trigger1 = 1
attr = SCA,AA,AP,AT
stateno = 1020;消滅用のステートです
time = 1

[State 1010,2]
type = changestate
trigger1 = movecontact = 1;飛び道具が相手に触れた時、というトリガーです
trigger2 = frontedgebodydist < -10;正面の画面端を10ドット通り過ぎた時、というトリガーです
value = 1020;消滅用ステートですね

;この他、timeのトリガーを使って時間で消したりなんか出来ますね


;さて、次は消滅用のステートです
[Statedef 1020]
type = A
movetype = I
velset = 0,0;止めます
physics = N
anim = 1020

[State 1020]
type = destroyself
trigger1 = animtime = 0;アニメーションが終わった時、というトリガーです


はい、以上で完成ですね

見て分かったかもしれませんが
これでストライカーも作れます
ストライカーはもうちょっと複雑で、これの上位版ですね
ストライカーについてはまた後日書く事にして

次はレーザータイプです

まず、レーザータイプの場合
画面端まで貫通する訳ですから、相手に当たっても消えません
今回は消滅用には、レーザーの根っこが通り過ぎる絵を用意しましょう

さて、最初の射出するステートは同じです、問題は
レーザー用のステートですね

元の1010番とどう違うかを見てみましょう


[Statedef 1010]
type = A
movetype = A
velset = 0,0;速度不要です
physics = N
anim = 1010

[State 1010,1]
type = hitdef
(略)、ですが

今回は

ground.cornerpush.veloff = 0
air.cornerpush.veloff = 0
down.cornerpush.veloff = 0
guard.cornerpush.veloff = 0
airguard.cornerpush.veloff = 0

これをhitdefに付け加えましょう
地上で、空中で、地上ガードで、空中ガードで
画面端で相手にガードされた時押し戻される速度を指定する命令です

これが無いと当てたらレーザーが押し戻されちゃいますよ

[State 1010,2]
type = hitoverride
trigger1 = 1
attr = SCA,AA,AP,AT
stateno = 1020;消滅用のステートです
time = 1

[State 1010,2]
type = changestate
trigger1 = time = 30;この場合、相手に当たって消える、とか、画面端で消える、とかは不要ですね
value = 1020;消滅用ステートですね


次の消滅ステートも同じでOKです
(絵は一緒じゃ駄目ですよ、念の為)


これでレーザーも完成です


当身とかに比べたら大分簡単ですよね
これを覚えれば、ストライカーの呼び出しも出来るようになります

拍手[1回]

var 便利な物です、とても

でも最初は何の事やらさっぱり分からん所です

まずは命令から

・varadd varの数値を増やします

・varset varの数値を指定します

はい、まだなんの事やらです

えーと

var(5) = 1

例えばこれ

これは、var(5)が1の時、って事です
もっと砕いて言うと、varの5番が1の時、です

これをtriggerとして使う訳ですが
varは最初からどこかに存在している物では勿論無く

自分でどこかに設定する必要があります

例えば

[State -2];これは常に作動するステートです
type = varadd
trigger1 = stateno = 1000
var(6) = 1


こんなのがあったとします

これは、ステート1000の時には
「1フレームに1ずつvar(6)を増やす」
という命令になります

つまり、ステート1000が始まって32フレーム目の時には
var(6) = 32 になります

これってどんな時に使うのかと言いますと

例えば、技が終わって100フレーム目に
始動させたい物があったとします

ですが、そのステートの長さが60フレームしかなかったら
100フレームには届かず、当然、始動しません

こんな時、例えば

[state -2]
type = varset
trigger1 = stateno = 1000
var(?) = 1

↑ステート1000になった時var(?) = 1をセット

[state -2]
type = varadd
trigger1 = var(?) = 1
var(x) = 1

↑var(?) = 1の時var(x)を1フレーム1ずつ増加

として

[state -2]
type = changestate
trigger1 = var(x) = 60
value = 1001

↑var(x) = 60 つまり、60フレーム後にステート1001が発動

という事が出来る訳です

これをタイマーに使う事も出来ますね
上記したvar(x)を600などとしておいて
ステート終了後600フレーム後、つまり10秒後に何らかのステートが発動する

とかですね、それとか、ゲージ使用の一定時間状態変化の
タイマーなんかに使ったりとか

これはあくまで一例です
これを利用すれば、ステート内のみのスイッチ操作に
縛られる事なく、様々なステートを利用出来る訳です

拍手[2回]

当身です

当身、欲しいですよね、当身
当身技は魅惑の技ですね

当身技について先に説明しておきましょう

当身技モーション発動中に相手の攻撃を受ける事で
攻撃が発生する技、それが当身技です
カウンターだと理解するのが早いですかね

相手の攻撃を読まないと発動しない
つまり、連続技に組み込めないという欠点や
タイミングが外れれば無防備になってしまうというリスクがある為
投げ技よりもリスクが高いとも言えますが
その性質上、とても魅力的な技ですよね

さて今回は、当身について軽く触れます
当身のプロセスから簡単に考えてみましょう

まずは一番簡単な「打撃判定が出る当身技」から

コマンド入力→当身モーション開始→相手の攻撃がヒット→当身発動

こうですね

これだけなら大して難しい事はありません
当身モーション開始、の部分までは、通常の必殺技と変わりませんからね

当身には、hitoverrideという命令を使います
reversaldefは使いません

この命令に対する誤解が結構あるようなので
少しこの二つについて説明します

hitoverrideとは

操作キャラに相手の攻撃が当たった時に発動する命令です

reversaldefとは

操作キャラの攻撃判定と相手キャラの攻撃判定がぶつかった時に発動する命令です

つまり

hitoverrideはクロスカウンターのような時に
防御的に使います

reversaldefは拳と拳がぶつかるような時に
相殺であり、攻撃的に使う物で、もっと言うならhitdefがあるステートで無いと意味がありません

では

type = HitOverride
trigger1 = 1            ;このトリガーの場合「ステート中は常に」ですね、技の後に隙が欲しいなら time = 0などで指定しましょう
attr = S,AA            ;どんな技を取るか、です、この場合(相手の)「S(立ち状態)のAA(全ての打撃)」です
slot = 1                ;スロットです、条件を増やしたい場合に使用します(ワタクシは使った事無いです)
stateno = 0            ;攻撃を受けた時に飛ばすステートです
time = 1                ;当身受付時間です
forceair = 0           ;これを1にすると、食らった時に自キャラがふっとびモーションになります

こんなんです、注釈も付けてみました

上のhitoverrideは

・ステートが始まってから常に(・trigger1 = 1  ・time=1)
・立ち状態の全ての打撃を受け付ける(・attr = S,AA)
・上記の打撃を受けたならステート0に移動する(・stateno = 0)


ここでは仮にhitoverrideをつけたステートをstatedef1000
攻撃判定のステートをstatedef1001とします

~レシピ~

[statedef 1000]
type    = S
movetype= H   ;当身でもダメージを受けたい時はHを、受けたくない時はIを使いましょう
physics = S
juggle  = 1
ctrl = 0
anim = ??

[State 1000,1]
type = HitOverride
trigger1 = time = 0
attr = SC,AA  ;*
slot = 1
stateno = 1001
time = 30
forceair = 0

[State 1000,2]
type = changestate
trigger1 = time = 60
value = 0
ctrl = 1

これで
・相手の攻撃を受けるとダメージを受ける
・立ち、しゃがみの全ての打撃技を取れる
・開始30フレームの間は当身受付時間
・当身受付時間中に攻撃を受けた時statedef1001に飛ぶ
・残り30フレームは無防備
・60フレームで立ち状態に戻る

という状態です

*このattrには、○△□,●▲,●▲,●▲、という風に組み合わせて指定出来ます
最初の○△□は、SCAのいずれか、もしくは全部を指定出来ます、S=立ち、C=しゃがみ、A=ジャンプ、です
次の●は、A=「すべての」、N=「通常の」、S=「必殺技の」、H=「超必殺技の」、で
次の▲は、A=「打撃」、P=「飛び道具」、T=「投げ」です

上記のSC,AA 、というのは 「立ち・しゃがみ」、「すべての・打撃」 となりますね
SCA,AA,AP,AT、という指定も出来ます、これは、「立ち・しゃがみ・ジャンプ」、「全ての・打撃」、「全ての・飛び道具」、「全ての・投げ」、です
もう一例出すと
SA,NA,SP,AT、ならば、「立ち・ジャンプ」、「通常の・打撃」、「必殺技の・飛び道具」、「すべての・投げ」 となります

更に後ろにある

statedef1001は、例えば

[statedef 1001]
type    = S
movetype= A
physics = S
juggle  = 1
ctrl = 0
anim = ??

[State 1001,1];無敵でいいですよね
type = NotHitBy;無敵を指定する命令です
trigger1 = time = 0
value = SCA,AA,AP,AT
time = 60

[State 1001,2];確実性を増す為に時間停止も
type = Pause
trigger1 = time = 0
time = 30
movetime = 30

[State 1001,3]
type = hitdef;これは流石に略しますよ
(略)

[State 1001,4];さらにガード不可
type = AssertSpecial
trigger1 = 1
flag = unguardable

[State 1000,2]
type = changestate
trigger1 = time = 60
value = 0
ctrl = 1

こんな感じですか


さて、こうしちゃ駄目だよってミスを含めて書きますね

hitoverrideですが
まず、ここでtriggerが1になっているのに
timeを30とかにしちゃうとどうなるか

triggerは「ステート中常に」なのに30フレームも当身受付が続くと
当身ステートが終わってから29フレームも当身受付が続きます
「当身モーションが終わったのに当身を取っちゃった」とかいう不具合が起きます

また、見てて気付いた人も居ると思いますが
スーパーアーマーにも使えます
ガードポイントにするにはもう一工夫必要ですが
突進するスーパーアーマーを作りたいなら

hitoverrideで同じステート、この場合は1000に再度飛ばす訳です
そうすると、ダメージを受けたら1000に戻る訳です

ただ、こうすると、ダメージを受けると戻る、受けると戻る、で
えんえん食らっちゃうので

varを使って一定時間で強制移行するようにしちゃいましょう
-2stateを使うのが一般的ですかね

[state -2]
type = changestate
trigger1 = stateno = 1000
trigger1 = var(?) = 60   ;?には使ってないvar数値を
value = 1001

[state -2]
type = varadd
trigger1 = stateno = 1000
var(?) = 1

それと、statedef1000に
[state 1000,3]
type = varadd
trigger1 = time = 0
var(?) = 5

statedef1001に
[state 1000,5]
type = varset
trigger1 = time = 0
var(?) = 0

varをリセットしてます
こうしてれば、60フレームの時点で強制的に技に移行します

あ、これだと当身技にはなりませんから気をつけて

ここから更に当身に派生するようなら
もうちょっと凝る必要がありますね


hitoverrideを使った当身の作り方を書きましたが
それに対する補足やアーマーについての説明をば

さらにhitoverrideについて補足しますと

両者がhitoverrideとp2statenoのどちらかを持っている場合、その攻撃は無効になります

これは何故なのかというと、hitoverrideもp2statenoも
一般的には投げの属性に近いのです

投げと投げが同時に発生した時、両方を処理する事は出来ませんよね?
なので、この場合は無効になっちゃうのです

見た目ではそうじゃないですけど、内部的には投げと投げがぶつかった状態に近いのです

投げ外しはどうするのか?という疑問もあると思いますが、これはまた今度

当身を破るにはhitdefの代わりにprojectileを使うのが普通なんでしょうけど
hitdefにAPが入ってれば破れません

じゃぁどうするかというと、ここでtargetstateという命令を使います
これもp2statenoに近い命令なんですが
hitoverrideに干渉されないという特性があります

でもこれだけじゃ駄目なんですね
うっかりヘルパーの飛び道具とかストライカーに当てると
消えない分身が出ちゃいますから

当て身攻撃を破る、スト3のスーパーアーツなどと同じタイプの超必や
単純に当身状態を投げたいって場合なら
こんな構文になります、これをhitdefがあるステートに突っ込めばよいでしょう

[state ???]
type = targetstate
trigger1 = movehit = 1
trigger1 = !ishelper
value = ???

勿論やられステートを作らないと駄目ですよ
やられステートは、当身後に出る攻撃をガード不能にして時間停止を長めに作れば
即座にステート0に飛ばしちゃっても良いです

それと前に書いてなかったんですが
attrにSCAを使うとちゃんと作用してくれません

全部入れたかったらslotを増やしましょう

拍手[5回]

HOMENext ≫
カレンダー
03 2024/04 05
S M T W T F S
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
最新記事
(04/22)
(04/17)
(04/01)
(03/19)
(11/05)
ブログ内検索
最新コメント
[11/26 ななし]
最新トラックバック
プロフィール
HN:
カス
HP:
自己紹介:
臨海のハチャメチャファイター、ご飯を食べてウンコに変える錬金術師、絵とか描く
アクセス解析
カンダタ

Copyright © [ 描く打ち ] All rights reserved.
Special Template : 忍者ブログ de テンプレート
Special Thanks : 忍者ブログ
Commercial message : [PR]