Archiverse Internet Archive
投稿のみ 投稿と返信
前のページ(最近)
162 63 64 65 66 67 68 69 70 71 72
次のページ(過去)
返信[5]
親投稿
otta777 otta777a
プチコン3号においてFOR~NEXTの利点はラベルを使わずにループが出来ることです。同等の処理を記述するのに短く簡潔に記述できるのも利点かと思います。
0そうだね
プレイ済み
返信[1]
親投稿
otta777 otta777a
敵が自分を追いかけてくるにはどうしたらよいかと言うことですが、自分と敵の位置を比較して敵の位置が自分の位置より大きければ敵の位置を減らして小さければ増やすと言う処理を実装すれば追いかけてくるようになります。 IF X>TX THEN TX=TX+2 IF X<TX THEN TX=TX-2 Y座標も同様の処理を追加して下さい
0そうだね
プレイ済み
返信[1]
親投稿
otta777 otta777a
87~90のFOR TK=0 TO 2からNEXT TKの処理が終わるとTKの値は3になります。DIM TEKI[3]としていた場合は96行目でTEKI[3]を参照しようとするためSubscript out of rangeが発生します。
0そうだね
プレイ済み
返信[4]
親投稿
otta777 otta777a
一つアイデアを。鶏がゴールしたかどうかCという変数でチェックしていますがどの鶏がゴールしてもCを1にしているため2着以降の鶏のX座標が2になった時にX座標を3にする処理が行われず結果メインルーチンでゴールインする処理が行われないようです。鶏ごとにゴールしたかチェックをする(鶏2,3,4はC2,C3,C4という変数でチェックする)というのはどうでしょう?
0そうだね
プレイ済み
返信[2]
親投稿
otta777 otta777a
プログラムを見させていただきました。鶏の移動処理で鶏がゴールを過ぎたときに位置を修正する部分の条件に問題があるようです。あとどの鶏もゴールしていないときのみX座標を3にしているためどれか鶏がゴールした後にX座標が2になるとメインルーチンでゴールの処理に飛びません。
0そうだね
プレイ済み
返信[1]
親投稿
otta777 otta777a
ニンテンドードリーム1月号の付録プチ・ガイドブックによると「プチコン3号完全ガイド」が発売予定となっています。プチコンmkIIでも「プチコン公式活用テクニック」というガイドブックがあり、自分も大変お世話になりました。
1そうだね
プレイ済み
返信[6]
親投稿
otta777 otta777a
入力する文字を制限する場合はでんぺんさんのおっしゃるようにINKEY$で1文字ずつ処理する必要がありますね。この場合0~9の数字、バックスペース、ENTERキーを受け付けるようなプログラムを組む必要がありますね。そして桁数を制限するなら何文字入力しているかをカウントして桁数以上の入力は受け付けないようにする必要がありますね。
0そうだね
プレイ済み
返信[4]
親投稿
otta777 otta777a
すいません、保存するプログラムの2行目は FOR I=0TO LEN(A$)-1に変更して下さい。 これだとエラーになっちゃいます。
1そうだね
プレイ済み
返信[2]
親投稿
otta777 otta777a
読み出す場合は LOAD ”TXT:TEST" OUT BUF$ P=0:IX=0 WHILE P1<LEN(BUF$)-1 P1=INSTR(P0,BUF$,CHR$(10)) A$[IX]=MID$(BUF$,P0,P1-P0):P0=P1+1:INC IX WEND
0そうだね
プレイ済み
返信[1]
親投稿
otta777 otta777a
SAVE "TXT:ファイルネーム",文字列変数 で保存が出来るので文字配列変数の各要素を文字列変数に 区切り記号付きで連結すれば保存可能です。 配列文字変数A$を保存するには BUF$="" FOR I=0 TO LEN(A$) INC BUF$,A$[I]+CHR$(10) NEXT SAVE "TXT:TEST"、BUF$
1そうだね
プレイ済み
返信[5]
親投稿
otta777 otta777a
毎回GCLSとGFILLするのは縦線と横線を消すためですね。余談以降の内容は間違いです。ラベルの位置は変更鳴らさないで下さい。
0そうだね
プレイ済み
返信[4]
親投稿
otta777 otta777a
このプログラムですと画面をタッチしていない時はIF~ENDIF間は処理されないためWAIT 1が実行されません。WAIT 1をENDIFの後に記述すれば画面をタッチした場合もしない場合もWAIT 1を実行するため画面のちらつきはなくなります。余談ですが、同じ位置に四角形を表示するなら毎回GCLSしてGFILLで描写しなくても良いと思うので@MAINのラベルはTOUCH命令の直前で良いかと思います。
0そうだね
プレイ済み
返信[9]
親投稿
otta777 otta777a
この記述の仕方だとSTの値が0以外になった場合にRETURN without GOSUBのエラーが発生します。今の状態だとSTは変化しないので エラーは出ないと思いますが思わぬバグの原因になってしまいます。 IF文のどの条件にも当てはまらなかったときに@UE以降が実行 されないようにしないといけませんね。 この場合はGOTO @TOP2でいいのかな?
1そうだね
プレイ済み