プチコン3号 SmileBASIC コミュニティトピックHMF gunsofthemy2016/12/07 17:10:59質問質問 part2前に作ってたプログラムを断念して、今は電卓を作ってます。(もっとも、普通に使うアレではありません。) が、素人故の謎が出てきます。 なので、対処法等を教えて下さいお願いします。4そうだね 29返信プレイ済み2017/11/03 17:39:45に取得
プチコン3号 SmileBASIC コミュニティ返信[1]親投稿HMF gunsofthemy2016/12/7 17:13まずはコレから。 DATAを上下に2つ写真のように並べてREADで読み込ませると、上しか読み込まれてないようなので、試験的に即席でプログラムを作りました。この問題はどうすればいいんでしょうか?1そうだね プレイ済み2017/11/03 17:39:46に取得
プチコン3号 SmileBASIC コミュニティ返信[2]親投稿Soybeanman 2013niconico2016/12/7 17:15もう一回、READで読み込むと下のDATAが読み込まれます。1そうだね プレイ済み2017/11/03 17:39:46に取得
プチコン3号 SmileBASIC コミュニティ返信[3]親投稿HMF gunsofthemy2016/12/7 17:16一括で読み込みたいのですが・・・。1そうだね プレイ済み2017/11/03 17:39:46に取得
プチコン3号 SmileBASIC コミュニティ返信[4]親投稿あまさと しおん ShionAmasato2016/12/7 17:17READは読み込むごとに読み先が移動するからね1そうだね プレイ済み2017/11/03 17:39:46に取得
プチコン3号 SmileBASIC コミュニティ返信[5]親投稿Soybeanman 2013niconico2016/12/7 17:19DATA ¨データ1¨,¨データ2¨ READ 変数1$,変数2$ こうすることで一括で読み込めるようになります。2そうだね プレイ済み2017/11/03 17:39:46に取得
プチコン3号 SmileBASIC コミュニティ返信[6]親投稿りゅうまご ryumago2016/12/7 17:38@1 DATA 2 DATA "1" DATA "一" RESTORE @1 READ CNT DIM A[CNT] FOR I=0 TO CNT-1 READ A[I] NEXT こんな風に読み込ませることも出来ます1そうだね プレイ済み2017/11/03 17:39:46に取得
プチコン3号 SmileBASIC コミュニティ返信[7]親投稿HMF gunsofthemy2016/12/7 17:52なるほど。 でも、今作ってるのがもっと面倒だったので、READで要る分と空白を読み込ませて、戻ると全てのREADに使った変数の中身がなくなるようにしました。 人の意見はそこそこしか聞かないのは結構ダメですね・・・。1そうだね プレイ済み2017/11/03 17:39:46に取得
プチコン3号 SmileBASIC コミュニティ返信[8]親投稿でんぺん DENPEN2016/12/7 18:11DATAの最後に必ずGOTOがあるのが気になる…1そうだね プレイ済み2017/11/03 17:39:46に取得
プチコン3号 SmileBASIC コミュニティ返信[9]親投稿HMF gunsofthemy2016/12/7 18:17でんぺん さん»即席で作ったんで気にしないでください。1そうだね プレイ済み2017/11/03 17:39:46に取得
プチコン3号 SmileBASIC コミュニティ返信[10]親投稿ぴくと kanau12032016/12/7 19:41↑一応言っておくと、DATAは順次処理の命令ではないです2そうだね プレイ済み2017/11/03 17:39:45に取得
プチコン3号 SmileBASIC コミュニティ返信[11]親投稿ツララ LongIceSword2016/12/7 20:58COPY命令とラベル指定で一括読み込み出来ませんでしたっけ? 読み込み先の変数は配列じゃないとダメですけど。1そうだね プレイ済み2017/11/03 17:39:45に取得
プチコン3号 SmileBASIC コミュニティ返信[12]親投稿HMF gunsofthemy2016/12/19 23:57さて、しばらく空きましたが現在、潜水艦を動かすプログラムを作っているのですが、90度回転とかをどう指示すればいいのか分かんない。wikiってみたけどちんぷんかんぷんでした。親切なかた誰か助けて下さいお願いします。(因みにこれを作ろうとした理由は、ある入門のプログラムの本がキッカケです。)1そうだね プレイ済み2017/11/03 17:39:45に取得
プチコン3号 SmileBASIC コミュニティ返信[13]親投稿ツララ LongIceSword2016/12/20 0:51スプライトを回転させたいならズバリ、SPROT っていう命令がありますよ。 詳細はヘルプ参照で。 ちなみにコンソールの表示文字の回転はATTR命令、BGはスクリーン単位の回転になりますけどBGROT命令で細かい指定が、90度単位でならBGPUTとかで使うスクリーンデータの段階でのアトリビュート指定で回転させれますよ。 アトリビュート指定で90度単位で回転させれるのはスプライトも同様ですね。 グラフィック画面に対する回転命令は残念ながら用意されてないので、自作命令に挑戦してみるのもいいかも。1そうだね プレイ済み2017/11/03 17:39:45に取得
プチコン3号 SmileBASIC コミュニティ返信[14]親投稿HMF gunsofthemy2016/12/20 22:53はい、3つ目です。毎回々々すいません。 50行目のSPOFSなんですが、こいつが見事にエラーを吐くんDes。一応FXとFYの変数は初め0に設定していますが、この上でXとYからFXとFYを設定してます。Xは190、Yは100です。 で、なんでエラーになるのか教えて下さい。0そうだね プレイ済み2017/11/03 17:39:45に取得
プチコン3号 SmileBASIC コミュニティ返信[15]親投稿でんぺん DENPEN2016/12/20 23:10とりあえず気になるのは、何処でSPSETされているのかって感じかな…。 あとはエラーメッセージが出るなら、その内容も書いた方がより正確になりますね。0そうだね プレイ済み2017/11/03 17:39:45に取得
プチコン3号 SmileBASIC コミュニティ返信[16]親投稿ツララ LongIceSword2016/12/20 23:1050行目のSPOFS命令がエラーになるということは、もしかしてSPSET命令で管理番号が2のスプライトを設定してないとかじゃないです? 上の行に管理番号が2のスプライトに対する命令が書かれてますけれど、IF文の条件が満たされていないのでスキップされててエラーになってないだけとか。0そうだね プレイ済み2017/11/03 17:39:45に取得
プチコン3号 SmileBASIC コミュニティ返信[17]親投稿HMF gunsofthemy2016/12/20 23:50エラーは画像のようにしたら吐かなくなりましたが、次は、Aボタンを押してもスプライトが表示されなくなりました。 因みに、スプライトの設定は SPSET 2,FX,FY です。0そうだね プレイ済み2017/11/03 17:39:45に取得
プチコン3号 SmileBASIC コミュニティ返信[18]親投稿でんぺん DENPEN2016/12/20 23:52SPSETの引数は座標ではないですよ0そうだね プレイ済み2017/11/03 17:39:45に取得
プチコン3号 SmileBASIC コミュニティ返信[19]親投稿ツララ LongIceSword2016/12/21 0:06いっそのことプログラムの頭の方で魚雷のスプライトはもうSPSETしておいてSPHIDE命令で非表示にしてから、Aボタンを押したらSPSHOW命令で表示する様にするとか。 もしくはSPOFSする処理のところは IF SPUSED(2) THEN SPOFS 2,FX,FY みたくして管理番号が2のスプライトがSPSETされていなければ実行をスキップするようにするとか。1そうだね プレイ済み2017/11/03 17:39:45に取得
プチコン3号 SmileBASIC コミュニティ返信[20]親投稿HMF gunsofthemy2016/12/21 6:55すいません、 SPSET 2,1304 でした。本当に申し訳ないです。 ・・・成る程、分からんけどやってみます。ありがとうございます。0そうだね プレイ済み2017/11/03 17:39:45に取得
プチコン3号 SmileBASIC コミュニティ返信[21]親投稿でんぺん DENPEN2016/12/21 13:01SP〜系の命令は、ほとんどがSPSETで管理番号を指定してないもので利用するとエラーになります。おそらくエラーになったのは、IFなどの条件分岐でスキップされてSPSETされない場合もあって、その時にSPOFSされたりしてのエラーだと思います。 なのでツララさんも教えてくれているように、SPSETだけ先にしておいて使用するまでは非表示にしておくとか、SPSET前でも使えるSPUSEDを使い、そのスプライト管理番号がSPSETされているかを事前に調べて、使用されている(TRUE)時のみSPOFSする、みたいな感じの処理にすればエラーが出ないようになると思います。 0そうだね プレイ済み2017/11/03 17:39:45に取得
プチコン3号 SmileBASIC コミュニティ返信[22]親投稿HMF gunsofthemy2016/12/21 22:41画像上側に見えるどれかのIFを一度通ると、変数DがこのIFを通らなくても同じ値を出力し続ける方法ってないですか? 0そうだね プレイ済み2017/11/03 17:39:45に取得
プチコン3号 SmileBASIC コミュニティ返信[23]親投稿でんぺん DENPEN2016/12/22 0:57IFを通ったときにDを変更しているなら、その後、どこかでDを初期化していなければDの値は維持されますが、そういうことじゃないんですか?0そうだね プレイ済み2017/11/03 17:39:45に取得
プチコン3号 SmileBASIC コミュニティ返信[24]親投稿HMF gunsofthemy2016/12/23 7:09僕もそう思っていたのですが、そうは問屋が下ろさないのか、何故かDの値が継続されないんです。Dの値の初期化はループ前にしか行ってないはずなので、質問させて戴いたのです。0そうだね プレイ済み2017/11/03 17:39:45に取得
プチコン3号 SmileBASIC コミュニティ返信[25]親投稿ツララ LongIceSword2016/12/23 12:52もしかして変数Dの値って表示してるスプライトの挙動だけから推察してません? メインループの終わりのWEND直前の行あたりに PRINT D:WAIT 30 とでも書き足して、実際に変数Dの中身を確かめてみるのをお勧めしますけど。 0そうだね プレイ済み2017/11/03 17:39:45に取得
プチコン3号 SmileBASIC コミュニティ返信[26]親投稿HMF gunsofthemy2016/12/23 22:50後で気付いたのですが、よくよく考えて見るとFXとFYを使用するSPOFSがIFの中にしかなかったんデス。変数Dの値がどうかは分かりかねませんが、どうにかしてみます。0そうだね プレイ済み2017/11/03 17:39:45に取得
プチコン3号 SmileBASIC コミュニティ返信[27]親投稿HMF gunsofthemy2016/12/24 21:42問題は解決しました。もっとも、魚雷が一つしか出せない問題があります。少なくとも画面上に7弾は撃ちたいです。 あと、自作スプライトのなんとかはSPDEFで出来るのは知ってますが、細かいことが説明見ても分かりません。お願いします。0そうだね プレイ済み2017/11/03 17:39:45に取得
プチコン3号 SmileBASIC コミュニティ返信[28]親投稿HMF gunsofthemy2016/12/31 22:08まーた別の問題が発生したのですが、反応がないので3つ目を開いてきます。0そうだね プレイ済み2017/11/03 17:39:45に取得