これは説明がややこしく、ドキュメントやネット上のどこにもこれについて何も見つからなかったので、これがこの質問に適した場所だと思いました.
C++ を使用して Lua のオブジェクトにプロパティとメソッドを登録しようとしています。
これは私がLuaで達成しようとしていることです:
player = createPlayer()
player:jump() // method
player.x = player.x + 3 // properties
C++ を使用して、例の最初の行を簡単に実現できます
int create_player(lua_State *L)
{
Player* player = new Player();
..
return 0;
}
int main(int args, char * argv[])
{
lua_State* L = lua_open();
luaL_openlibs(L);
lua_register(L, "createPlayer", create_player);
luaL_dofile(L, "main.lua");
..
return 0;
}
:jump()
しかし、メソッドとプロパティ.setX
を作成するにはどうすればよい.getX
ですcreatePlayer
か?