文字コードを参照
macros/text_macros.asmで定義されている
マクロ | 役割 |
---|---|
text ●● | ここからテキストの描画を開始し●●というテキストを表示 |
next ●● | 次の行に●●というテキストを表示(図鑑などで使われる。改行文字みたいなもの) |
line ●● | テキストボックスの2行目に●●というテキストを配置(テキストボックス用の改行文字みたいなもの) |
para ●● | 次のパラグラフ(スクロールではなく新しいテキストボックス)を開始し、●●というテキストを表示 |
cont ●● | 次の行にテキストボックスをスクロールさせ、●●というテキストを表示 |
done ●● | ●●というテキストでテキストボックスを終了させる。(イベントなし) |
prompt ●● | ●●というテキストでテキストボックスを終了させる。(この後ほかのイベントが開始する) |
例えば次のテキストデータは次のように解釈できる
_PalletTownText5::
text "PALLET TOWN"
line "Shades of your"
cont "journey await!"
done
- テキストボックスが開いて『PALLET TOWN』を1行目に配置
- テキストボックスの2行目に『Shades of your』を配置
- テキストボックスの3行目(Aボタンを押すとテキストボックスが下にスクロール)に『journey await!』を配置
- テキスト終了
テキストの描画は基本的にPlaceString
関数で行う。
PlaceString
はdeレジスタのアドレスにある文字列をhlに移す関数なので、deレジスタに表示したい文字、hlレジスタに表示先のタイルアドレスを指定してPlaceString
を実行することでテキストの描画を行う
テキストデータは、画面に描画する用途以外にも独自の内部コマンドとして使われる用途も持っている。
TextCommandProcessor
でbcレジスタの示すアドレスにある文字列をさながらスクリプトのように解釈する。
このテキストコマンドによってプロンプト(▼)の点滅や、テキストボックスのスクロールなどの処理を呼び出せたりする。