[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [20025] trunk/blender/source/gameengine: BGE Py API patch from Mitchell Stokes, adds extra attributes and docs

Campbell Barton ideasman42 at gmail.com
Sat May 2 04:40:14 CEST 2009


Revision: 20025
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=20025
Author:   campbellbarton
Date:     2009-05-02 04:40:11 +0200 (Sat, 02 May 2009)

Log Message:
-----------
BGE Py API patch from Mitchell Stokes, adds extra attributes and docs

Modified Paths:
--------------
    trunk/blender/source/gameengine/Converter/BL_ActionActuator.cpp
    trunk/blender/source/gameengine/GameLogic/SCA_ILogicBrick.cpp
    trunk/blender/source/gameengine/Ketsji/KX_GameActuator.cpp
    trunk/blender/source/gameengine/Ketsji/KX_ParentActuator.cpp
    trunk/blender/source/gameengine/Ketsji/KX_ParentActuator.h
    trunk/blender/source/gameengine/Ketsji/KX_PythonInit.cpp
    trunk/blender/source/gameengine/Ketsji/KX_SceneActuator.cpp
    trunk/blender/source/gameengine/PyDoc/GameLogic.py
    trunk/blender/source/gameengine/PyDoc/KX_GameActuator.py
    trunk/blender/source/gameengine/PyDoc/KX_ParentActuator.py
    trunk/blender/source/gameengine/PyDoc/KX_SceneActuator.py
    trunk/blender/source/gameengine/PyDoc/SCA_ILogicBrick.py

Modified: trunk/blender/source/gameengine/Converter/BL_ActionActuator.cpp
===================================================================
--- trunk/blender/source/gameengine/Converter/BL_ActionActuator.cpp	2009-05-01 21:50:18 UTC (rev 20024)
+++ trunk/blender/source/gameengine/Converter/BL_ActionActuator.cpp	2009-05-02 02:40:11 UTC (rev 20025)
@@ -1015,7 +1015,6 @@
 	KX_PYATTRIBUTE_BOOL_RW("continue", BL_ActionActuator, m_end_reset),
 	KX_PYATTRIBUTE_FLOAT_RW_CHECK("blendTime", 0, MAXFRAMEF, BL_ActionActuator, m_blendframe, CheckBlendTime),
 	KX_PYATTRIBUTE_SHORT_RW_CHECK("type",0,100,false,BL_ActionActuator,m_playtype,CheckType),
-	//KX_PYATTRIBUTE_TODO("channel"),
 	{ NULL }	//Sentinel
 };
 

Modified: trunk/blender/source/gameengine/GameLogic/SCA_ILogicBrick.cpp
===================================================================
--- trunk/blender/source/gameengine/GameLogic/SCA_ILogicBrick.cpp	2009-05-01 21:50:18 UTC (rev 20024)
+++ trunk/blender/source/gameengine/GameLogic/SCA_ILogicBrick.cpp	2009-05-02 02:40:11 UTC (rev 20025)
@@ -254,7 +254,7 @@
 PyAttributeDef SCA_ILogicBrick::Attributes[] = {
 	KX_PYATTRIBUTE_RO_FUNCTION("owner",	SCA_ILogicBrick, pyattr_get_owner),
 	KX_PYATTRIBUTE_INT_RW("executePriority",0,100000,false,SCA_ILogicBrick,m_Execute_Ueber_Priority),
-	//KX_PYATTRIBUTE_TODO("name"),
+	KX_PYATTRIBUTE_STRING_RO("name", SCA_ILogicBrick, m_name),
 	{NULL} //Sentinel
 };
 

Modified: trunk/blender/source/gameengine/Ketsji/KX_GameActuator.cpp
===================================================================
--- trunk/blender/source/gameengine/Ketsji/KX_GameActuator.cpp	2009-05-01 21:50:18 UTC (rev 20024)
+++ trunk/blender/source/gameengine/Ketsji/KX_GameActuator.cpp	2009-05-02 02:40:11 UTC (rev 20025)
@@ -253,7 +253,7 @@
 
 PyAttributeDef KX_GameActuator::Attributes[] = {
 	KX_PYATTRIBUTE_STRING_RW("file",0,100,false,KX_GameActuator,m_filename),
-	//KX_PYATTRIBUTE_TODO("mode"),
+	KX_PYATTRIBUTE_INT_RW("mode", KX_GAME_NODEF+1, KX_GAME_MAX-1, true, KX_GameActuator, m_mode),
 	{ NULL }	//Sentinel
 };
 

