プレイ日記
とるて alulu-ami157
【超初心者のプチコン日記 #14】 ちょっと困りました。 1つ目はBUTTIONを使ったテスト用プログラムを作っているのですが、うまく働きません。最初にAボタンを押して、続けて2回目にまたAかBボタンでわかれるはずが、2回目はもうAボタンを押した判定になってます。 何言っているんだこいつ…と思う人は写真をご覧ください。 多分1回目のAボタンの判定がずっと残っちゃってるかなと思います。 そして2つ目は、FOR…NEXTの使い方がわからないです↓↓ 調べても何言ってるかわからないです(( 要望が多いですが、どうかよろしくお願いしますm(_ _)m
6そうだね
プレイ済み
返信[1]
親投稿
とるて alulu-ami157
またミスです。 BUTTIONじゃなくてBUTTONでしたね。 T…ONがくるとIを入れたくなっちゃうんですよね。 英語ってTIONが付く単語って多いじゃないですか←
2そうだね
プレイ済み
返信[2]
親投稿
うん、BUTTON()は押してる間ずっとその数字になる。 BUTTON(2)にしてVSYNC(タイミング調整の呪文)を@Aの下にすると押した瞬間だけ反応する。
0そうだね
プレイ済み
返信[3]
親投稿
あんど AND1GOUKI
一つ目は「VSYNC」を調べてみましょう。 二つ目は FOR I=0 TO 5  PRINT I NEXT を試して、5の所をイロイロな数字に変えると結果がどう変わるか見てみましょう。 「I=0」 の「0」は「数字のゼロ」です。  一度、どんな命令が有るのか、命令表を読んでみると良いカモ。 読み方は、「ちょっと読んでみるダケ」で、「読んで完璧に覚えよう」なんて気持ちはいらないです。 ただ、「こんな命令があるんだ・・・わかんっ」程度の読み方で良いです。 後でナニカをしたいときに、「あれ?ドコカで読んだような???」と鳴った時に、読み返して理解すれば良いと思います。
1そうだね
プレイ済み
返信[4]
親投稿
それと、2つ目の選択は、BUUTON()を1回しかやってない。
0そうだね
プレイ済み
返信[5]
親投稿
BUTTON()だ
0そうだね
プレイ済み
返信[6]
親投稿
あんど AND1GOUKI
あれ?? 「こんな命令があるんだ・・・わかんっ」 は、 「こんな命令があるんだ・・・わからんっ」 の 間違いね。 てへぺろ。
1そうだね
プレイ済み
返信[7]
親投稿
neet#ニート# HIMAJIN.MIV
BUTTON BUTTON(2)にすればいいです。 因みに1.2.4.8.16と1を除いて2の乗数となるのは、複数のボタンを押したら足され(AとBで16+32)これらの数がボタン単体(AやB等)と被らない様にするため。 FOR-NEXT FOR I=5 TO 10 PRINT I NEXT と、Iの値は5で、Iが10になるまで繰り返される。 最後にNEXTと記述する。 [注意]この場合5.6.7.8.9.10で6回繰り返される。
1そうだね
プレイ済み
返信[8]
親投稿
とるて alulu-ami157
沢山コメントありがとうございます(^^) あと、VSYNC命令ってどう使うんですかね? WAIT命令に似た働きを持つことはわかるのですが…
0そうだね
プレイ済み
返信[9]
親投稿
@A VSYNC (やること) GOTO @A ループで使う @名前 の後ろに書くといいです。 ボタンを整えるほかに、画面を消して描く繰り返しにしてもチラつかなくなります。 VSYNCはそもそもが「画面を書き換えるタイミングにあわせる命令」ですから。
0そうだね
プレイ済み
返信[10]
親投稿
neet#ニート# HIMAJIN.MIV
WAITとVSYNCの違いは詳しくは分かりませんが、主に用途は同じです。 そう言えば、LOCATE命令って知ってますか?? LOCATE X座標(横),Y座標?“あいうえお と書きます。別にあいうえおじゃなくて、変数でも文字列変数でもいいです。
0そうだね
プレイ済み
返信[11]
親投稿
補足します。 プチコンでは、BUTTONの戻り値を変更するのは、1/60秒(垂直同期)毎です。その間は何回呼び出しても同じ値になります。 VSYNCの場合、プチコンがたくさん仕事をして前回指定した時間を過ぎていた場合、プチコンは休みなしで仕事を続けます。WAITの場合、プチコンは必ず休みます。
0そうだね
プレイ済み
返信[12]
親投稿
とるて alulu-ami157
うーん。 BUTTONの()の中の数字って何を表してるんですかね? コメントで教えてもらってるんですけど、どうしても出来なくて… なんか色々すみません。
0そうだね
プレイ済み
返信[13]
親投稿
7行目のVSYNCは、このままでは実行されないので、9行目と16行目の間に移動する必要があると思われます。
0そうだね
プレイ済み
返信[14]
親投稿
だにえる haru2016nen
下画面キーボード左上にある ヘルプを利用してみましょう!
0そうだね
プレイ済み
返信[15]
親投稿
だにえる haru2016nen
ELSEIF使うのもいいんじゃ ないかな?(ややこしくなるかも) それと、「PRINT」は 「?」に置き換えてもいいのです。 ↑文字通り (プチコンが特殊だからかな)
0そうだね
プレイ済み
返信[16]
親投稿
()の中の数字(機能ID)は、 0は、押されている時、 1は、押した時の1/60秒間、押し続けた時は、BREPEATで指定した間隔でリピート(BREPEATを指定していないときは2と同じ)、 2は、押した時の1/60秒間、 3は、放した時の1/60秒間、 戻りのボタンに対応するbitが1になります。
0そうだね
プレイ済み
返信[17]
親投稿
TERA(LL) tera0413
INPUTは、プレイヤーが、何か入力するまで、プログラムは、先に進みません。 BUTTONは、その命令の所を過ぎた瞬間のボタンの状態を読み取るだけです。(入力を待っては、くれない) なので、この場合、ループ内に入れて、ボタンが押されるまで繰り返す必要が有ります。 で、一度のループ毎にVSYNCを入れる事で、()内の数字が生かされます。
1そうだね
プレイ済み
返信[18]
親投稿
とるて alulu-ami157
おぉ! わかりました!理解できました! ここまでみなさんありがとうございます!
0そうだね
プレイ済み