トピック
beans taku-binzu

アドバイスお願いします。

「↑↓ボタンで矢印を動かし、Aボタンを押すと矢印が指した番号のBGMを再生する」というプログラムを作っています。(添付画像参照です。) ですが、自分の技術力不足で上手くいきません。アドバイスを下さい。
0そうだね
プレイ済み
返信[1]
親投稿
beans taku-binzu
画像1
0そうだね
プレイ済み
返信[2]
親投稿
beans taku-binzu
画像2 [追記] 自分は、初心者講座は一応大体攻略しました。
0そうだね
プレイ済み
返信[3]
親投稿
ケイン KEIN.HORGAN
GOSUB したらRETURN しないといけません。 今回は、@CHOOSE 内でGOTO してしまっているので、そこでRETURN がされなくなってしまいます。 対処方法は色々とありますが…… 1.GOTO @A する代わりに、GOSUB @A として、@A をサブルーチン化する(@A のところには、RETURN を加えてください) 2.GOTO @A する代わりに、「上下キーが押された」事を示すフラグ変数を準備して、それにチェックを入れる。 メインループ内で、そのフラグ変数をチェックし、もし上下キーが押されていたら、@A を呼び出す などでしょうか。
0そうだね
プレイ済み
返信[4]
親投稿
スー thanks_0u0
きっと上手く動かない原因は、上下ボタンを押したときにVSYNCが飛ばされちゃってることだと思います。 ケインさんも言っている通り、解決には色々方法があるのですけれど、折角LOCATE用とカーソル用の変数が分かれているのですし、@Aは無くしちゃって@PRINTとまとめても良いかもしれません(・u・) @PRINTの、Y=SC+2、を通る前までは、SCは新しい番号になってるけどYはまだ前のYのまま……なので、Y=SC+2の直前に@Aの中身を持って来れば、きっと上手く矢印が消せますよ( ´ ▽ ` )ノ あっ、質問をするときは、プログラムリストがあっても「どううまく動かないのか」っていうのを一緒に言っておく方が回答が貰いやすいかもしれませんよ( ´ ω ` )
0そうだね
プレイ済み
返信[5]
親投稿
ΖΕΧ ZEX256
('_')
0そうだね
プレイ済み
返信[6]
親投稿
beans taku-binzu
アドバイス、ありがとうございました! GOTO @をGOSUB @にしたら、うまくいきました!
1そうだね
プレイ済み