ゲームのMODを書こうとしています。これは私にとってまったく新しい領域なので、ここで間違った方向に進んでいる可能性があります。ゲームは Unity で書かれており、mod に .script ファイルを追加できます。.script ファイルには、Jint によって解析される JavaScript を含めることができます。
ゲーム DLL の 1 つから単純な文字列を出力しようとしました。
var UnityEngine = importNamespace("UnityEngine");
var IceEngine = importNamespace("IceEngine");
var GameMain = importNamespace("GameMain");
var output = GameMain.Game.ModPath;
UnityEngine.Debug.Log("----- Testmod Output Start-----");
UnityEngine.Debug.Log(output);
UnityEngine.Debug.Log("----- Testmod Output End-----");
GameMain.dll には次のように書かれています。
public class Game : MonoBehaviour, IUserManagerListener, IAccountMsg, IMsg, IRenderListener
{
private static string modPath = Game.userPath + "/Mods";
// lots of other code...
public static string ModPath
{
get
{
return Game.modPath;
}
}
私の理解では、GameMain.Game.ModPath は文字列を提供する必要があります。しかし代わりに、ログ ファイルの出力は次のようになります。
----- Testmod Output Start-----
System.Dynamic.ExpandoObject
----- Testmod Output End-----
どんなに出力しようとしても、System.Dynamic.ExpandoObject を取得し、それをどう処理すればよいかわかりません。誰かが私に役立つヒントやリソースを提供してくれるかもしれません。:)