投稿
<(_ _)> FukanoShouki
よしrun 「エラー」 あれうち間違えた? もう一度 「エラー」・・・・・・・ これは罠だΣ(°д° )
5そうだね
プレイ済み
返信[1]
親投稿
けい kei0baisoku
全角でない空白ですか?(?ω?)
0そうだね
プレイ済み
返信[2]
親投稿
<(_ _)> FukanoShouki
プチコンmk2初心者講座のサンプル7の動かしてみようを写したらこうなりました
0そうだね
プレイ済み
返信[3]
親投稿
上から順番に 1行目のVISIBLEはmkIIと意味が変わっているので消してしまいましょう。 13行目のVISIBLE 1はVSYNC 1の間違いかと。 15行目のジキの前が「,」になっているので「'」にしましょう。
1そうだね
プレイ済み
返信[4]
親投稿
おかっぺ Japanese_WASABI
エラーの画面(メッセージ)を表示出来ますか?
0そうだね
プレイ済み
返信[5]
親投稿
けい kei0baisoku
mk2は今作と微妙に命令とかが違うらしいので、コピーして動かす場合は多少手直しが必要だそうです。 エラーが出ているのはカーソルがある19行目でしょうか?今全体をざっと見たら、少なくとも15行目はアポストロフィとカンマを間違えていてまずそうです。
0そうだね
プレイ済み
返信[6]
親投稿
けい kei0baisoku
あ、既にるるるきゅ~さんがもっと細かく指摘されてましたね。たぶんそれで全部だと思います。
0そうだね
プレイ済み
返信[7]
親投稿
<(_ _)> FukanoShouki
皆さんありがとうございます
0そうだね
プレイ済み
返信[8]
親投稿
<(_ _)> FukanoShouki
バグッターーー
0そうだね
プレイ済み
返信[9]
親投稿
<(_ _)> FukanoShouki
皆さんの指摘された部分を直しました
0そうだね
プレイ済み
返信[10]
親投稿
<(_ _)> FukanoShouki
すごいことになりました
0そうだね
プレイ済み
返信[11]
親投稿
18、19行目をそれぞれ IF B AND 4 THEN VX=-1 IF B AND 8 THEN VX=1 と修正してみましょう。 あと1行目の、1,1,0,0,0もその前にあったVISIBLEの続きの文なので消してしまいましょう。
0そうだね
プレイ済み
返信[12]
親投稿
<(_ _)> FukanoShouki
右にはいけなくなるは左にいきすぎるとエラー アーエァなんで(:o;)
0そうだね
プレイ済み
返信[13]
親投稿
<(_ _)> FukanoShouki
すみません、消しました あと上のエラー画像を貼りました
0そうだね
プレイ済み
返信[14]
親投稿
18,19行目を上記のように書き換えたらこのエラーも消えるはずです。 右に移動で途中でとまっちゃうのは、mkIIと3号で画面の広さが違うせいですね。 31と書いてあるところを49に書き換えてみましょう。
0そうだね
プレイ済み
返信[15]
親投稿
<(_ _)> FukanoShouki
わかりました やってみます(`・ω・´)
0そうだね
プレイ済み
返信[16]
親投稿
<(_ _)> FukanoShouki
すみません 自分はバカなのでなぜvx=1 vx=-1したらエラーが消えたりする理由がわかりません こたえるのがめんどくさかったらいいのですが、教えていただけると本当に助かります <(_ _)>
0そうだね
プレイ済み
返信[17]
親投稿
じゃぁ、問題のあった左ボタンのほうだけを見てみましょう。 もし元のコードで、一番左端(PX=0)にいたときに左ボタンをおすとPXの値はどうなるでしょうか? IF B AND 4 THEN PX=PX-1 そう、PX=PX-1 → PX=0-1 → PX=-1 となります。 するとその直後の行でおこなっている LOCATE PX,PY のPXに-1が入ってしまいます。LOCATEにマイナス値を入れてしまうとエラーになってしまうのです。 そこで、 IF B AND 4 THEN VX=-1 となおしました。 すると、PXの値はこの時点では変化しないので、エラーは発生しません。 LOCATEの下の行の PX=PX+VX で 初めてPXの移動が発生し、PX=0+-1 → PX=-1 となります。 (続く)
0そうだね
プレイ済み
返信[18]
親投稿
そしてその下の IF PX<0 THEN PX=0 で左端に引っかかって PX=0 に戻されます。 なのでその下の LOCATE PX,PY:PRINT "┴" では普通にX座標 0に自機が描画されエラーが発生しないのです。 ちょっと、難しかったかもしれませんがどうでしょうか?
0そうだね
プレイ済み
返信[19]
親投稿
<(_ _)> FukanoShouki
ありがとうございます<(_ _)> \(:д;)\
1そうだね
プレイ済み
返信[20]
親投稿
ASA fusuian
ちゃんと動いたようですね! 良かった。 動かないときはわけがわからないし、教わって直してもやっぱりわけがわからなくて難しい! と思ったんじゃないかと思いますが、僕も初めはそうでした。 でも、今度打ち込んだプログラムがうまく動かないときは、この記事のコメントがきっと参考になりますし、何本も打ち込んでから改めてこのコメントを見てわかることもあるかも知れません。 打ち込んで間違えることも、すごく勉強になるんです。
1そうだね
プレイ済み
返信[21]
親投稿
<(_ _)> FukanoShouki
なるほど(`・ω・´)
0そうだね
プレイ済み
返信[22]
親投稿
<(_ _)> FukanoShouki
ちょとした問題が発生しました  十字ボタン左右どちらか押すと端まで止まりません サンプル見たいにちょっとづつ動かす方法を教えてください 皆さんの指摘通りに書き換えました 本当にありがとうございます
0そうだね
プレイ済み
返信[23]
親投稿
おかっぺ Japanese_WASABI
VXと言う変数に入った値で、方向を移動してるよね。BUTTON()の後のIFで方向を変えているんだけど、IFが成り立たない場合にVXの値が、以前の方向のままになっています。 (この説明でわかるかしら)
0そうだね
プレイ済み
返信[24]
親投稿
けい kei0baisoku
16行目と17行目の間に VX=0 VY=0 を入れてみましょう。多分それでやりたいようになります。 なぜそれが必要かは、うまくいったら考えてみてください。ヒントは「VXもVYも、一度値を入れたら次に別の値を入れるまでは変わらない」です。
1そうだね
プレイ済み
返信[25]
親投稿
<(_ _)> FukanoShouki
皆さんありがとうございます わかりました やってみます(`・д・´)
0そうだね
プレイ済み
返信[26]
親投稿
<(_ _)> FukanoShouki
時機がチカチカしているのですがどうしたらなおりますか? 一応プログラム見たのですが自分で何書いてるのかさっぱりです
0そうだね
プレイ済み
返信[27]
親投稿
もしかして、使っているのはnew3DSですか? だとしたら、@LOOP の下の行に GCLSを書くと治るかも・・・?
0そうだね
プレイ済み
返信[28]
親投稿
<(_ _)> FukanoShouki
治りました。ありがとうございます
1そうだね
プレイ済み
返信[29]
親投稿
これはnew3DSでしかおきないバグらしく、たぶん次のアップデートで治ると思います。
1そうだね
プレイ済み
返信[30]
親投稿
<(_ _)> FukanoShouki
果たして、自分はプログラムをかけるようになるのか、ものすごく不安です 今までただ写してようやくできていたのに自分で作れと言われると作れないような気がして、写したプログラムが理解できるならいいのですが、見ても混乱してしまいます。やはりこれはまずいですよね?
0そうだね
プレイ済み
返信[31]
親投稿
<(_ _)> FukanoShouki
るるるきゅ~さんありがとうございます
0そうだね
プレイ済み
返信[32]
親投稿
ASA fusuian
一回二回でわからないのは当たり前! ここからプログラムを改造してみましょうか。 例えば、自機を上下にも動くようにするとか。 Bが1のときと2のときに、PYの値を変化させれば上下に動くようになります。 このヒントだけでできたら大したもんです。
1そうだね
プレイ済み
返信[33]
親投稿
写したものを全部理解するのはむしろ難しいと思います。写経はその中のごく一部でも身に付けばいいぐらいに考えておいたほうがいいです。 あと、最初はほんとによくわからないところは「そういうもの」と割り切って丸暗記でもかまいません。たとえば「GOTOのループのまえにVSYNC 1を入れる」のは丸暗記で大丈夫です。 今回写してみて、自分なりに理解したところがあれば、それをつかって1から本当に適当なものでいいので何か書いてみるといいかと。 プログラムは自分のわかる範囲から、こつこつ積み上げていくのが大事ですね。いきなり大きいプログラムを書こうとすると挫折してしまいます。
2そうだね
プレイ済み
返信[34]
親投稿
<(_ _)> FukanoShouki
2人ともありがとうございます 2人のおかげでなやみが解決しました <(_ _)>
1そうだね
プレイ済み