プチコン3号 SmileBASIC コミュニティプレイ日記◆★Manato★◆ 8hgFYUgjp98-t6_22016/09/18 10:17:57TOUCH命令で指定の場所をタッチした瞬間IF命令で別のラベルへ飛ぶやつ作っているんですけど誰か教えてくれる人いませんか?(できれば分かりやすく説明とプログラム(これは書かなくてもいい)を書いて><ごめん、初心者なので) 分かりづらくてゴメンなさい2そうだね 13返信プレイ済み2017/11/03 02:21:58に取得
プチコン3号 SmileBASIC コミュニティ返信[1]親投稿だにえる haru2016nen2016/9/18 11:23@L タッチアウト IF~~~THEN@NEXT GOTO@L @NEXT1そうだね プレイ済み2017/11/03 02:21:58に取得
プチコン3号 SmileBASIC コミュニティ返信[2]親投稿otta777 otta777a2016/9/18 11:28まずはTOUCH命令のヘルプを読んでみて下さい。 TOUCH OUT STTM,TX,TY STTMにはタッチされた時間が格納されます。TX、TYにはタッチされた 座標が格納されます。 目的の動作をするためにはタッチされた瞬間にタッチされた座標が 指定の場所の範囲内かどうかを判別してその条件を満たした場合に 指定の場所をタッチしたときの処理のラベルに飛ぶというプログラムが 必要ですね。1そうだね プレイ済み2017/11/03 02:21:58に取得
プチコン3号 SmileBASIC コミュニティ返信[3]親投稿otta777 otta777a2016/9/18 11:41@LOOP0 TOUCH OUT O,P,L IF O==1 THEN IF P>=指定の場所の左のX座標 && P<=指定の場所の右のX座標 && L>=指定の場所の上のY座標 && L<=指定の場所の下のY座標 THEN @LABEL VSYNC GOTO @LOOP0 タッチされた瞬間はタッチされた時間が1の時に判別できます。 その時取得したタッチされた座標が指定の場所の範囲内かどうかを IF命令で判別して条件が成立していた場合にGOTO命令で目的の ラベルにジャンプします。 2そうだね プレイ済み2017/11/03 02:21:58に取得
プチコン3号 SmileBASIC コミュニティ返信[4]親投稿ネタバレツララ LongIceSword2016/9/18 12:00タッチされた瞬間の判定は、TOUCH命令でタッチされている時間を取得する変数の中身が0(タッチされてない)の時に0ではない数値(タッチされている)になったという判定をしてやればいいので、ループの中のTOUCH命令の直前にOLD_Tみたいな変数を用意しておいて、先ずその変数とTOUCH命令実行後のSTTMを比較するみたいな「タッチされた瞬間判定」を作ってやる必要ありますね。 指定の場所は定数、というか予め最初に変数で定義しちゃうと楽だと思います。 ちなみに範囲を指定するときの比較演算子は「==」を使うと『点』の判定になっちゃうので、「>」や「<=」とかを2つ使って『線』の判定にして、それをX軸とY軸分の2つ用意すると四角形の範囲を指定できますよ。 円形や三角形の範囲を指定したいとなるとややこしくなったりするんですけど、不可能ではないので、余裕があったらチャレンジしてみるのもいいかも?1そうだね プレイ済み2017/11/03 02:21:58に取得
プチコン3号 SmileBASIC コミュニティ返信[5]親投稿◆★Manato★◆ 8hgFYUgjp98-t6_22016/9/18 12:24otta777 さんへ どうしてもENDIFが必要になり、入力するとすぐプログラム実行が終わります…0そうだね プレイ済み2017/11/03 02:21:58に取得
プチコン3号 SmileBASIC コミュニティ返信[6]親投稿ボーネン gurigura20032016/9/18 12:26TOUCH T.X.Y T→時間(60/1) X.Y→タッチした場所 自分の場合XYの数値だと 細かすぎるので16分割して 判定しやすくしています。 0そうだね プレイ済み2017/11/03 02:21:58に取得
プチコン3号 SmileBASIC コミュニティ返信[7]親投稿otta777 otta777a2016/9/18 12:29あわわ、すみません。ENDIFを書き忘れていました。 これだとエラーでプログラムが停止してしまいますね。 VSYNC命令の前の行にENDIF命令を追加して下さい。0そうだね プレイ済み2017/11/03 02:21:58に取得
プチコン3号 SmileBASIC コミュニティ返信[8]親投稿ツララ LongIceSword2016/9/18 12:34横から失礼します。 ループするラベルの他にIF文が成立したとき用の別のラベルが無いからじゃないです? ちなみにTHENの後ですぐ改行しなければENDIF要らないですよ。0そうだね プレイ済み2017/11/03 02:21:58に取得
プチコン3号 SmileBASIC コミュニティ返信[9]親投稿nobu divine-creator2016/9/18 17:02この作品では、右下の番号をタッチで狙う場所を指定して、ボールをタッチでシュートするようになっていますけど、プレイヤーが番号をタッチせずにボールをタッチしてしまっても大丈夫なように、初期値を設定しています。 そのように、指定した操作をしなかった場合にどうするかも、作る側は考えなければなりません! ちなみに、プチ子の体をタッチすると、画像のような反応をします。(笑)1そうだね プレイ済み2017/11/03 02:21:58に取得
プチコン3号 SmileBASIC コミュニティ返信[10]親投稿ネタバレいぎょ igyochan2016/9/18 18:16もう解決しちゃったかな? とりあえずペタッと貼っておきますね!1そうだね プレイ済み2017/11/03 02:21:58に取得
プチコン3号 SmileBASIC コミュニティ返信[11]親投稿Ait rrmrrm12152016/9/18 18:44皆さんありがとうございます!参考にして何か作ろうと思います!0そうだね 未プレイ2017/11/03 02:21:58に取得
プチコン3号 SmileBASIC コミュニティ返信[12]親投稿◆★Manato★◆ 8hgFYUgjp98-t6_22016/9/18 18:49まなと サブアカさんは、僕のサブアカウントです。まなと サブアカさんは僕が投稿してます。大丈夫です。0そうだね プレイ済み2017/11/03 02:21:58に取得