From 355589a9100c7d08fdc4094ad32eb9852c88fcc4 Mon Sep 17 00:00:00 2001 From: Alexander Date: Mon, 18 May 2020 13:41:40 -0400 Subject: various updates --- src/shared/lua_api/phys/bphysgeneric.cpp | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'src/shared/lua_api/phys/bphysgeneric.cpp') diff --git a/src/shared/lua_api/phys/bphysgeneric.cpp b/src/shared/lua_api/phys/bphysgeneric.cpp index 718ffed..4500ce0 100644 --- a/src/shared/lua_api/phys/bphysgeneric.cpp +++ b/src/shared/lua_api/phys/bphysgeneric.cpp @@ -246,6 +246,25 @@ int applyimpulse(lua_State *L){ return 0; } +//rigidbody:setrotation({pitch,yaw,roll}) +int setrotation(lua_State *L){ + int nargs = lua_gettop(L); + double pitch,yaw,roll; + if(nargs != 2){ + lua_pushstring(L,"setrotation() expected 2 arguments (r :: rigidbody, eulerangle :: vector3)"); + lua_error(L); + } + popvector3d(L,&pitch,&yaw,&roll); + btRigidBody *r = popRigidBody(L); + btTransform tr; + btQuaternion quat; + quat.setEuler(yaw,pitch,roll); + tr.setRotation(quat); + r->setCenterOfMassTransform(tr); + + return 0; +} + /* @@ -290,6 +309,7 @@ extern const luaL_reg brigidbody_m[] = { {"setvelocity", setvelocity}, {"setangfactor", setangfactor}, {"setflags", setflags}, + {"setrotation", setrotation}, //{"testcontact", testcontact}, {NULL, NULL} }; -- cgit v1.2.3-70-g09d2