2.新しいカスタムブロックを作ってみよう
cape.txtというファイルを作り、以下の内容を書き込みます。
LDA #$02
STA $19
RTS
マリオをマント状態にするブロックです。
RTLで終わるLevelASMと違って、カスタムブロックの終了コードはRTSになります。
このファイルをTRASMなどのアセンブラで変換すると、cape.binというファイルができます。
これがblktool用のバイナリファイルとなります。
このファイルをBlktool.exeと同じフォルダに置きます。
Blktoolを起動して、「ブロック」→「データの編集」を開きます。
►┃をクリックすると、登録されてる最後のブロック番号にジャンプします。
このブロック番号を覚えておきましょう。
さらに+をクリックすると新しいページが現れますので、そこに必要事項を記入します。
ブロック番号
新しいブロックに割り当てる番号です。
先ほど覚えた番号の次の番号を使いましょう。
ブロック名
LunarMagic上で表示されるブロック名です。
ファイル名
使用するブロックデータファイルの指定です。
先ほど作成したcape.binを使います。
Below Offset
マリオが下から触れたときの動作設定です。
動作させたければ0を、動作させたくないなら-1を入れましょう。
Above Offset
マリオが上から触れたときの動作設定です。
Sides Offset
マリオが左右から触れたときの動作設定です。
Spr UD Offset
オブジェクトと反応するスプライトが上下から触れたときの動作設定です。
Spr LR Offset
オブジェクトと反応するスプライトが左右から触れたときの動作設定です。
Cape Offset
マントで攻撃したときの動作設定です。
Fireball Offset
ファイアボールで攻撃したときの動作設定です。
Reloc Offset
-1を入れましょう。
解説
LunarMagic上で表示される説明文です。
Whole Page
チェックが入ってると、その16x16ページにある256個のブロック全部に効果が適用されてしまいます。
チェックを外しておきましょう。
前回と同じように挿入し、適当なグラフィックを設定します。
無事導入に成功しました。