Last Update 08/05/21

ブルースステージ1の仕掛け



◇ブーンブロック
・$3BB04-3BB05 (2) $3BB06を基点としたブーンブロック出現データへの1byte相対アドレス

・$3BB06-3BB4A ブーンブロック出現データ
3bytesで1組のデータ。1組で1個のブロックの出現データを表す。
byte0 -> X座標
byte1 -> Y座標
byte2 -> 同時に出すブロックがあるか
  00 -> 同時に出すブロックはもう無い
  01 -> 同時に出すブロックがまだある
  FF -> データ終端(出現データの先頭に戻る)

例えば、以下のデータだと、
38 98 01 98 B8 00 38 68 01 78 A8 00 48 A8 FF

+→(38, 98), (98, B8)にブロック出現 (38 98 01 98 B8 00)
|    ↓
|  (38, 68), (78, A8)にブロック出現 (38 68 01 78 A8 00)
|    ↓
|  (48, A8)にブロック出現 (48 A8 FF)
|     |
+-----+
のようになる。

ブーンブロック(EnemyID:58)は、設置部屋番号を元に参照するデータが決まる。
$3BBF3 + 設置部屋番号 で上記のブロック出現データへの相対アドレスを取得するため、そのままでは部屋番号#$11以降に設置しなければ正常に動作しない。
ここでは、設置部屋番号ではなく設置Y座標によってブロック出現データへの相対アドレスを取得するような変更を例示する。

$3BAA2 : 48 -> 78 (設置部屋番号ではなく設置Y座標を参照するようになる)
$3BAA5 : E3 -> F4 (設置Y座標=00で$3BB04, 01で$3BB05,...を参照するようになる)