投稿
Mr.T.S taka828
INPUT命令が2つあるところでINPUT命令が1つ目がすぐに終わって2つ目にいってしまうのですがどうすればいいですか。(未更新)
1そうだね
プレイ済み
返信[1]
親投稿
インプットのまえに、 WAIT 10 を入れる。
0そうだね
プレイ済み
返信[2]
親投稿
くろちく FoliageLamp
初心者なので、過不足あると思いますが。 PRINT"ひとつめのすうじは" INPUT NO1 PRINT"ふたつめのすうじは" INPUT NO2 PRINT NO1+NO2
0そうだね
プレイ済み
返信[3]
親投稿
Mr.T.S taka828
解決しませんでした
0そうだね
プレイ済み
返信[4]
親投稿
くろちく FoliageLamp
打ちこんで試してみました 対策はBUTTON(1)→(3)にしてみてください。
0そうだね
プレイ済み
返信[5]
親投稿
くろちく FoliageLamp
原因の理解は、ちょっとあいまいなのですが。 1と2では、ボタンの処理が進んでしまうようなので 押してる認識が (0)押され続けてる状態 押された瞬間(1)リピート機能 押された瞬間(2)リピート機能なし (3)放された瞬間 これの、押されている状態の処理が早くて? 進んでしまうのじゃないかと思います。 あっきーさんのWAITを入れるでも対策できました。
0そうだね
プレイ済み
返信[6]
親投稿
直感では二人の言うようにWAITを入れれば良さそうなんですけどねー…
0そうだね
プレイ済み
返信[7]
親投稿
説明書9「操作方法」にAボタンは、ENTERキーとして機能すると書かれています。Aボタンが離されるまで待ち時間を取るか、ボタンを変える必要があると思います。
0そうだね
プレイ済み
返信[8]
親投稿
TERA(LL) tera0413
goto@aでループする前(8の直前)に vsyncが必要なのでは
0そうだね
プレイ済み
返信[9]
親投稿
なんとなくわかってきたような気がします。 AボタンはENTERということは知っていたのですが、きちんとWAITを入れておけばボタン判定はされないものと思っていましたが、おそらくINPUT時のキーリピートで入ってしまうんじゃないでしょうかね? なので始めにLAMPさんが提示したように、 1 BUTTON(3)にしてリリースを基点にする 2 INPUTの前に確実にAボタンが放されているかどうかのリリースチェック入れる 3 決定ボタンAボタンから変える などでAボタンが確実に離したタイミングでINPUTに入らないと結局駄目なような気がしてきましたね。
0そうだね
プレイ済み
返信[10]
親投稿
つまり、インプットに入る前に、Aボタンが離されていればいい。 次の内どれかを試してみてください。 ・WAIT 10を入れる。 6分の1秒のあいだ待つ。 ・BUTTON(2)→BUTTON(3)にする。 離されたら実行。
0そうだね
プレイ済み
返信[11]
親投稿
otta777 otta777a
1つめの数字を入力した後に WHILE BUTTON(0)!=0:WEND を入れてAボタンのオフチェックを取ると良いと思います。
0そうだね
プレイ済み
返信[12]
親投稿
Mr.T.S taka828
皆さんがわかりやすく教えてくれたおかげで完成しました!
0そうだね
プレイ済み
返信[13]
親投稿
話が落ち着いた後で蒸し返すようで申し訳ありません。以下に述べることは、善し悪しの問題では無く、プログラミングの好みの問題なので、気を悪くしないでください。プログラムの善し悪しは、正しく動くかだと私は、考えます。 21行から24行までBUTTON(3)関数が4連続で呼び出されています。これは、後ろのボタン押下判定と関連したものと思います。しかし、同一フレーム(約1/60秒)の間、読みとるボタンの状態は変わりません。したがって、1回読み出せば、同一フレーム内であれば、使い回しが出来ます。よって、22~24行は不要です。その代わり、26から28行の変数B,X,YをAに変えます。また、21行目の前か後にWAITを入れます。これで、同一フレーム内での処理を1回に限定します。58から61行も同様に変数Qだけを使えば良いと思います。その他の、WAITは、演出として値を決めれば良いと思います。
0そうだね
プレイ済み
返信[14]
親投稿
Mr.T.S taka828
これでどうですか?(NEWのほうです)
0そうだね
プレイ済み
返信[15]
親投稿
はい、いいと思います。私の好みに合わせていただき、ありがとうございます。もうひとつ、「WAIT 1」を20と21、54と55間に追加すれば、いいと思います。ゲーム系の方は、BUTTON関数の後にWAITを置く方が多いようです。
0そうだね
プレイ済み