ソースコードの中身

Last-modified: 2007-04-28 (土) 17:06:44

 プログラムコードが書かれたソースファイルを読み書きするのは
 ウィンドウズ標準のメモ帳でも出来ますが、
 テキストエディタと呼ばれるソフトウェアを使用したほうが、より便利です。
 持っていない方は、Vectorや 窓の杜 などのサイトから適当なものを探してお使い下さい。
 ベクターへはここの関連linkからいけます。

 

 ※代表的なエディターソフト
  TeraPad
  Vim
  BigEditor など

 

 とりあえずエディタをセットしてください。
 ファイル→環境設定→エディタの項にあるEXEのパスの「...」ボタンを押すと、
 ダイアログが出てきます。エディターのEXEファイルを参照先として指定して下さい。
 ちなみに、標準のメモ帳は「WINDOWS」フォルダの中に
 「NOTEPAD.EXE」という名前で存在します。

 

 他のエディターを使う場合
例:TeraPad

edit_set_smp002.JPG

 このように環境設定を出して

 
edit_set_smp001.JPG

 こんな風にEXEを指定します。

ではエディターをセットしたら、ソースを見てましょう。


 

 何も実行されてはいませんが、それでもソースコードは存在します。
 まずはそのソースコードの解説をしたいと思います。

 「Source」フォルダの中にいくつかのソースファイルと「System」フォルダがあります。
 このなかで特に重要なのは、「System」フォルダの中身です。
 でも、まだ気にしないでおきましょう。

 

 さて、「game_main.jaf」というソースファイルがあります。
 それ以外のファイルは、いまは気にしないでおきましょう。

002_p002.JPG

 これをダブルクリックしてください

game_main.jafの中は、


void game_main(void)
{
 for (;;) { UPDATE(); }

}


こんな感じになっています。まず1行目の「void game_main(void)」ですが、これは関数を定義しています。これはプロジェクト中に必ず1つだけ必要な関数です。

2行目の「{」と5行目の「}」は、game_main関数の定義がどこからどこまでかを意味するものです。

最後に3行目の「for (;;) { UPDATE(); }」は、UPDATE関数を無限に呼び出す無限ループを意味しています。

とまあ、こんな感じのソースです。
何かの処理をさせたい場合は、このgame_main関数の中にコードを書いていけばOKです。

例:


void game_main(void)
{
N(12+4);
A;

}


もしくは


void game_main(void)
{
string s;
SACT.IntToZenkaku(s, 12+4, -1, false);
message(-1, -1, s);
SACT_A_IMPLEMENT(true);

}


するとこんな画面がでます。

002_p001.JPG

  クリックするとSYSTEM4は終了します

 

12+4の部分を変えてみて下さい。いろいろ結果が変わるはずです。

 

ちょっと分かりにくい話。分からなくても良いです。
一番目のgame_main関数も、二番目のgame_main関数も、同じことをしています。
試しに、
N(12+4);

string s;
SACT.IntToZenkaku(s, 12+4, -1, false);
message(-1, -1, s);

に変えてみて下さい。同じ結果になります。
ソースが違うのになぜ? と思うかもしれません。
その理由を説明すると、
「System」フォルダの中のファイルにいくつかの関数があり、DLLを読み出しやすくしています。
また、長いコードを一部省略(引数とか)するための関数もあります。
これらの関数たちをまとめて、「SACT2」と呼びます。
(最初に呼び出されるgame_main関数も、SACT2のひとつです)

このDLLを呼び出す関数と省略している関数を使っているのが一番目、
DLLを直接呼び出したり、引数を省略していない関数を使っているのが二番目となります。