次の画像は、最初の画像のコードをMID$ を使って書き直したものです。
幅13マスの枠内に表示するので、基本的には「主人公の左右±6マス」をマップデータから抜き出せばよいのですが……
「主人公がマップの左(右)の方にいて、マップの左(右)に6マスもない」
というような状況に対処する為に、条件判断を行っています。
V_LEFT は、画面に表示される左端のマップ座標
V_RIGHTは、画面に表示される右端のマップ座標
ADD_LEFT,ADD_RIGHT は、マップが表示域に不足している場合の不足量。
この数だけ空白で埋めます。
202行で抜き出しを行い、205行で表示を行っています。
これでようやく主人公のいる行の表示が出来るようになったので、次回は同じような感じで上下方向も実装したいと思います。
1そうだね プレイ済み