マップと敵キャラコマンドの全般

## マップコマンドと敵キャラコマンドの全般の説明

１．コマンドの単位
通常のコマンドは２バイトで１つの命令になりますが、以下については例外です。
１バイト命令
●　マップデータの終了を命令する　ＦＤ
●　敵データの終了を命令する　　　ＦＦ
３バイト命令
●　敵キャラクターコマンドにおける各ルーム間の移動の命令（詳細後述）
２．コマンドオーバーについて
マップコマンドについては、３つの障害物までを縦に並べる事が可能ですが、４つ以上並べようとすると、その命令からそのページの終わりまでは表示されなくなります。
ただし、基本背景ブロック（詳細後述）は例外で、その命令を出した横位置（すなわち、そのブロックが始まる１つ前の横位置）１キャラ分のみがカウントされます。
敵データについては、一画面について５キャラクターまでしか表示されません。（いわゆるキャラクターオーバーというやつです）また、マップコマンドで出現させるものの中にも、キャラクターがあります。ジャンプ台・土管の中のパックンフラワー・空飛ぶプクプク（連続）・大砲玉（連続）・ポールの旗・城のクリアした時に上がる旗などです。面の途中でキャラクターオーバーしたとしても、ゲームは正常に進みますから問題有りませんが、ポールの近くだけは注意して下さい、ここにキャラクターを不用意に出現させると、暴走しやすくなり、ゲーム続行不可能になったりします。ポールの近くにはなるべくキャラクターを出現させないようなマップ設定を心がけて下さい。特に連続出現キャラ（空飛ぶプクプク、大砲玉連続、ジュゲム、クッパの炎連続）を出した時は、ポールを出現させる前に、そのキャラを出なくするマップコマンド（マップコマンド一覧参照）を欠かさないようにして下さい。
３．改ページフラグ
マップコマンド及び敵キャラクターコマンドにおいて、各ページの最初の命令は、改ページフラグをＯＮにします。２バイト命令及び３バイト命令の２バイト目の最上位１ビットが０なら改ページ無し。１なら改ページして、新しいページの最初のコマンドとなります。但し、マップデータの最初の２バイトのみは例外で、ページ先頭フラグは存在しません。
なお敵キャラクターは各ルームの先頭ページに出現させる事は出来ません。したがって、敵キャラクターデータの最初の命令は常にこの改ページフラグをＯＮにしなくてはなりません。
第１バイト　　　　第２バイト
８４２１　８４２１　８４２１　８４２１
↑
ページ先頭フラグ
０なら改ページ無し
１なら改ページ有り
以後改ページフラグをｐと表記します。
４．横位置・高さ位置・キャラの長さ、幅について

| MARIO 0000000 |  |  |  |  |  |  |  | TIME 400 |
０ |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
１ |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
２ |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
３ |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
４ |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
５ |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
６ |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
７ |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
８ |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
９ |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
Ａ |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
Ｂ |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
Ｃ |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
| ０ | １ | ２ | ３ | ４ | ５ | ６ | ７ | ８ | ９ | Ａ | Ｂ | Ｃ | Ｄ | Ｅ | Ｆ
| ←１ページ分→

上の図のように、高さ位置は、点数や時間表示のある位置を−１とし、画面の一番下で、半分表示されている部分をＣとします。通常面（マリオ１原本の１−１など）の地面の位置は高さＢになります。
横位置は、ページの始まりを０とし、ページの終わりをＦとします。

| MARIO 0000000 |  |  |  |  |  |  |  | TIME 400 |
０ |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
１ |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
２ |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
３ |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
４ |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
５ |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
６ |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
７ |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
８ |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
９ |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
Ａ |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
Ｂ |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
Ｃ |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
| ０ | １ | ２ | ３ | ４ | ５ | ６ | ７ | ８ | ９ | Ａ | Ｂ | Ｃ | Ｄ | Ｅ | Ｆ
| ←１ページ分→

キャラの長さ（幅）は上の図のような、縦に並んだブロックがあったとしますと、これを長さ３のブロックと呼びます。
また、高さ位置、横位置はそのキャラの左上の位置を基準として表現します。 すなわち、上の図では、横位置３、高さ８、長さ３の縦に並んだフ゛ロックと言います。
以後、横位置＝ｎ、高さ位置＝ｈ、長さ（幅）＝Lと表記します。 　すなわち、上の図の縦に並んだブロックは、ｎ＝３、ｈ＝８、L＝３です。
マップコマンド一覧へ
敵キャラコマンド一覧へ
戻る
ホームページへ
本文中の会社名及び商品名は各社の商標または登録商標です。