2017-05-16 05:02:08 +00:00
|
|
|
#include "api/lovr.h"
|
|
|
|
#include "physics/physics.h"
|
|
|
|
|
2017-05-16 05:03:01 +00:00
|
|
|
int l_lovrWorldGetGravity(lua_State* L) {
|
|
|
|
World* world = luax_checktype(L, 1, World);
|
|
|
|
float x, y, z;
|
|
|
|
lovrWorldGetGravity(world, &x, &y, &z);
|
|
|
|
lua_pushnumber(L, x);
|
|
|
|
lua_pushnumber(L, y);
|
|
|
|
lua_pushnumber(L, z);
|
|
|
|
return 3;
|
|
|
|
}
|
|
|
|
|
|
|
|
int l_lovrWorldSetGravity(lua_State* L) {
|
|
|
|
World* world = luax_checktype(L, 1, World);
|
|
|
|
float x = luaL_checknumber(L, 2);
|
|
|
|
float y = luaL_checknumber(L, 3);
|
|
|
|
float z = luaL_checknumber(L, 4);
|
|
|
|
lovrWorldSetGravity(world, x, y, z);
|
|
|
|
return 0;
|
|
|
|
}
|
|
|
|
|
2017-05-16 05:04:05 +00:00
|
|
|
int l_lovrWorldUpdate(lua_State* L) {
|
|
|
|
World* world = luax_checktype(L, 1, World);
|
|
|
|
float dt = luaL_checknumber(L, 2);
|
|
|
|
lovrWorldUpdate(world, dt);
|
|
|
|
return 0;
|
|
|
|
}
|
|
|
|
|
2017-05-16 05:02:08 +00:00
|
|
|
const luaL_Reg lovrWorld[] = {
|
2017-05-16 05:03:01 +00:00
|
|
|
{ "getGravity", l_lovrWorldGetGravity },
|
|
|
|
{ "setGravity", l_lovrWorldSetGravity },
|
2017-05-16 05:04:05 +00:00
|
|
|
{ "update", l_lovrWorldUpdate },
|
2017-05-16 05:02:08 +00:00
|
|
|
{ NULL, NULL }
|
|
|
|
};
|