BASIC(IF)


アニメ『ボールルームへようこそ』

面白いですねえ。引き込まれます。

前回に引き続きBASICで、ダンジョンを彷徨うゲーム作成中です。

壁の判定を行う前に、マップ内の移動区間を定めたいと思います。

  select case k$
  case "j"
    ck = y + 1
    if ck <= 8 then y = ck
  case "k"
    ck = y - 1
    if ck >= 4 then y = ck
  case "h"
    ck = x - 1
    if ck >= 8 then x = ck
  case "l"
    ck = x + 1
    if ck <= 28 then x = ck
  end select

このようにまだ壁を通り抜けることができます。

次は、壁(#)の判定です。
次に移動する場所に#があったら、移動しないようにする修正にしました。

  select case k$
  case "j"
    ck = y + 1
    if mid$(map$(ck),x,1) <> "#" and ck <= 8 then y = ck
  case "k"
    ck = y - 1
    if mid$(map$(ck),x,1) <> "#" and ck >= 4 then y = ck
  case "h"
    ck = x - 1
    if mid$(map$(y),ck,1) <> "#" and ck >= 8 then x = ck
  case "l"
    ck = x + 1
    if mid$(map$(y),ck,1) <> "#" and ck <= 28 then x = ck
  end select

Leave a Reply

Your email address will not be published. Required fields are marked *

CAPTCHA