トピック
サロww simasima0211

文字だけの、ギミック付きRPGを作りたいのですが、作り方がわからないので、私の質問に答えていただける方を探しています。全て答えた方は、フォローします。どうかお願い致します。

<質問1>主人公を動かし方を教えてください。また、動けない場所は、動けないように、動けるところは動けるようにする方法を教えてください。(後で私の構想を画面写真で教えます。)
0そうだね
プレイ済み
返信[1]
親投稿
サロww simasima0211
構想案です。一応公開しています。キーは写真にあります。ご協力お願い致します。
1そうだね
プレイ済み
返信[2]
親投稿
ケイン KEIN.HORGAN
質問1、とありますが、その内容を実現するだけでも結構行数が必要です。 なので、もう少し細かく分けて考えると良いと思います。 最初に、文字を移動させる手段について。 BASIC において文字を移動させるとは、つまり ・移動元の文字を削除する ・移動先に文字を表示する の二つを行う事です。 この二つは、どちらもLOCATE 命令とPRINT 命令を組み合わせる事で実現が可能です。
0そうだね
プレイ済み
返信[3]
親投稿
ケイン KEIN.HORGAN
例) ACLS FOR I=0 TO 9 LOCATE X+I,10 ' 文字を表示する位置です PRINT "@" ' 文字を表示します VSYNC 3 ' プチコンは速度が速いので、少し待ちます LOCATE X+I,10 ' 移動する前に、文字を消す為の座標指定です PRINT CHR$(0) ' ここで文字を消しています NEXT
0そうだね
プレイ済み
返信[4]
親投稿
ケイン KEIN.HORGAN
さて、次に主人公を自由に動かすにはどうすればいいのか? これは、 1.十字ボタンが押されているかどうかを確認する (BUTTON 命令) 2.押されたボタンに対応して、キャラクターを移動させる (IF 命令) 3.1に戻る (WHILE ~ WEND 命令) 本当は移動先が正しいかどうかのチェックも必要ですが…… 今の段階では考えずに、まずは十字ボタンで動かせるようになる事に集中してください。
0そうだね
プレイ済み
返信[5]
親投稿
サロww simasima0211
お手数ですが…それをプログラムにして公開していただけませんか?
0そうだね
プレイ済み
返信[6]
親投稿
ケイン KEIN.HORGAN
上ボタンが押されているか確認する時の例 WHILE TRUE B=BUTTON() IF B==#UP THEN PRINT "上ボタンが押された" END VSYNC WEND 上記でPRINT しているところで、キャラクターを移動させるサブルーチンを呼び出します。 (GOSUB命令) 一度に説明されるのも大変でしょうから、一旦ここまでにしておきます。 キャラクターの移動が出来るようになったら、また言ってください。
0そうだね
プレイ済み
返信[7]
親投稿
ケイン KEIN.HORGAN
さすがにコードを全部書くつもりはないので、自分で頑張ってみてください。 分からないところを答えるくらいの事はしてもいいので、コードを書いてみて、実行してみて、それでもまだ分からない、というところが出たらまたどうぞ。
4そうだね
プレイ済み
返信[8]
親投稿
ツララ LongIceSword
表示していないグラフィック面を使ってフラグ管理するってのはどうですか? プチコン3号のグラフィック画面はかなり大きいので、ドット1つがキャラクター1つ分として、表示するキャラクター管理用、動ける範囲判定用、敵の位置(当たり)判定用と複数使っても50×30ドットのサイズなら全然余裕ですし。 GSPOITやGPSETで読み書きする座標を指定する時は、それぞれ用途別に確保した領域の座標の左上端の初期値を配列に入れておいて切り替えればいいと思います。
1そうだね
プレイ済み
返信[9]
親投稿
otta777 otta777a
コンソール画面に表示した文字はCHKCHR関数で キャラクターコードを調べることができるので 移動先の座標のキャラクターコードを調べれば 移動できない場所かどうかは判別ができますね。
1そうだね
プレイ済み
返信[10]
親投稿
サロww simasima0211
よくわからないので、良かったら合作していただけないですか?
0そうだね
プレイ済み
返信[11]
親投稿
ケイン KEIN.HORGAN
コードを書く、という形での合作はするつもりはありませんが…… 1.サロさんがコードを書く。 2.もしエラーが出たら、「その近辺の各命令をどういうつもりで書いたのか?」の細かい説明をつけてここにアップする。 3.それに対して、こちらから「どうしてエラーになるのか?」を説明する もしくは、 1.サロさんがしたい事があるけど、処理の流れが分からないから質問する 2.それに対して、こちらから「こういう流れでやればいいと思う」と提案する こういう形でなら協力してもいいです。
2そうだね
プレイ済み