<ソーステンプレート>

プチコン3号で使える技術を紹介します。


初期化

2014/11/23


プログラムの冒頭で必ず必要な処理が初期化処理です。

プチコン3号では、とりあえず冒頭でACLSと書いておけば大丈夫です。
ACLSはあらゆる初期化をおこない、プチコン初回起動時と同等にしてくれます。

プチコンのヘルプによると、ACLSは下記の処理を行ってくれます。


XSCREEN 0
VISIBLE 1,1,1,1
LOAD "GRP4:SYS/DEFSP.GRP"
LOAD "GRP5:SYS/DEFGP.GRP"
FONTDEF
GPAGE 0,0
GCOLOR RGB(255,255,255)
GCLS 0
GPRIO 512
SPPAGE 4
SPCLR
SPDEF
BGPAGE 5
BGCLR
COLOR 15,0
LOCATE 0,0,0
ATTR 0
CLS



ごらんのとおり、大量の初期化をACLSの一文で行ってくれる、便利な命令です。

とりあえず初期化したいときはACLSでいいんですが、ACLSはきれいになりすぎるきらいがあります。


・ロードした画像がデフォルトに戻ってしまう
・ちょっと重い


プログラムの冒頭で初期化するにはACLSでいいんですが、ゲームオーバーのたびにACLSをしてしまうと、そのたびに自分でロードした画像が飛んでしまいます。
また処理が少し重いので、毎回つんのめる感じになってよくありません。

もっといえば、画像を表示しないコンソールだけのアプリでは、LOAD GRP〜の2行も不要だし、画像を表示するプログラムであってもリソースを上書きすればいいので、デフォルトをいったんロードすることも不要です。

すこしでも起動を速くしたい時などはACLSを使わず、必要な初期化を選んで使ってみましょう。


さいごに、NCFが考える、パターン別の初期化処理を記載しておきます。



●冒頭の初期化

ACLS

’以下、きちんと指定するべき内容
XSCREEN 0
VISIBLE 1,1,1,1
'スプライト読み込むなら指定
' LOAD "GRP4:SYS/DEFSP.GRP"
'BG読み込むなら指定
' LOAD "GRP5:SYS/DEFGP.GRP"



●冒頭の初期化(コンソール系)

XSCREEN 3
VISIBLE 1,1,1,1
FONTDEF
GPAGE 0,0
GCOLOR RGB(255,255,255)
GCLS 0
GPRIO 512
SPCLR
BGCLR
COLOR 15,0
LOCATE 0,0,0
ATTR 0
CLS



●ゲームオーバー後の初期化 ※ゲーム内容によって変更必要

GCLS 0
SPCLR
BGCLR
LOCATE 0,0,0
CLS



<前回記事へ
変数宣言を強制する[2014/11/23)]

TOPへ


Copyright(c) Nakanoshima Candy Fragment All rights reserved