从 NLua 调用通用 C# 方法的语法
Syntax to call generic C# method from NLua
我在找出使用 NLua.
从 Lua 调用通用 C# 函数的正确语法时遇到了一些问题
我正在尝试从 Lua
调用以下 C# XNA 函数
GameWorld.Instance.Content.Load<Texture2D>("player");
但是我在使用通用 <T>
部分时遇到了一些语法问题。我当前的 lua 调用看起来像这样,这显然是不正确的,因为我收到 LuaScriptException.
GameWorld.Instance.Content:Load<Texture2D>("player")
我正在为每种资产类型创建 class AssetManager,其中包含一对 Load/Get 方法。
class AssetManager
{
private ContentManager content;
private Dictionary<string, Texture2D> textures; // fonts, sprites, models and so on
AssetManager(ContentManager pContent)
{
this.content = pContent;
this.textures = new Dictionary<string, Texture2D>();
}
public void LoadTexture(string pName, string pAssetName)
{
this.textures.Add(pName, this.content.Load<Texture2D>(pAssetName);
}
public Texture2D GetTexture(stirng pName)
{
return this.Textures.ContainsKey(pName) ? this.Textures[pName] : null;
}
}
C# 和 Lua 的简单用法。
我在找出使用 NLua.
从 Lua 调用通用 C# 函数的正确语法时遇到了一些问题我正在尝试从 Lua
调用以下 C# XNA 函数GameWorld.Instance.Content.Load<Texture2D>("player");
但是我在使用通用 <T>
部分时遇到了一些语法问题。我当前的 lua 调用看起来像这样,这显然是不正确的,因为我收到 LuaScriptException.
GameWorld.Instance.Content:Load<Texture2D>("player")
我正在为每种资产类型创建 class AssetManager,其中包含一对 Load/Get 方法。
class AssetManager
{
private ContentManager content;
private Dictionary<string, Texture2D> textures; // fonts, sprites, models and so on
AssetManager(ContentManager pContent)
{
this.content = pContent;
this.textures = new Dictionary<string, Texture2D>();
}
public void LoadTexture(string pName, string pAssetName)
{
this.textures.Add(pName, this.content.Load<Texture2D>(pAssetName);
}
public Texture2D GetTexture(stirng pName)
{
return this.Textures.ContainsKey(pName) ? this.Textures[pName] : null;
}
}
C# 和 Lua 的简单用法。