ANoMEヘルプ
■ F A Q


・マップを描画したら、「配列が無効です」エラーがでるのですが…



    そもそも「ANoME」のマップデータは単なる配列変数であり、

    その数値をもとにしてマップを描画しています。

    そこで、

    ■=配列で書かれたマップの表示範囲 
    ▲=自分 ○=一度に表示できるマップの範囲

    として、下図のような状況下を例にとってみましょう。

    ・図1

    ○○○■■■■■■■
    ○▲○■■■■■■■
    ○○○■■■■■■■
    ■■■■■■■■■■

    図1の状態では、▲、つまり自分は画面上では一歩上か左に

    歩けそうな感じに見えるのですが、

    だからと言って一歩上か左に歩くと・・・

    ・図2

    ○○○
    ○▲○■■■■■■■
    ○○○■■■■■■■
    ■■■■■■■■■■
    ■■■■■■■■■■

    こうなってしまいます。

    要するに、配列は■の分しか確保していないので、

    図2のように、画面上に表示できる範囲が配列の外に行ってしまい、

    「配列が無効です」エラーが出てしまうというわけです。

    対処法としては、少々大きめにマップを作る(簡単)か、

    プログラム側で、マップの端に来るとスクロールを止めてしまう(難しい)

    かすると良いでしょう。

B a c k