diff options
| author | Alexander Pickering <alex@cogarr.net> | 2018-11-01 13:53:16 -0400 |
|---|---|---|
| committer | Alexander Pickering <alex@cogarr.net> | 2018-11-01 13:53:16 -0400 |
| commit | 112517494847f0c86f58544cbf4c35c9b7712ab1 (patch) | |
| tree | 115d9ae3da8028e67e498ed8c587d14972b7699b /src/shared/lua_api/phys/bhingeconstraint.cpp | |
| parent | 77b26fba6e78ac4af2b28b3bbb4646dea5682ed1 (diff) | |
| download | brokengine-112517494847f0c86f58544cbf4c35c9b7712ab1.tar.gz brokengine-112517494847f0c86f58544cbf4c35c9b7712ab1.tar.bz2 brokengine-112517494847f0c86f58544cbf4c35c9b7712ab1.zip | |
Refactored code and added library
Physics code for models now lives in the shared directory.
To get file loading without irrlicht, a single-file header library
(lib/tinyobjloader-c) was added.
Metatables for generics and physics generics have also been
seperated out.
Diffstat (limited to 'src/shared/lua_api/phys/bhingeconstraint.cpp')
| -rw-r--r-- | src/shared/lua_api/phys/bhingeconstraint.cpp | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/src/shared/lua_api/phys/bhingeconstraint.cpp b/src/shared/lua_api/phys/bhingeconstraint.cpp new file mode 100644 index 0000000..168d1b6 --- /dev/null +++ b/src/shared/lua_api/phys/bhingeconstraint.cpp @@ -0,0 +1,50 @@ + +#include <stdio.h> +#include <stdlib.h> +#include <list> +extern "C" { + #include <lua.h> + #include <lauxlib.h> + #include <lualib.h> +} +#include <Irrlicht.h> +#include <btBulletDynamicsCommon.h> +#include <shared/lua_api/phys/bhingeconstraint.hpp> + +using namespace irr; +using namespace scene; +using namespace core; +using namespace video; + +extern btDiscreteDynamicsWorld* World; +extern std::list<btRigidBody*> Objects; + +int newbhingeconstraint(lua_State *L){ + return 0; +} + +static const luaL_reg hingeconstraint_m[] = { +// {"delete", delbphysbox},//client side delete needs to delete the visual representation + {0, 0}, +}; + +void bhingeconstraint_register(lua_State* L){ + lua_getglobal(L,"phys");//{} + lua_pushcfunction(L,newbhingeconstraint);//{},newhingeconstraint() + lua_setfield(L,-2,"newhingeconstraint");//{} + + lua_pop(L,1);// + + luaL_newmetatable(L,"phys.hingeconstraint"); + lua_newtable(L);//phys.hingeconstraint,{} + luaL_register(L,NULL,hingeconstraint_m); + //luaL_register(L,NULL,cbphysbox_m);//phys.hingeconstraint,{} + lua_setfield(L,-2,"__index");//phys.physbox + + lua_pop(L,1); + + //printf("When registering physbox, new() is %p\n",newcbphysbox); + //printf("setpos is %p\n",cbphyssetpos); + + lua_pop(L,1); +} |
