UI32 i = 0;
if ( pFunc && PyCallable_Check( pFunc ) ) {  PyObject* p_args = PyTuple_New( 3 ); PyTuple_SetItem( p_args, 0, PyGetCharObject( socket->player() ) ); PyTuple_SetItem( p_args, 1, args ); PyTuple_SetItem( p_args, 2, PyGetTarget( target, socket->player()->pos().map ) );
void cPythonTarget::responsed( UOXSOCKET socket, PKGx6C targetInfo ){	if( !PyCallable_Check( callback_ ) )		return;	// Set the target-information	PyObject *arguments = PyTuple_New( PyTuple_Size( arguments_ ) + 1 );	PyObject *target = PyGetTargetObject( targetInfo );	Py_INCREF( target );	PyTuple_SetItem( arguments, 0, target );	UI32 i = 0;	for( i = 1; i <= PyTuple_Size( arguments_ ); i++ )	{		PyTuple_SetItem( arguments, i, PyTuple_GetItem( arguments_, i-1 ) );	}	PyObject_CallObject( callback_, arguments );	// DECREF as the arguments are no longer needed	for( i = 0; i < PyTuple_Size( arguments ); i++ )		Py_DECREF( PyTuple_GetItem( arguments, i ) );	if( PyErr_Occurred() )		PyErr_Print();}