BGE: Added 'ghost' arg to KX_GameObject.suspendDynamics() method

The implementation of this 'ghost' argument already existed in the C++
source, but wasn't exposed to Python yet.
This commit is contained in:
Sybren A. Stüvel
2015-05-04 12:04:09 +08:00
parent 62b13c6d07
commit 4e7ef3f5cd
3 changed files with 20 additions and 6 deletions

View File

@@ -1907,7 +1907,7 @@ PyMethodDef KX_GameObject::Methods[] = {
{"getReactionForce", (PyCFunction) KX_GameObject::sPyGetReactionForce, METH_NOARGS},
{"alignAxisToVect",(PyCFunction) KX_GameObject::sPyAlignAxisToVect, METH_VARARGS},
{"getAxisVect",(PyCFunction) KX_GameObject::sPyGetAxisVect, METH_O},
{"suspendDynamics", (PyCFunction)KX_GameObject::sPySuspendDynamics,METH_NOARGS},
{"suspendDynamics", (PyCFunction)KX_GameObject::sPySuspendDynamics, METH_VARARGS},
{"restoreDynamics", (PyCFunction)KX_GameObject::sPyRestoreDynamics,METH_NOARGS},
{"enableRigidBody", (PyCFunction)KX_GameObject::sPyEnableRigidBody,METH_NOARGS},
{"disableRigidBody", (PyCFunction)KX_GameObject::sPyDisableRigidBody,METH_NOARGS},
@@ -3318,10 +3318,16 @@ PyObject *KX_GameObject::PyApplyImpulse(PyObject *args)
PyObject *KX_GameObject::PySuspendDynamics()
PyObject *KX_GameObject::PySuspendDynamics(PyObject *args)
{
bool ghost = false;
if (!PyArg_ParseTuple(args, "|b", &ghost))
return NULL;
if (GetPhysicsController())
GetPhysicsController()->SuspendDynamics();
GetPhysicsController()->SuspendDynamics(ghost);
Py_RETURN_NONE;
}

View File

@@ -1005,7 +1005,7 @@ public:
KX_PYMETHOD_O(KX_GameObject,SetState);
KX_PYMETHOD_VARARGS(KX_GameObject,AlignAxisToVect);
KX_PYMETHOD_O(KX_GameObject,GetAxisVect);
KX_PYMETHOD_NOARGS(KX_GameObject,SuspendDynamics);
KX_PYMETHOD_VARARGS(KX_GameObject,SuspendDynamics);
KX_PYMETHOD_NOARGS(KX_GameObject,RestoreDynamics);
KX_PYMETHOD_NOARGS(KX_GameObject,EnableRigidBody);
KX_PYMETHOD_NOARGS(KX_GameObject,DisableRigidBody);