トピック
つばさ☆ nsm2116

BGに当たり判定をつけるBGGETの使い方を詳しく教えて頂けませんか?

1そうだね
プレイ済み
返信[1]
親投稿
ΖΕΧ ZEX256
BASIC自体には壁という概念が無いので、 壁をすり抜けない方法は、貴方の作るプログラムによって、 貴方が壁と考えるBGキャラの位置に、 自キャラが入り込まないように 自キャラの移動を制限することで実現できます。 で、指定座標にあるBGのキャラクタ番号を調べるのがBGGETです。
1そうだね
プレイ済み
返信[2]
親投稿
ΖΕΧ ZEX256
BGGETはBGに当たり判定を付ける命令ではありません。 指定座標のBGキャラ番号を得るための命令です。 キャラクタをボタン動作で移動させる場合、次の手順を踏みます。 ボタン入力→自キャラの座標を移動計算→自キャラの座標に自キャラ表示 この「自キャラの座標を移動計算」の前に、 ボタンを押した先の座標にあるBGキャラクタ番号を調べ、 その番号が、貴方の考える壁の番号だったら、自キャラの座標を進めない。 とすることで壁に入らないようにできます。
1そうだね
プレイ済み
返信[3]
親投稿
otta777 otta777a
BGGET命令の文法などはヘルプを参照して下さい。 当たり判定を付けるにはキャラクターの移動先の BGキャラクター情報を取得して障害物で無かったら 移動するという方法が考えられます。 CH=BGGET(0,PX+VX*16,PY+VX*16,1) IF CH!=WALL THEN PX=PX+VX:PY=PY+VY SPOFS SPPL,PX,PY
0そうだね
プレイ済み