概要
前節では、C++/CLIのミニマムサンプルでIronPythonを呼び出しました。
ここまで知っておけばHD.version.SDKでIronPythonを利用する方法を理解するのは簡単です。
HD.version.SDK側
HD.version.SDKのソースには、「On_ゲームウィンドウ起動時」あたりで、Python関連のエンジンやスコープを構築します。
それらはメソッドを跨いで利用しますので、下のソース例の「GREF」クラスのように、
グローバル変数的な形で参照を持っておく必要があることに注意しましょう。
On_相場変更直前()で前節の例と全く同じことを再現したものとなります。
On_起動時にGREFに控えた「PythonEngineへの参照(GREF::pe)」や「スコープへの参照(GREF::scope)」を使う点だけ変更点です。
Python側
スクリプト側は前節と全く同じものです。
C++/CLIの「マルチバイト」から呼ばれますので、「script.pyのソースコードの文字コードをShitJIS(=cp932)」で保存してください。
(テキストエディタなどで実際に確認してください。間違っているとSyntax Errorが出ます)
以上となります。
今回のIronPythonModの仕組みは、汎用的なIronPythonのdllの使い方と同一です。
ですので、C#から呼び出し、C++/CLIからの呼び出し、いずれでもよいので使い方を知っておけば、
自作プロジェクトや他のゲームのMod制作などにおいて、幅広く役立つことでしょう。