Пример #1
0
static cpBody *push_cpBody (lua_State *L) {
  cpBody *b = cpBodyAlloc();
  cpBody **pb = (cpBody **)lua_newuserdata(L, sizeof(cpBody*));
  *pb = b;

  luaL_getmetatable(L, "cpBody");
  lua_setmetatable(L, -2);

  lua_pushliteral(L, "cpBody_ptrs");
  lua_rawget(L, LUA_REGISTRYINDEX);
  /* cpBody_ptrs.body_ptr = userdata */
  lua_pushlightuserdata(L, b);
  lua_pushvalue(L, -3);
  lua_rawset(L, -3);
  lua_pop(L, 1);

  return b;
}
Пример #2
0
cpBody*
cpBodyNew(cpFloat m, cpFloat i)
{
	return cpBodyInit(cpBodyAlloc(), m, i);
}
Пример #3
0
cpBody *
cpBodyNewStatic()
{
	return cpBodyInitStatic(cpBodyAlloc());
}