mirror of https://github.com/bjornbytes/lovr.git
Body:getMass; Body:setMass;
This commit is contained in:
parent
e18f3e3f9d
commit
e8686ffaea
|
@ -287,6 +287,19 @@ int l_lovrBodyGetWorld(lua_State* L) {
|
|||
return 1;
|
||||
}
|
||||
|
||||
int l_lovrBodyGetMass(lua_State* L) {
|
||||
Body* body = luax_checktype(L, 1, Body);
|
||||
lua_pushnumber(L, lovrBodyGetMass(body));
|
||||
return 1;
|
||||
}
|
||||
|
||||
int l_lovrBodySetMass(lua_State* L) {
|
||||
Body* body = luax_checktype(L, 1, Body);
|
||||
float mass = luaL_checknumber(L, 2);
|
||||
lovrBodySetMass(body, mass);
|
||||
return 0;
|
||||
}
|
||||
|
||||
const luaL_Reg lovrBody[] = {
|
||||
{ "getPosition", l_lovrBodyGetPosition },
|
||||
{ "setPosition", l_lovrBodySetPosition },
|
||||
|
@ -317,5 +330,7 @@ const luaL_Reg lovrBody[] = {
|
|||
{ "getUserData", l_lovrBodyGetUserData },
|
||||
{ "setUserData", l_lovrBodySetUserData },
|
||||
{ "getWorld", l_lovrBodyGetWorld },
|
||||
{ "getMass", l_lovrBodyGetMass },
|
||||
{ "setMass", l_lovrBodySetMass },
|
||||
{ NULL, NULL }
|
||||
};
|
||||
|
|
|
@ -264,6 +264,19 @@ World* lovrBodyGetWorld(Body* body) {
|
|||
return body->world;
|
||||
}
|
||||
|
||||
float lovrBodyGetMass(Body* body) {
|
||||
dMass m;
|
||||
dBodyGetMass(body->id, &m);
|
||||
return m.mass;
|
||||
}
|
||||
|
||||
void lovrBodySetMass(Body* body, float mass) {
|
||||
dMass m;
|
||||
dBodyGetMass(body->id, &m);
|
||||
dMassAdjust(&m, mass);
|
||||
dBodySetMass(body->id, &m);
|
||||
}
|
||||
|
||||
void lovrShapeDestroy(const Ref* ref) {
|
||||
Shape* shape = containerof(ref, Shape);
|
||||
dGeomDestroy(shape->id);
|
||||
|
|
|
@ -79,6 +79,8 @@ void lovrBodySetAwake(Body* body, int awake);
|
|||
void* lovrBodyGetUserData(Body* body);
|
||||
void lovrBodySetUserData(Body* body, void* data);
|
||||
World* lovrBodyGetWorld(Body* body);
|
||||
float lovrBodyGetMass(Body* body);
|
||||
void lovrBodySetMass(Body* body, float mass);
|
||||
|
||||
void lovrShapeDestroy(const Ref* ref);
|
||||
ShapeType lovrShapeGetType(Shape* shape);
|
||||
|
|
Loading…
Reference in New Issue