[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [22819] branches/blender2.5/blender/source : - assigning vectors in the BGE wasn' t updating the vector from the callback

Campbell Barton ideasman42 at gmail.com
Thu Aug 27 17:22:41 CEST 2009


Revision: 22819
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=22819
Author:   campbellbarton
Date:     2009-08-27 17:22:41 +0200 (Thu, 27 Aug 2009)

Log Message:
-----------
- assigning vectors in the BGE wasn't updating the vector from the callback
- Pkey only starts in BGE in Object Mode
- warning in readblenentry.c, is silent on 64bit too.

Modified Paths:
--------------
    branches/blender2.5/blender/source/blender/blenloader/intern/readblenentry.c
    branches/blender2.5/blender/source/blender/editors/space_view3d/view3d_view.c
    branches/blender2.5/blender/source/gameengine/Ketsji/KX_PyMath.h

Modified: branches/blender2.5/blender/source/blender/blenloader/intern/readblenentry.c
===================================================================
--- branches/blender2.5/blender/source/blender/blenloader/intern/readblenentry.c	2009-08-27 09:52:41 UTC (rev 22818)
+++ branches/blender2.5/blender/source/blender/blenloader/intern/readblenentry.c	2009-08-27 15:22:41 UTC (rev 22819)
@@ -200,7 +200,7 @@
 			buf[2]= buf[2]?buf[2]:' ';
 			buf[3]= buf[3]?buf[3]:' ';
 			
-			fprintf(fp, "['%.4s', '%s', %d, %ld ], \n", buf, name, bhead->nr, (intptr_t)bhead->len+sizeof(BHead));
+			fprintf(fp, "['%.4s', '%s', %d, %ld ], \n", buf, name, bhead->nr, (long int)bhead->len+sizeof(BHead));
 		}
 	}
 	fprintf(fp, "]\n");

Modified: branches/blender2.5/blender/source/blender/editors/space_view3d/view3d_view.c
===================================================================
--- branches/blender2.5/blender/source/blender/editors/space_view3d/view3d_view.c	2009-08-27 09:52:41 UTC (rev 22818)
+++ branches/blender2.5/blender/source/blender/editors/space_view3d/view3d_view.c	2009-08-27 15:22:41 UTC (rev 22819)
@@ -1444,6 +1444,11 @@
 
 #endif // GAMEBLENDER == 1
 
+int game_engine_poll(bContext *C)
+{
+	return CTX_data_mode_enum(C)==CTX_MODE_OBJECT ? 1:0;
+}
+
 static int game_engine_exec(bContext *C, wmOperator *unused)
 {
 #if GAMEBLENDER == 1
@@ -1503,7 +1508,7 @@
 	/* api callbacks */
 	ot->exec= game_engine_exec;
 	
-	//ot->poll= ED_operator_view3d_active;
+	ot->poll= game_engine_poll;
 }
 
 /* ************************************** */

Modified: branches/blender2.5/blender/source/gameengine/Ketsji/KX_PyMath.h
===================================================================
--- branches/blender2.5/blender/source/gameengine/Ketsji/KX_PyMath.h	2009-08-27 09:52:41 UTC (rev 22818)
+++ branches/blender2.5/blender/source/gameengine/Ketsji/KX_PyMath.h	2009-08-27 15:22:41 UTC (rev 22819)
@@ -109,6 +109,7 @@
 	
 	if(VectorObject_Check(pyval)) {
 		VectorObject *pyvec= (VectorObject *)pyval;
+		BaseMath_ReadCallback(pyvec);
 		if (pyvec->size != Size(vec)) {
 			PyErr_Format(PyExc_AttributeError, "error setting vector, %d args, should be %d", pyvec->size, Size(vec));
 			return false;
@@ -118,6 +119,7 @@
 	}
 	else if(QuaternionObject_Check(pyval)) {
 		QuaternionObject *pyquat= (QuaternionObject *)pyval;
+		BaseMath_ReadCallback(pyquat);
 		if (4 != Size(vec)) {
 			PyErr_Format(PyExc_AttributeError, "error setting vector, %d args, should be %d", 4, Size(vec));
 			return false;
@@ -128,6 +130,7 @@
 	}
 	else if(EulerObject_Check(pyval)) {
 		EulerObject *pyeul= (EulerObject *)pyval;
+		BaseMath_ReadCallback(pyeul);
 		if (3 != Size(vec)) {
 			PyErr_Format(PyExc_AttributeError, "error setting vector, %d args, should be %d", 3, Size(vec));
 			return false;





More information about the Bf-blender-cvs mailing list