Modified: trunk/blender/source/gameengine/Ketsji/KX_ParentActuator.cpp
===================================================================
--- trunk/blender/source/gameengine/Ketsji/KX_ParentActuator.cpp	2009-05-01 21:50:18 UTC (rev 20024)
+++ trunk/blender/source/gameengine/Ketsji/KX_ParentActuator.cpp	2009-05-02 02:40:11 UTC (rev 20025)
@@ -178,7 +178,7 @@
 
 PyAttributeDef KX_ParentActuator::Attributes[] = {
 	KX_PYATTRIBUTE_RW_FUNCTION("object", KX_ParentActuator, pyattr_get_object, pyattr_set_object),
-	//KX_PYATTRIBUTE_TODO("mode"),
+	KX_PYATTRIBUTE_INT_RW("mode", KX_PARENT_NODEF+1, KX_PARENT_MAX-1, true, KX_ParentActuator, m_mode),
 	{ NULL }	//Sentinel
 };
 

Modified: trunk/blender/source/gameengine/Ketsji/KX_ParentActuator.h
===================================================================
--- trunk/blender/source/gameengine/Ketsji/KX_ParentActuator.h	2009-05-01 21:50:18 UTC (rev 20024)
+++ trunk/blender/source/gameengine/Ketsji/KX_ParentActuator.h	2009-05-02 02:40:11 UTC (rev 20025)
@@ -57,6 +57,7 @@
 		KX_PARENT_NODEF = 0,
 		KX_PARENT_SET,
 		KX_PARENT_REMOVE,
+		KX_PARENT_MAX
 
 	};
  

Modified: trunk/blender/source/gameengine/Ketsji/KX_PythonInit.cpp
===================================================================
--- trunk/blender/source/gameengine/Ketsji/KX_PythonInit.cpp	2009-05-01 21:50:18 UTC (rev 20024)
+++ trunk/blender/source/gameengine/Ketsji/KX_PythonInit.cpp	2009-05-02 02:40:11 UTC (rev 20025)
@@ -49,6 +49,9 @@
 #include "KX_KetsjiEngine.h"
 #include "KX_RadarSensor.h"
 #include "KX_RaySensor.h"
+#include "KX_SceneActuator.h"
+#include "KX_GameActuator.h"
+#include "KX_ParentActuator.h"
 #include "KX_SCA_DynamicActuator.h"
 
 #include "SCA_IInputDevice.h"
@@ -1359,6 +1362,28 @@
 	KX_MACRO_addTypesToDict(d, KX_ACT_CONSTRAINT_LOCAL, KX_ConstraintActuator::KX_ACT_CONSTRAINT_LOCAL);
 	KX_MACRO_addTypesToDict(d, KX_ACT_CONSTRAINT_DOROTFH, KX_ConstraintActuator::KX_ACT_CONSTRAINT_DOROTFH);
 
