何をしたい?

ゲームに簡単なプログラムを組み込むためにスクリプト言語とそれを実行するインタープリタをC++で作ってしまおうというコーナーです。
そういえば何が目的で何がしたいのかを忘れていました。


ゲームに使いたい

これは最初からいっていることですね。
例えばRPGのイベントの記述に使ったり、戦闘中に敵の行動パターンをプログラムできたらいいなと思っています。
だから、プログラミング言語としての十分な性能は今回必ずしも必要ないということです。
例えば、多量のデータに対して非常に高速なアルゴリズムが組める必要はありませんし、単体で動作する独立したプログラムを作れる必要もないわけです。
だけど、主人公の残り体力の数値で何かを計算してある数値になると特殊技を発動とか、マップ内の人のうち男だけを特定の場所に移動とか、そのくらいは作れるようにしたいわけです。


機能を作りたい

プログラムといえば命令が並んでいて、一行目から順番に実行していく、というスタイルが通常なのですが、例えばある「モノ」があったとして、その「モノ」を叩いたときの反応とか、舐めたときの反応とか、もっとゲームっぽく言うと、例えば「村人A」がいたとして、「村人A」に話しかけたときの返答とか、イベントアイテムを見せたときの反応とか、筆しらべ一閃したときの不死身っぷりとか、つまり、プログラムを機能ごとに分けて記述し、必要なときにその機能を呼び出すというスタイルもあるわけですね。
こういうのって、オブジェクト指向って言うんでしょうか。
専門用語嫌いの私にははっきりとはわかりませんが。
それで、一つのスクリプトファイルをあたかも一つのオブジェクトのように扱って、その中の関数を機能としてゲーム側から呼び出そうというわけです。