ソースを分ける

Last-modified: 2007-07-14 (土) 22:54:17

さて、三つだけの関数なら、これといって見にくいこともないのですが、これが何十個となると大変です。また、グローバル変数も別のソースファイルに分けておきたい。

その手順を解説します。

 

自動でソースファイルを追加する方法(かんたん)

  1. IDEの左上にあるファイル(F)をクリックしてください。
  2. 出てきたメニューの中からソースを追加(S)をクリックしてください。
  3. フォルダをsourceフォルダ内に指定し、ファイル名のところに、作りたいファイル名(ここでは「S_FILE0.jaf」としておきます)を、入力してください。
  4. すると、
     
    ソースファイル【X:サンプル\source\S_FILE0.jaf】は存在しません。作成しますか?
     
    というダイヤログが出てきます。はい(Y)をクリックしてください。
  5. IDEの左側のソースファイル一覧に新たにS_FILE0.jafが追加されたと思います。
  6. あとはこうして作ったソースファイルで、グローバル関数をまとめたり、機能ごとに関数をまとめるだけです。上手く自分なりにカスタイマイズしてください。

手動でソースファイルを追加する方法(むずかしい)

自動で追加する場合、ソースファイルの指定はincに書き込まれず、直接PJEに書き込まれます。これだとソースファイルをまとめて移動させたりするとき、色々不便だったりするので、出来るなら手動でincにまとめてみましょう。

  1. まず「サンプル.pje」をエディターで開きます。このときIDEからは絶対に開かないこと。PJEの中身が消える可能性があります。
  2. 開いたら、その下の方へスライドさせ、
    // ソースコード一覧
    Source = {
    "game.inc",
    }
    と書かれている部分を見つけましょう。
  3. game.inc",の下に"samp_folder\samp.inc",と書き込んでください。
    // ソースコード一覧
    Source = {
    "game.inc",
    "samp_folder\samp.inc",
    }
  4. sourceフォルダの中に、新しいフォルダを生成してください。フォルダの名前をsamp_folderに変更してください。
  5. samp_folderの中に、新規テキストドキュメントを生成してください。新規テキストドキュメントの名前をsamp.incに変更してください。
  6. samp.incの中を、こんな風に書いてください。
    Source = {
    "S_FILE0.jaf",
    "S_FILE1.jaf",
    }
  7. samp_folderの中に、新規テキストドキュメントを2つ生成してください。まず1つの新規テキストドキュメントの名前をS_FILE0.jafに変更してください。もう1つの新規テキストドキュメントの名前をS_FILE1.jafに変更してください。
  8. これでOKです。あとはIDEの左上のファイル(F)のメニューにある、プロジェクトの再読込(R)をクリックしてください。ソースが2つ登録されたと思います。
     

ネット上で配布されているjafファイルをインクさせてみよう。

有志たちの関数などのページから、有志の追加関数0714.zipを落とそう。
このファイルはzip形式なので解凍し、展開する必要がある。
これはウィンドウズ標準なら普通にできるはず。
解凍されたら、「有志の追加関数」フォルダを丸ごと開発環境のsourceフォルダへ送ろう。

 
samp_sor_01.JPG

sourceフォルダ内のgame.inc(incファイル。上の画像だと右から1番目)をエディターで開き、その中を

 
Source = {
"game_main.jaf",
"scenario_func.jaf",
"有志の追加関数\user.inc", //ここを付け足す
}
 

こんな風に書いてみよう。

 
samp_sor_02.JPG
 

これでインクは完了だ。「有志の追加関数」の中の関数の機能が使えるようになる。
実際組み込まれたどうか、確かめてみよう。

void game_main(void)
{
  MsgCreate1(20);
  MsgCreate2(1000,255,255,255,5,000,000,000,
  0,200,500,120,255,10,10,0);
  int nPar = PER(150,250);
  '250を100%とした時、150はその'N(nPar);'%'A;
}

これでビルドし、正常に動作すればOKだ。
150/250は60/100%らしい。へー。

「有志の追加関数」の中には、SP番号を移動することなしに、CGやαマップの拡大、
上下左右反転などできるものもある。もちろん新しいSPへコピーしつつ加工することもできるぞ。
ポポリタンの機能だけだと物足りない人は追加してみるといい。