LGP初心者用ミニTips
#Defineを使う(1)
プログラム内で「全く変動しない数値」などがあります。
そのため、直接入力していることが多いです。
I@KeyGet()
If I@KeyBtn(0x1C) Then
G@Print( ch, x, y, "押したよ" )
EndIf
別にこのままでも問題なく動作します。
”ある”キーが押されたら「押したよ」と表示されるのですが、
この数値の意味を、今は分かっていても、数ヵ月後見た時には忘れているかもしれません。
//プログラム先頭で #Define KEY_ENTER 0x1C (中略) I@KeyGet() If I@KeyBtn(KEY_ENTER) Then G@Print( ch, x, y, "押したよ" ) EndIf
このように定義しておけば、いつ見ても何のキーか分かります。
ただし、プログラム内で使用している変数名に被らないようにしてください。
そのためか、定義名は少し長い名称にする場合が多いようです
#Defineを使う(2)
LGPは、はじめに画面の初期化をします。そのとき、解像度や色深度を設定します。ch = G@Setup( 640, 480, 16, 1 )
#Define DISP_WIDTH 640 #Define DISP_HEIGHT 480 #Define DISP_COLOR 16 #Define DISP_WINDOW 1 ch = G@Setup( DISP_WIDTH, DISP_HEIGHT, DISP_COLOR, DISP_WINDOW )
関数の引数で、はみ出てしまうので折り返してますが、この方法はLGP4でのみ可能です。
#Defineを使う(番外編)
非公式な使い方ですが、「IF〜THEN〜ELSE〜ENDIF」をC言語風にできます。If flg == 1 Then G@Print( ch, 0, 0, "フラグONです" ) Else G@Print( ch, 0, 0, "フラグOFFです" ) EndIf
#Define { Then #Define } EndIf #Define }else{ Else if( flg ){ G@Print( ch, 0, 0, "フラグONです" ); }else{ G@Print( ch, 0, 0, "フラグOFFです" ); }