プチコン3号 SmileBASIC コミュニティ投稿MRZ[PG]イロナ ringo7802015/02/09 20:23:48質問タッチ命令で、タッチできる範囲をタッチしたら効果音をならしたいのですが、どうやってやるのでしょうか…?他の人のプログラムを見ても難しくてわからない…5そうだね 6返信プレイ済み2017/11/03 23:41:46に取得
プチコン3号 SmileBASIC コミュニティ返信[1]親投稿Villit nakahara12262015/2/9 20:33「タッチ座標が何以上何未満」 から始めるといいでしょう。 次第にもっといいやり方が見つかると思いますよ。1そうだね プレイ済み2017/11/03 23:41:46に取得
プチコン3号 SmileBASIC コミュニティ返信[2]親投稿おにぎり EasyPuzzler652015/2/9 20:53これは下画面をタッチすると音がするプログラムです。2そうだね プレイ済み2017/11/03 23:41:46に取得
プチコン3号 SmileBASIC コミュニティ返信[3]親投稿おにぎり EasyPuzzler652015/2/9 21:017行目からが本番です。このぷろぐらむでは、タッチしていないときは,11行目のTOUCH命令によって、変数STTMに0が入ります。0じゃなくなったらタッチしたということ(12行目のIF文)。押し続けるとSTTMの値はどんどん増えていきます。離すと0に戻ります。変数Tは、STTMが0から0じゃない値に変わったときだけ15行目のBEEPを鳴らしたいので設けています。16行目を通過してT=TRUEになったらば、STTMが0じゃない間は、13行目のIF文の働きで、15行目は通らなくなります。タッチを離すとSTTMが0になって19行目が実行され、T=FALSEにもどって、つぎにタッチしてSTTMが0でなくなるのを待つことになります。16行目のT=TRUEを'T=TRUEとして注釈文にしてしまうと、タッチしている間ビーーーッという感じでうるさく鳴ります。0そうだね プレイ済み2017/11/03 23:41:46に取得
プチコン3号 SmileBASIC コミュニティ返信[4]親投稿おにぎり EasyPuzzler652015/2/9 21:08もしさわる範囲を指定したいなら、たとえば12行目と13行目の間にIF文を入れて、範囲を絞ってやればいいと思います。 ちょっと凝って、中心(160,120)から半径50の円内をさわったときだけ音を鳴らしたければ IF SQR(POW(TX-160,2)+POW(TY-120,2))<=50 THEN を12-13行目の間に入れ、 18行目のELSEの前にENDIFを入れるとできます。1そうだね プレイ済み2017/11/03 23:41:46に取得
プチコン3号 SmileBASIC コミュニティ返信[5]親投稿おにぎり EasyPuzzler652015/2/9 21:11手を入れたプログラムはこうなります。円を書いておきましたから、円の内部をさわったときだけ音が鳴ることを確かめて下さい。0そうだね プレイ済み2017/11/03 23:41:46に取得
プチコン3号 SmileBASIC コミュニティ返信[6]親投稿おちゃめ ochame_nako2015/2/9 23:21タッチした座標を元に数式で判定してもよいのですがGSPOITを使って色で判定も可能です。 ここで注意しなくてはならないのがRGBは8の倍数で指定するということです。この方法ならば円に限らず自由な形の範囲を簡単に判定が可能です。1そうだね プレイ済み2017/11/03 23:41:46に取得