■ 新・ゲーム開発講座 |
■ へっぽこプログラミング入門♪ |
■第15夜:改行 さて、いよいよスクリプトコマンド充実編です♪ 今回は簡単なところから「改行」を実現してみましょう。仕様としては以下のようなものでした。
・・・ミもフタも無いような仕様ですが、まあ中身は超簡単です(笑)。改行というのは、文字の表示位置を変える操作です。テキスト・インタプリタでは1文字表示毎に文字位置をインクリメント(加算)しており、その値はグローバル変数 TEXT_X、TEXT_Y で保持しています。今回は、これを変更してやれば最小限の機能は実現できそうです。 ■実行開始(撃つ) 今回は、コマンドと言っても実際には制御文字の処理にあたるものです。そこで、トリガ(引き金)は制御文字評価を行っている Check_control_chr() 内に設置します。と言っても、「;」を見つけたら改行を行う関数 Com_linefeed() を呼ぶだけです。 |
int Check_control_chr()
{
} |
実際のコマンド処理部分は以下のようなものです(Text_Com_01.cpp 参照)。テキスト表示位置を Xは行頭に、Yは1行下に変更しているだけです。あまりに単純なため、「回す」「締める」にあたる処理はありません。 |
int Com_linefeed() {
} |
ただし、改行を続けていけばいつかは画面下端に当たってしまいます。その場合は「改ページ」処理が必要なのですが、残念ながらまだ作成していません。とりあえず、ここでは暫定仕様のままにして先に進みたいと思います。サンプルソースはこちらですので、動作を確認してみてください。 |
|