#pragma once #include "lua.h" #include "space.h" #define PLANET_METATABLE "Planet" #define SYSTEM_METATABLE "System" /* Lua wrappers. */ typedef struct LuaPlanet_ { Planet* p; } LuaPlanet; typedef struct LuaSystem_ { StarSystem* s; } LuaSystem; /* Load the space library. */ int lua_loadSpace(lua_State* L, int readonly); /* Planet operations. */ LuaPlanet* lua_toplanet(lua_State* L, int ind); LuaPlanet* lua_pushplanet(lua_State* L, LuaPlanet planet); int lua_isplanet(lua_State* L, int ind); /* System operations. */ LuaSystem* lua_tosystem(lua_State* L, int ind); LuaSystem* lua_pushsystem(lua_State* L, LuaSystem sys); int lua_issystem(lua_State* L, int ind);