プチコン3号 SmileBASIC コミュニティトピック??? 2585562016/01/10 10:12:26質問ボタン系の質問です。B=BUTTON(2) IF B=64 TEHN GOTO @ラベル名 上に書いた命令をループ内に入れたのですが、とんだラベル名のところで、ループを作り、また、始めのループにもどるようにラベル名を変えて、同じような命令を書くと一瞬で始めのループにもどるのですが、なぜですか?0そうだね 7返信プレイ済み2017/11/03 18:25:49に取得
プチコン3号 SmileBASIC コミュニティ返信[1]親投稿コータ[quota] W.D.WE2016/1/10 10:51もし、とんだ先でもBUTTON関数を使っているのでしたら、次の垂直同期が来るまで、BUTTON関数の戻り値が、変わらないなるためと思います。 プログラムを見ていないので、間違っていたらすみません。3そうだね プレイ済み2017/11/03 18:25:49に取得
プチコン3号 SmileBASIC コミュニティ返信[2]親投稿くつねこ mamimusu2016/1/10 10:512こめの IF B==64 THEN GOTO @ラベル名 のうえの行に B=BUTTON(2) はありますか? 0そうだね プレイ済み2017/11/03 18:25:49に取得
プチコン3号 SmileBASIC コミュニティ返信[3]親投稿SquidSky ugomemo_gorohati2016/1/10 12:34WHILE 1 '1こめのループ B=BUTTON(2) IF B==#A THEN ?"Aがおされました" GOSUB @LOOP2 VSYNC 1 WEND @LOOP2 '2つめのループ WHILE 1 B2=BUTTON(2) IF B2==#B THEN ?"Bをおしました" BREAK VSYNC 1 WEND RETURN 'ループからBREAKしたときにじっこうする 0そうだね プレイ済み2017/11/03 18:25:49に取得
プチコン3号 SmileBASIC コミュニティ返信[4]親投稿SquidSky ugomemo_gorohati2016/1/10 12:38ここで、GOSUBがありますが、分かりますか? GOSUB @ラベル名 で@ラベル名に強制分岐しますが、RETURNによってまたGOSUB命令のある場所に戻ることができます。 また、このプログラムは、Aボタンを押すと、次にBボタンが押されるのを待つループに入ります。その部分がGOSUB @LOOP2になります。 そして、Bボタンが押されると、BREAK命令でループを抜け、WENDの次にあるRETURNでまたAボタンが押されるのを待つループに戻る、というプログラムです。1そうだね プレイ済み2017/11/03 18:25:49に取得
プチコン3号 SmileBASIC コミュニティ返信[5]親投稿でんぺん DENPEN2016/1/10 12:43スムージーはるさめさんのプログラムではAとBなので問題ない動作になると思いますが、もし両方ともAボタンで処理するようにしたら上手く動かない可能性がありますね。(原因はコータさんの発言の理由です) その場合は、@LOOP2の次の行(WHILEの前)にWAIT 1を入れると想定通りの動作になると思います。1そうだね プレイ済み2017/11/03 18:25:49に取得
プチコン3号 SmileBASIC コミュニティ返信[6]親投稿ΖΕΧ ZEX2562016/1/10 17:17IF B=64 TEHN これは間違い0そうだね プレイ済み2017/11/03 18:25:49に取得
プチコン3号 SmileBASIC コミュニティ返信[7]親投稿??? 2585562016/1/10 17:37ありがとうございました! ZEXさん、間違いのご指摘ありがとうございます!0そうだね プレイ済み2017/11/03 18:25:49に取得