我创建了一个利用LuaInterface(通过Lua)来控制应用程序本身的许多方面的XNA应用程序。可以通过反射访问.NET扩展吗?
我为XNA类(特别是KeyboardState
对象)添加了扩展名。问题是,如果我叫和Lua扩展功能,我得到一个错误:试图调用场“的KeyDown”(一个用户数据值
这里是我的Lua脚本:
Game.Updated:Add(function(t)
if Players.LocalPlayer.Controller.KeyboardState:KeyDown(KeyboardKey.W) then
print("W key down")
end
end)
这里是我的模块扩展类:
Imports System.Runtime.CompilerServices
Module XNAExtensions
<Extension()> _
Public Function KeyDown(ByVal this As Microsoft.Xna.Framework.Input.KeyboardState, ByVal e As Integer) As Boolean
Return this.IsKeyDown(e)
End Function
End Module
我在做什么错
那么这肯定是一个下跌。感谢您的帮助。 – FreeSnow 2012-08-01 00:15:40