BGE Python API

Use each types dictionary to store attributes PyAttributeDef's so it uses pythons hash lookup (which it was already doing for methods) rather then doing a string lookup on the array each time.

This also means attributes can be found in the type without having to do a dir() on the instance.
This commit is contained in:
2009-04-07 11:06:35 +00:00
parent c054ea0203
commit 5d64dd019e
39 changed files with 699 additions and 872 deletions

View File

@@ -376,20 +376,12 @@ void SCA_PythonController::Trigger(SCA_LogicManager* logicmgr)
PyObject* SCA_PythonController::py_getattro(PyObject *attr)
{
PyObject* object = py_getattro_self(Attributes, this, attr);
if (object != NULL)
return object;
py_getattro_up(SCA_IController);
}
int SCA_PythonController::py_setattro(PyObject *attr, PyObject *value)
{
int ret = py_setattro_self(Attributes, this, attr, value);
if (ret >= 0)
return ret;
return SCA_IController::py_setattro(attr, value);
py_setattro_up(SCA_IController);
}
PyObject* SCA_PythonController::PyActivate(PyObject* self, PyObject *value)