あ、すいません
すごいですね!!ありがとうございます。
しかし、マップを切り替えるたびに@MAINLOOPに移動していたら…IF文が大量に発生するのでは!?
そして、マップ2種類で同じ階段を使っているのに行き先が違う…
IF 自分はMAP02に居る&&階段に触れている THEN goto @map01
IF 自分はMAP01に居る&&階段に触れている THEN goto @map02
みたいな?
簡単ですよ。
例
マップが13とします。
そしてあらかじめ用意しておいた二次元配列を使います。
FOR I=0 TO そのマップの当たり判定の数-1
IF (X+Y)==二次元[13,I] THEN GOTO "HANTEI"+STR$(I)
NEXT
みたいな感じ。
二次元配列の中には判定する座標のXとYを足した数を入れればいいと思います。それだと1ドットしか判定できないのでIF文は少し工夫が必要です。(四角判定すればいいだけ。)
マップが多いと二次元の配列の書き込みに時間が掛かりますが自分はこれしか思い付かないのでそれで許してくだせぇ。