+	/* Game Actuator Modes */
+	KX_MACRO_addTypesToDict(d, KX_GAME_LOAD, KX_GameActuator::KX_GAME_LOAD);
+	KX_MACRO_addTypesToDict(d, KX_GAME_START, KX_GameActuator::KX_GAME_START);
+	KX_MACRO_addTypesToDict(d, KX_GAME_RESTART, KX_GameActuator::KX_GAME_RESTART);
+	KX_MACRO_addTypesToDict(d, KX_GAME_QUIT, KX_GameActuator::KX_GAME_QUIT);
+	KX_MACRO_addTypesToDict(d, KX_GAME_SAVECFG, KX_GameActuator::KX_GAME_SAVECFG);
+	KX_MACRO_addTypesToDict(d, KX_GAME_LOADCFG, KX_GameActuator::KX_GAME_LOADCFG);
+
+	/* Scene Actuator Modes */
+	KX_MACRO_addTypesToDict(d, KX_SCENE_RESTART, KX_SceneActuator::KX_SCENE_RESTART);
+	KX_MACRO_addTypesToDict(d, KX_SCENE_SET_SCENE, KX_SceneActuator::KX_SCENE_SET_SCENE);
+	KX_MACRO_addTypesToDict(d, KX_SCENE_SET_CAMERA, KX_SceneActuator::KX_SCENE_SET_CAMERA);
+	KX_MACRO_addTypesToDict(d, KX_SCENE_ADD_FRONT_SCENE, KX_SceneActuator::KX_SCENE_ADD_FRONT_SCENE);
+	KX_MACRO_addTypesToDict(d, KX_SCENE_ADD_BACK_SCENE, KX_SceneActuator::KX_SCENE_ADD_BACK_SCENE);
+	KX_MACRO_addTypesToDict(d, KX_SCENE_REMOVE_SCENE, KX_SceneActuator::KX_SCENE_REMOVE_SCENE);
+	KX_MACRO_addTypesToDict(d, KX_SCENE_SUSPEND, KX_SceneActuator::KX_SCENE_SUSPEND);
+	KX_MACRO_addTypesToDict(d, KX_SCENE_RESUME, KX_SceneActuator::KX_SCENE_RESUME);
+
+	/* Parent Actuator Modes */
+	KX_MACRO_addTypesToDict(d, KX_PARENT_SET, KX_ParentActuator::KX_PARENT_SET);
+	KX_MACRO_addTypesToDict(d, KX_PARENT_REMOVE, KX_ParentActuator::KX_PARENT_REMOVE);
+
 	// Check for errors
 	if (PyErr_Occurred())
     {

Modified: trunk/blender/source/gameengine/Ketsji/KX_SceneActuator.cpp
===================================================================
--- trunk/blender/source/gameengine/Ketsji/KX_SceneActuator.cpp	2009-05-01 21:50:18 UTC (rev 20024)
+++ trunk/blender/source/gameengine/Ketsji/KX_SceneActuator.cpp	2009-05-02 02:40:11 UTC (rev 20025)
@@ -275,8 +275,8 @@
 PyAttributeDef KX_SceneActuator::Attributes[] = {
 	KX_PYATTRIBUTE_STRING_RW("scene",0,32,true,KX_SceneActuator,m_nextSceneName),
 	KX_PYATTRIBUTE_RW_FUNCTION("camera",KX_SceneActuator,pyattr_get_camera,pyattr_set_camera),
-	//KX_PYATTRIBUTE_TODO("useRestart"),
-	//KX_PYATTRIBUTE_TODO("mode"),
+	KX_PYATTRIBUTE_BOOL_RW("useRestart", KX_SceneActuator, m_restart),
+	KX_PYATTRIBUTE_INT_RW("mode", KX_SCENE_NODEF+1, KX_SCENE_MAX-1, true, KX_SceneActuator, m_mode),
 	{ NULL }	//Sentinel
 };
 

Modified: trunk/blender/source/gameengine/PyDoc/GameLogic.py
===================================================================
--- trunk/blender/source/gameengine/PyDoc/GameLogic.py	2009-05-01 21:50:18 UTC (rev 20024)
+++ trunk/blender/source/gameengine/PyDoc/GameLogic.py	2009-05-02 02:40:11 UTC (rev 20025)
@@ -187,6 +187,24 @@
 @var KX_DYN_DISABLE_RIGID_BODY:	See L{KX_SCA_DynamicActuator}
 @var KX_DYN_SET_MASS:			See L{KX_SCA_DynamicActuator}
 
+ at group Game Actuator: KX_GAME_LOAD, KX_GAME_START, KX_GAME_RESTART, KX_GAME_QUIT, KX_GAME_SAVECFG, KX_GAME_LOADCFG
+ at var KX_Game_LOAD:		See L{KX_GameActuator}
+ at var KX_Game_START:		See L{KX_GameActuator}
+ at var KX_Game_RESTART:	See L{KX_GameActuator}
+ at var KX_Game_QUIT:		See L{KX_GameActuator}
+ at var KX_Game_SAVECFG:	See L{KX_GameActuator}
+ at var KX_Game_LOADCFG:	See L{KX_GameActuator}
+
+ at group Scene Actuator: KX_SCENE_RESTART, KX_SCENE_SET_SCENE, KX_SCENE_SET_CAMERA, KX_SCENE_ADD_FRONT_SCENE, KX_SCENE_ADD_BACK_SCENE, KX_SCENE_REMOVE_SCENE, KX_SCENE_SUSPEND, KX_SCENE_RESUME
+KX_SCENE_RESTART:			See L{KX_SceneActuator}
+KX_SCENE_SET_SCENE:			See L{KX_SceneActuator}
+KX_SCENE_SET_CAMERA:		See L{KX_SceneActuator}
+KX_SCENE_ADD_FRONT_SCENE:	See L{KX_SceneActuator}
+KX_SCENE_ADD_BACK_SCENE:	See L{KX_SceneActuator}
+KX_SCENE_REMOVE_SCENE:		See L{KX_SceneActuator}
+KX_SCENE_SUSPEND:			See L{KX_SceneActuator}
+KX_SCENE_RESUME:			See L{KX_SceneActuator}
+
 @group Input Status: KX_INPUT_NONE, KX_INPUT_JUST_ACTIVATED, KX_INPUT_ACTIVE, KX_INPUT_JUST_RELEASED
 @var KX_INPUT_NONE:				See L{SCA_MouseSensor}
 @var KX_INPUT_JUST_ACTIVATED:	See L{SCA_MouseSensor}

Modified: trunk/blender/source/gameengine/PyDoc/KX_GameActuator.py
===================================================================
--- trunk/blender/source/gameengine/PyDoc/KX_GameActuator.py	2009-05-01 21:50:18 UTC (rev 20024)
+++ trunk/blender/source/gameengine/PyDoc/KX_GameActuator.py	2009-05-02 02:40:11 UTC (rev 20025)
@@ -10,6 +10,8 @@
 	
 	@ivar file: the new .blend file to load
 	@type file: string.
+	@ivar mode: The mode of this actuator
+	@type mode: int from 0 to 5 L{GameLogic.Game Actuator}
 	"""
 	def getFile():
 		"""

Modified: trunk/blender/source/gameengine/PyDoc/KX_ParentActuator.py
===================================================================
--- trunk/blender/source/gameengine/PyDoc/KX_ParentActuator.py	2009-05-01 21:50:18 UTC (rev 20024)
+++ trunk/blender/source/gameengine/PyDoc/KX_ParentActuator.py	2009-05-02 02:40:11 UTC (rev 20025)
@@ -7,6 +7,8 @@
 	The parent actuator can set or remove an objects parent object.	
 	@ivar object: the object this actuator sets the parent too.
 	@type object: KX_GameObject or None
+	@ivar mode: The mode of this actuator
+	@type mode: int from 0 to 1 L{GameLogic.Parent Actuator}
 	"""
 	def setObject(object):
 		"""

Modified: trunk/blender/source/gameengine/PyDoc/KX_SceneActuator.py
===================================================================
--- trunk/blender/source/gameengine/PyDoc/KX_SceneActuator.py	2009-05-01 21:50:18 UTC (rev 20024)
+++ trunk/blender/source/gameengine/PyDoc/KX_SceneActuator.py	2009-05-02 02:40:11 UTC (rev 20025)
@@ -18,6 +18,8 @@
 	@ivar camera: the camera to change to.
 	              When setting the attribute, you can use either a L{KX_Camera} or the name of the camera.
 	@type camera: L{KX_Camera} on read, string or L{KX_Camera} on write
+	@type mode: The mode of the actuator
+	@type mode: int from 0 to 5 L{GameLogic.Scene Actuator}
 	"""
 	def setUseRestart(flag):
 		"""

Modified: trunk/blender/source/gameengine/PyDoc/SCA_ILogicBrick.py
===================================================================
--- trunk/blender/source/gameengine/PyDoc/SCA_ILogicBrick.py	2009-05-01 21:50:18 UTC (rev 20024)
+++ trunk/blender/source/gameengine/PyDoc/SCA_ILogicBrick.py	2009-05-02 02:40:11 UTC (rev 20025)
@@ -11,6 +11,8 @@
 	@type executePriority: int
 	@ivar owner: The game object this logic brick is attached to (read only).
 	@type owner: L{KX_GameObject<KX_GameObject.KX_GameObject>} or None in exceptional cases.

@@ Diff output truncated at 10240 characters. @@




More information about the Bf-blender-cvs mailing list