プチコン3号 SmileBASIC コミュニティトピックコーン Maise.Corn2015/10/05 15:32:56質問スプライトの動かし方シューティングを作っているのですが、 弾(スプライト)が動いてくれません。 どなたか助けてください…5そうだね 15返信プレイ済み2017/11/03 18:44:10に取得
プチコン3号 SmileBASIC コミュニティ返信[1]親投稿コーン Maise.Corn2015/10/5 15:40スプライトの動かし方ですが、 真上に打ち上げてその場に落とす感じに したいです。 マリオのジャンプのように自然な感じで 落下させたかったので、 物理の「等加速度運動」の公式を 当てはめてみたのですがムリでした…0そうだね プレイ済み2017/11/03 18:44:10に取得
プチコン3号 SmileBASIC コミュニティ返信[2]親投稿ケイン KEIN.HORGAN2015/10/5 15:45えーと、ぱっと見ただけですが…… 13行目:GOTO @LOOP としていますが、これで10行目にGOTO する、のを延々と続けると思われます。 後、GOSUB のラベル名とGOTO のラベル名は一緒にしない方がいいんじゃないかな、と思います。 混乱の元なので。 (5行目のGOSUB 先と、13行目のGOTO 先が同じラベルになっている)0そうだね プレイ済み2017/11/03 18:44:10に取得
プチコン3号 SmileBASIC コミュニティ返信[3]親投稿コーン Maise.Corn2015/10/5 16:00自分なりに修正してみたのですが、 動きません… 時間の計測方法が悪いのかな?0そうだね プレイ済み2017/11/03 18:44:10に取得
プチコン3号 SmileBASIC コミュニティ返信[4]親投稿あまさと しおん ShionAmasato2015/10/5 16:02無限ループの外にRETURNじゃ永遠に戻らないと思います… @LOOP1 略 @LOOP2 略 GOTO @LOOP2 略 RETURN 流れを理解していない模様0そうだね プレイ済み2017/11/03 18:44:10に取得
プチコン3号 SmileBASIC コミュニティ返信[5]親投稿あまさと しおん ShionAmasato2015/10/5 16:02(今書いたのは問題の部分そのままです修正版じゃないよ)0そうだね プレイ済み2017/11/03 18:44:10に取得
プチコン3号 SmileBASIC コミュニティ返信[6]親投稿あまさと しおん ShionAmasato2015/10/5 16:07図や表とかで脳内を整理することをお勧めする0そうだね プレイ済み2017/11/03 18:44:10に取得
プチコン3号 SmileBASIC コミュニティ返信[7]親投稿ケイン KEIN.HORGAN2015/10/5 16:14えーと、プログラムを組む時は、「プログラムの流れ」を意識してください。 今回修正されたプログラムでは、 ラベル:@LOOP2 ↓ 15行目:GOTO @LOOP2 で@LOOP2 に戻る となっているので、一生涯かかっても16行目に到達しません(これを"無限ループ"と言います) 今は無条件でGOTO @LOOP2 するので無限ループになるので…… GOTO @LOOP2 するか否かを条件判断するようにしてください。1そうだね プレイ済み2017/11/03 18:44:10に取得
プチコン3号 SmileBASIC コミュニティ返信[8]親投稿あまさと しおん ShionAmasato2015/10/5 16:21プログラムの順番の原則 1.基本:右に進む、右に命令がなければ下に進む 2.GOTOはそのラベルのところに行く 3.GOSUBもそのラベルに行くが、RETURNにたどり着くとGOSUBがあった場所に戻る IF文は(命令をやる/やらない)が条件によって変わるスイッチみたいなもの。 GOTO/GOSUBがない限りどこかに行くことはない。 ※DEFという命令は例外です。流れが理解できない現状はDEFもお勧めしない。1そうだね プレイ済み2017/11/03 18:44:10に取得
プチコン3号 SmileBASIC コミュニティ返信[9]親投稿コーン Maise.Corn2015/10/5 16:25実はGOSUBの意味、あまり知らずに 使っていたんです。ハズカシイ… こちらについては後で色々研究してみます。 ラベルの代わりにWHILEを使うことに しました。こっちの方が分かりやすいかな?1そうだね プレイ済み2017/11/03 18:44:10に取得
プチコン3号 SmileBASIC コミュニティ返信[10]親投稿あまさと しおん ShionAmasato2015/10/5 16:49確かにこれなら無限ループにならないのでよさそう0そうだね プレイ済み2017/11/03 18:44:10に取得
プチコン3号 SmileBASIC コミュニティ返信[11]親投稿すぎ field20502015/10/5 16:59それらしくは動きました。最初の動きは謎です。1そうだね プレイ済み2017/11/03 18:44:10に取得
プチコン3号 SmileBASIC コミュニティ返信[12]親投稿コーン Maise.Corn2015/10/5 18:16何度でも弾を撃てるように無限ループを 作ってみたつもりなんですが、 なぜかループしません。 この理由って分かりますか? 何度も質問してすみません…1そうだね プレイ済み2017/11/03 18:44:10に取得
プチコン3号 SmileBASIC コミュニティ返信[13]親投稿ツララ LongIceSword2015/10/5 19:0613行目の IF B==#A THEN GOTO @COUNT の、THENとGOTOの間にBEEP 1:と書いてみて、画面には表示されない処理の流れも音で把握する、という方法もありますね。 プログラムを実行してみて、カレントディレクトリ名が表示されず、コマンド受付状態にもなっていなければプログラムは終了していない、つまり無限ループになってはいると思いますよ。1そうだね プレイ済み2017/11/03 18:44:10に取得
プチコン3号 SmileBASIC コミュニティ返信[14]親投稿すぎ field20502015/10/5 19:23あたった後Tの初期化がないのでは…1そうだね プレイ済み2017/11/03 18:44:10に取得
プチコン3号 SmileBASIC コミュニティ返信[15]親投稿コーン Maise.Corn2015/10/5 19:33ようやく出来ました! 皆さん、本当に助かりました! ありがとうございます!2そうだね プレイ済み2017/11/03 18:44:10に取得