Archiverse Internet Archive
投稿のみ 投稿と返信
前のページ(最近)
129 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49184
次のページ(過去)
返信[36]
親投稿
前にあったGOTO @LOOPなどがなくなってますね。 プログラムは分岐などをしない限りは上から下に流れます。その間でメインループなどの無限ループがあれば、そこを繰り返します。(止まります) なので意味不明でもなくて、そういうプログラムになってしまっているんだと思いますよ。
0そうだね
プレイ済み
返信[27]
親投稿
と言うのを全て組み合わせると、上記のプログラムは、 WHILE 1 VSYNC B=BUTTON(2) IF B==#A THEN @GAME1 IF B==#B THEN @TITLE WEND になります。まあ変数に入れたぶん少し長くなってしまいますし、必ずそうしなければいけないというわけではないので参考までにという感じで…。
0そうだね
プレイ済み
返信[26]
親投稿
しょぼーんさんも指摘されているようにボタン判定のWHITEに無駄がありますね。 例えば201〜204行目のWHILEも条件部分が無駄になってるんで、 WHILE 1 IF BUTTON(2)==#A THEN GOTO @GAME1 IF BUTTON(2)==#B THEN GOTO @TITLE WEND にした方がよりベストです。あとWHILEなどのループ中でボタン判定をする場合、ループの中にVSYNCをいれておくとよりベターで、さらにTHENのあとのGOTOは省略も可能です。 またWHILEの際はインデント(スペース)をいれた方がプログラムは見やすくなります。ボタン判定もIFで何度も参照する場合は一度変数に入れておいた方がいい場合が多いです。
0そうだね
プレイ済み
返信[19]
親投稿
IF BUTTON(2) THEN だけではなにかボタンが押されたら飛ぶという事になってしまいます。なので、Aボタンを押した時、としたいのなら IF BUTTON(2) == #A THEN もしくは IF BUTTON(2) AND #A THEN として明確にAボタンが押された時という判定にしなければいけませんね。Bボタンも同様です。
0そうだね
プレイ済み
返信[17]
親投稿
プログラムを見た感じBUTTONのところが直ってないような気が…。 あとGOSUBは必ずRETURNで戻る事が前提の命令なので、もし飛び先からRETURNで戻る予定がないのであればGOTOにした方がいいです。
0そうだね
プレイ済み
返信[10]
親投稿
どちらが良いかどうかはケースバイケースですよ。SPSTOPの場合はキャラの切り替え以外の動作も止めることが出来ますしね。ただ先ほど書いたようにSPSTOPしたものは、次にSPSTARTしないと動き出さないので、SPANIMのあとにSPSTARTをいれる必要があります。 ちなみにSPCHRで止められるのは、SPANIMで動かしている要素は別の命令で上書き(?)出来るという特徴を利用していて、SPCHRの場合はキャラクタの切り替えを今のキャラクタ番号SPCHR(0)を指定していることで止まるような動作になります。 どちらを利用するかはどっちが向いているかなども含めて判断した方がいいと思いますし、その辺も考えるとプログラムの考え方が深まると思いますよ〜。
0そうだね
プレイ済み
返信[8]
親投稿
しょぼーんさんの言っているような形にするには35行目あたりで、 B2=BUTTON(2) のようにもう一つボタンの内容を保存しておいて、39行目のSPANIMのところで、 IF B2 AND 4 THEN SPANIM〜 って感じにすればいいと思いますよ。 あと止めるときにSPSTOPを使う場合、また動かしたいときにSPSTARTもいれないといけなくなるのでキャラの動きを止める目的ならば、 SPCHR 0,SPCHR(0) というやり方もあります。こっちの場合は、SPSTARTで再開しなくても次のSPANIMでアニメーションをさせることが出来ます。
0そうだね
プレイ済み
返信[16]
親投稿
そういう思いつきが自分の力になっていくと思うので良いことだと思いますよ! ちなみに移動先が壁の時にVXを0にする場合、例えば移動量が10ドットだとして5ドット先から壁の場合、単純に0にすると壁に隣接出来ない事になるので、その場合はVXを5にする(壁に隣接するギリギリ)みたいな補正が出来るようになると、さらに良くなると思いますので、実力がついてきたら色々と試してみるのもいいと思います。 そういう風に考えていくと移動一つとっても色んなやり方やノウハウが詰まっているのに気づけると思いますよ。
0そうだね
プレイ済み
返信[13]
親投稿
久々に書き込みが…。てか返事が遅くなってすいません。最近はどうもなかなか…。 結局は当たり判定は移動後(や移動前)に座標をチェックするしかないんですよね。 例えば天井との当たりであれば、上昇中(AYがマイナス)の時に、自分の頭の位置の作業を調べて壁だったらAYを0にするとかすれば壁にぶつかったら落ちてきます。その際に、着地の時のように座標補正をするとベストです。 左右も移動方向をみて、その移動先の座標を調べる…という感じなので、この辺は地味にチェックするしかないと思います。 とりあえず今回のサンプルをちゃんと理解出来れば(精度はともかく)ある程度は実装出来るようになると思いますし頑張ってみてください!
1そうだね
プレイ済み
返信[50]
親投稿
久々です! ご無沙汰です! 返事が遅くなってすいませんー。 gpageを戻さないポリシーなどはないので、とりあえず実装的に問題が発生しないかだけ確認して問題がなければ採用しますね。 ただ今はちょっと忙しい時期でもあるので、対応が遅くなってしまったらすいません。 よろしくお願いします!
1そうだね
プレイ済み
返信[4]
親投稿
プログラムを全く知らないなら、プログラム的な考え方を身につけるのに役に立つと思いますよ。 身についてしまえば後は応用と変化なので、言語の差はだんだんと感じなくなってきます。まあ言語の癖は感じますけど…。
5そうだね
プレイ済み
返信[7]
親投稿
MID$でもRIGHT$でも大丈夫です。僕は始めはRIGHT$でやってましたがMID$でやってる人をみて、その方がプログラムが短く書けるので採用しましたが、正確に書くならRIGHT$の方がいいのではないかと思うところもあります。 ちなみに僕は短ければ短いほど良いという考え方ではないんですが、1行に入る長さの方が見やすくなるので2行にまたがってしまう場合は可読性が落ちない範囲で1行におさめられる記述をする事が多いです。それ以上どうしても長くなるときは、IF分であればENDIFも使って複数行にしちゃいます。
1そうだね
プレイ済み
返信[3]
親投稿
自作ツールで恐縮ですが、PUCHI-LUNCHを紹介します。僕のプロフィールに公開キーがありますよ。
1そうだね
プレイ済み
返信[4]
親投稿
一応補足すると、BIG_TEXTERさんのいうRIGHT$は僕はMID$で代用しています。MID$の場合、取り出す長さを文字列の長さ以上にしてもエラーにならないので、それを利用して最後まで2文字目から最後まで取り出しています。 ボタン入力に関しては理解しているなら問題ないですが、まあお任せ。 問題点の一つは、ファイル数が多すぎると機能しなくなるところですね〜…。その辺もふまえて改善していくといいとは思いますが、始めのプログラムをみた感じだとまだ色々と覚えることが多そうな感じもありますし頑張ってください!
1そうだね
プレイ済み
返信[3]
親投稿
BIG_TEXTERさんの指摘通りですね。 そうすると大体こんな感じですが、まだ色々と問題はふくんでますねー…
0そうだね
プレイ済み
返信[1]
親投稿
オリジナルっぽいから作った人しかわからないのでは…?
1そうだね
プレイ済み
返信[35]
親投稿
基本的には出来てるんですがデバッグと調整がちゃんと終わってないのでアップデートしにくい状況です…。 ちなみにアップデートとしては、PUCHI-LAUNCHですが、同時にPUCHI-FILERもリリースしたいと思っています。 PUCHI-FILERはPUCHI-LOADERとPUCHI-SAVERを統合して調整したアプリで、PUCHI-LAUNCHとの組み合わせに便利なようにしています。 旧PUCHI-LOADERとPUCHI-SAVERを使っている人がどのぐらいいるかわからないんですが、新規の人にも使ってもらえるようにちゃんと解説したいという気持ちもあるし、なかなか思うように準備が進まない感じですね…
1そうだね
プレイ済み
返信[4]
親投稿
みんなの補足程度に。 CLSだと画面全部が消えるので、もし前に表示した一部の文字を消したいときは、その場所に空白(スペース)を表示して上書きして消します。 例えば10,15の位置から12文字分の文字を消したいときは、 LOCATE 10,15:?" "*12; でいけます。 後ろの;(セミコロン)は最後の行以外はつけなくても大丈夫だけど一応つけました。これをつけないと最後の行に表示(消す)したあとに全体が1行分上にスクロールしてしまいます。 ということで、頑張ってください。
5そうだね
プレイ済み
返信[2]
親投稿
バイナリってのは生データに近い感じなので、生データは数値の集まりなので、集まりを管理する配列(数値)を使うわけです。 文字列にしても数値の配列に意味(文字コード)を持たせて、それを文字列として解釈しているようなものなのですよ。だから文字コード=数値だしね。 使い方はどう使いたいのかにもよるので、その質問だと回答しづらいかも…
2そうだね
プレイ済み
返信[7]
親投稿
それより?Wii Uが終わりそうなのが買ってない身としては気になる…。終わるのに買うのもなんだしなー…
6そうだね
プレイ済み