トピック
てっみえ qwdfbnjkop

IF文で、地面(Y=176)を越えようとしたらその座標に留まる、という命令、つまり着地のソースは分かるんですが、地面に着地した「 瞬間 」に立ち絵に戻す方法が分かりません。

誰か例を下さい。
0そうだね
プレイ済み
返信[1]
親投稿
てっみえ qwdfbnjkop
立ち絵。
0そうだね
プレイ済み
返信[2]
親投稿
ようすけ youslzh
Yが176を越えたら176にする。 IF Y>176 THEN Y=176
0そうだね
プレイ済み
返信[3]
親投稿
てっみえ qwdfbnjkop
ジャンプでSPCHR
0そうだね
プレイ済み
返信[4]
親投稿
てっみえ qwdfbnjkop
あ、そうじゃなくて、
0そうだね
プレイ済み
返信[5]
親投稿
てっみえ qwdfbnjkop
着地の瞬間にSPCHRで出来ないので ジャンプの絵のまま (着地しているときにSPCHRは出来るんですけど、着地した「瞬間のみ」SPCHRが出来ない)
1そうだね
プレイ済み
返信[6]
親投稿
ヤッピー yappy0305
ちょっと面Deけど...。 IF Y==172 シャンプしているスプライトを消して 立ち絵のスプライトを同じ座標に表示する。
0そうだね
プレイ済み
返信[7]
親投稿
みむ*mim hidemimtp
「着地のソース」ってとこに単純にSPCHRを書けばそれでOKな気がしますが、なぜジャンプ絵のまま着地になってしまうんでそう? 「着地した瞬間」といっても、メインループ内にVSYNCとSPOFSがると思うので、着地時にSPCHRだけすればいけると思いますが・・・
0そうだね
プレイ済み
返信[8]
親投稿
otta777 otta777a
着地の瞬間はジャンプ中のフラグを使えば判別できるかと 思います。 ジャンプするときにジャンプ中のフラグをONして ジャンプ中のフラグがONの時にYが176を越えた時が 着地した瞬間となりこの時にSPCHRで立ち絵に戻せば 良いかと思います。
0そうだね
プレイ済み
返信[9]
親投稿
てっみえ qwdfbnjkop
正直、SPCHRのタイミングが分からないんです。 IF Y==176 THEN Y=176 の後にSPCHRを付けてみたり↓ IF Y==176 THEN Y=176:SPCHR 0,0 など、いろいろ試してみましたが、 うまくいきませんでした。 とにかく、まずは皆さんの方法を試してみたいと思います。
0そうだね
プレイ済み
返信[10]
親投稿
ΖΕΧ ZEX256
IF Y==176 THEN Y=176 って意味ないよ 自分で書いたコード理解してます? ようすけさんが書いている判定式に何故しない
2そうだね
プレイ済み
返信[11]
親投稿
てっみえ qwdfbnjkop
あ、そっか Y>176 だったw
0そうだね
プレイ済み
返信[12]
親投稿
みむ*mim hidemimtp
どうしても分からなければ、ソース画面の画像を張るとみなさん分かると思いますよ。
0そうだね
プレイ済み
返信[13]
親投稿
てっみえ qwdfbnjkop
0そうだね
プレイ済み
返信[14]
親投稿
ようすけ youslzh
アニメーションが噛んでるなら Y>=176 の方がいいかもしれない Y>176 だと落下中にピッタリ176になった場合に着地絵に切り替わらず1フレーム絵が遅れる。 あと変数Kってなんじゃろ?
0そうだね
プレイ済み
返信[15]
親投稿
てっみえ qwdfbnjkop
k=巨大化 (1で巨大化中) p=パワーアップ (1でスーパーマリオになっている)
0そうだね
プレイ済み
返信[16]
親投稿
ようすけ youslzh
SPHOMEで原点座標値Yをキャラ絵の高さHEIGHT値に変えてやれば巨大化かパワーアップかの条件式要らなくなるかと。 SPHOME ○,(キャラの幅÷2),(キャラの高さ) 一概に良いとは言えないのでオススメレベルで。
0そうだね
プレイ済み
返信[17]
親投稿
みむ*mim hidemimtp
ようすけさんのおっしゃる通り、座標は足元にした方がいいかも知れませんね。 で、 IF JP==0 THEN SPCHR 0,(通常キャラ番号) としているのですか?
0そうだね
プレイ済み
返信[18]
親投稿
てっみえ qwdfbnjkop
いや、今はSPCHR付けてません
0そうだね
プレイ済み
返信[19]
親投稿
みむ*mim hidemimtp
着地でジャンプフラグを0にされてるのでしたら、 そのタイミングでSPCHRすれば解決するのでは?
0そうだね
プレイ済み
返信[20]
親投稿
てっみえ qwdfbnjkop
あ、なるほどw ありがとうございました! 他の方も意見をありがとうございました!
0そうだね
プレイ済み