Revision: 23544
          
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=23544
Author:   campbellbarton
Date:     2009-09-28 20:05:44 +0200 (Mon, 28 Sep 2009)

Log Message:
-----------
- remove unused functions
- loading scenes from other files was broken.
- Made Replace event manager funcs one generic funcs all sensors share.

Modified Paths:
--------------
    branches/ge_dyn_load/source/blender/blenloader/BLO_readfile.h
    
branches/ge_dyn_load/source/gameengine/Converter/BL_BlenderDataConversion.cpp
    
branches/ge_dyn_load/source/gameengine/Converter/KX_BlenderSceneConverter.cpp
    branches/ge_dyn_load/source/gameengine/GameLogic/SCA_ActuatorSensor.h
    branches/ge_dyn_load/source/gameengine/GameLogic/SCA_AlwaysSensor.h
    branches/ge_dyn_load/source/gameengine/GameLogic/SCA_DelaySensor.h
    branches/ge_dyn_load/source/gameengine/GameLogic/SCA_EventManager.h
    branches/ge_dyn_load/source/gameengine/GameLogic/SCA_ILogicBrick.h
    branches/ge_dyn_load/source/gameengine/GameLogic/SCA_ISensor.cpp
    branches/ge_dyn_load/source/gameengine/GameLogic/SCA_ISensor.h
    branches/ge_dyn_load/source/gameengine/GameLogic/SCA_JoystickSensor.h
    branches/ge_dyn_load/source/gameengine/GameLogic/SCA_KeyboardSensor.h
    branches/ge_dyn_load/source/gameengine/GameLogic/SCA_LogicManager.cpp
    branches/ge_dyn_load/source/gameengine/GameLogic/SCA_LogicManager.h
    branches/ge_dyn_load/source/gameengine/GameLogic/SCA_PropertySensor.h
    branches/ge_dyn_load/source/gameengine/GameLogic/SCA_RandomSensor.h
    
branches/ge_dyn_load/source/gameengine/Ketsji/KXNetwork/KX_NetworkMessageSensor.h
    branches/ge_dyn_load/source/gameengine/Ketsji/KX_BlenderMaterial.h
    branches/ge_dyn_load/source/gameengine/Ketsji/KX_GameObject.cpp
    branches/ge_dyn_load/source/gameengine/Ketsji/KX_KetsjiEngine.cpp
    branches/ge_dyn_load/source/gameengine/Ketsji/KX_PolygonMaterial.h
    branches/ge_dyn_load/source/gameengine/Ketsji/KX_PythonInit.cpp
    branches/ge_dyn_load/source/gameengine/Ketsji/KX_RaySensor.h
    branches/ge_dyn_load/source/gameengine/Ketsji/KX_Scene.cpp
    branches/ge_dyn_load/source/gameengine/Ketsji/KX_SoundActuator.h
    branches/ge_dyn_load/source/gameengine/Ketsji/KX_TouchSensor.h
    branches/ge_dyn_load/source/gameengine/Rasterizer/RAS_BucketManager.cpp

Modified: branches/ge_dyn_load/source/blender/blenloader/BLO_readfile.h
===================================================================
--- branches/ge_dyn_load/source/blender/blenloader/BLO_readfile.h       
2009-09-28 16:13:23 UTC (rev 23543)
+++ branches/ge_dyn_load/source/blender/blenloader/BLO_readfile.h       
2009-09-28 18:05:44 UTC (rev 23544)
@@ -211,7 +211,7 @@
 void BLO_library_append_end(const struct bContext *C, struct Main *mainl, 
BlendHandle** bh, int idcode, short flag);
 
 /* deprecated */
-#if 1
+#if 0
 void BLO_script_library_append(BlendHandle **bh, char *dir, char *name, int 
idcode, short flag, struct Main *mainvar, struct Scene *scene, struct 
ReportList *reports);
 #endif
 

Modified: 
branches/ge_dyn_load/source/gameengine/Converter/BL_BlenderDataConversion.cpp
===================================================================
--- 
branches/ge_dyn_load/source/gameengine/Converter/BL_BlenderDataConversion.cpp   
    2009-09-28 16:13:23 UTC (rev 23543)
+++ 
branches/ge_dyn_load/source/gameengine/Converter/BL_BlenderDataConversion.cpp   
    2009-09-28 18:05:44 UTC (rev 23544)
@@ -1061,8 +1061,8 @@
        return meshobj;
 }
 
-
        
+       
 static PHY_MaterialProps *CreateMaterialFromBlenderObject(struct Object* 
blenderobject)
 {
        PHY_MaterialProps *materialProps = new PHY_MaterialProps;

Modified: 
branches/ge_dyn_load/source/gameengine/Converter/KX_BlenderSceneConverter.cpp
===================================================================
--- 
branches/ge_dyn_load/source/gameengine/Converter/KX_BlenderSceneConverter.cpp   
    2009-09-28 16:13:23 UTC (rev 23543)
+++ 
branches/ge_dyn_load/source/gameengine/Converter/KX_BlenderSceneConverter.cpp   
    2009-09-28 18:05:44 UTC (rev 23544)
@@ -91,7 +91,20 @@
 #include "DNA_space_types.h"
 }
 
+/* Only for dynamic loading and merging */
 #include "RAS_BucketManager.h" // XXX cant stay
+#include "KX_BlenderSceneConverter.h"
+#include "BL_BlenderDataConversion.h"
+#include "KX_MeshProxy.h"
+#include "RAS_MeshObject.h"
+extern "C" {
+       #include "BKE_context.h"
+       #include "BLO_readfile.h"
+       #include "BKE_report.h"
+       #include "DNA_space_types.h"
+       #include "DNA_windowmanager_types.h" /* report api */
+       #include "../../blender/blenlib/BLI_linklist.h"
+}
 
 KX_BlenderSceneConverter::KX_BlenderSceneConverter(
                                                        struct Main* maggie,
@@ -108,9 +121,6 @@
        m_newfilename = "";
 }
 
-extern "C" { /* free_main */
-       #include "BKE_library.h"
-}
 
 KX_BlenderSceneConverter::~KX_BlenderSceneConverter()
 {
@@ -324,9 +334,6 @@
 #ifdef USE_BULLET
                case UseBullet:
                        {
-                               if (destinationscene->GetPhysicsEnvironment())
-                                       break;
-
                                CcdPhysicsEnvironment* ccdPhysEnv = new 
CcdPhysicsEnvironment(useDbvtCulling);
                                ccdPhysEnv->setDebugDrawer(new 
BlenderDebugDraw());
                                
ccdPhysEnv->setDeactivationLinearTreshold(0.8f); // default, can be overridden 
by Python
@@ -954,21 +961,6 @@
 
 }
 
-
-#include "KX_BlenderSceneConverter.h"
-#include "BL_BlenderDataConversion.h"
-#include "KX_MeshProxy.h"
-#include "RAS_MeshObject.h"
-extern "C" {
-       #include "BKE_context.h"
-       #include "BLO_readfile.h"
-       #include "BKE_report.h"
-       #include "DNA_space_types.h"
-       #include "DNA_windowmanager_types.h" /* report api */
-       #include "../../blender/blenlib/BLI_linklist.h"
-}
-
-
 vector<Main*> &KX_BlenderSceneConverter::GetMainDynamic()
 {
        return m_DynamicMaggie;
@@ -1014,12 +1006,11 @@
                return false;
        }
        
+       main_newlib= (Main *)MEM_callocN( sizeof(Main), "BgeMain");
        C= CTX_create();
-       CTX_data_main_set(C, m_maggie);
+       CTX_data_main_set(C, main_newlib);
        BKE_reports_init(&reports, RPT_STORE);  
 
-       main_newlib= (Main *)MEM_callocN( sizeof(Main), "BgeMain");
-
        /* here appending/linking starts */
        main_tmp = BLO_library_append_begin(C, &bpy_openlib, (char *)path);
        
@@ -1060,7 +1051,7 @@
                /* Merge all new linked in scene into the existing one */
                ID *scene;
                for(scene= (ID *)main_newlib->scene.first; scene; scene= (ID 
*)scene->next ) {
-                       // printf("SceneName: %s\n", scene->name);
+                       printf("SceneName: %s\n", scene->name);
                        
                        /* merge into the base  scene */
                        KX_Scene* other= m_ketsjiEngine->CreateScene((Scene 
*)scene);
@@ -1071,7 +1062,6 @@
                }
        }
        
-       BLO_blendhandle_close( bpy_openlib );
        return true;
 }
 
@@ -1238,7 +1228,7 @@
 
                } else {
                        KX_PolygonMaterial *kx_mat = 
static_cast<KX_PolygonMaterial*>(mat);
-                       bmat= kx_mat->m_material;
+                       bmat= kx_mat->GetBlenderMaterial();
                }
 
                if (IS_TAGGED(bmat)) {
@@ -1263,7 +1253,7 @@
 
                } else {
                        KX_PolygonMaterial *kx_mat = 
static_cast<KX_PolygonMaterial*>(mat);
-                       bmat= kx_mat->m_material;
+                       bmat= kx_mat->GetBlenderMaterial();
                }
 
                if(bmat) {
@@ -1319,23 +1309,6 @@
 
        free_main(maggie);
 
-
-
-       /* TODO - remove data from these too! */
-#if 0
-       GEN_Map<CHashedPtr,struct Object*> m_map_gameobject_to_blender;
-       GEN_Map<CHashedPtr,KX_GameObject*> m_map_blender_to_gameobject;
-
-       GEN_Map<CHashedPtr,RAS_MeshObject*> m_map_mesh_to_gamemesh;
-//     GEN_Map<CHashedPtr,DT_ShapeHandle> m_map_gamemesh_to_sumoshape;
-
-       GEN_Map<CHashedPtr,SCA_IActuator*> m_map_blender_to_gameactuator;
-       GEN_Map<CHashedPtr,SCA_IController*> m_map_blender_to_gamecontroller;
-
-       GEN_Map<CHashedPtr,BL_InterpolatorList*> m_map_blender_to_gameAdtList;
-#endif
-
-
        return true;
 }
 

Modified: branches/ge_dyn_load/source/gameengine/GameLogic/SCA_ActuatorSensor.h
===================================================================
--- branches/ge_dyn_load/source/gameengine/GameLogic/SCA_ActuatorSensor.h       
2009-09-28 16:13:23 UTC (rev 23543)
+++ branches/ge_dyn_load/source/gameengine/GameLogic/SCA_ActuatorSensor.h       
2009-09-28 18:05:44 UTC (rev 23544)
@@ -56,8 +56,6 @@
        virtual void    ReParent(SCA_IObject* parent);
        void Update();
 
-       void                    Replace_ActuatorEventManager(SCA_EventManager* 
eventmgr) { m_eventmgr= eventmgr; }
-
        /* 
--------------------------------------------------------------------- */
        /* Python interface 
---------------------------------------------------- */
        /* 
--------------------------------------------------------------------- */

Modified: branches/ge_dyn_load/source/gameengine/GameLogic/SCA_AlwaysSensor.h
===================================================================
--- branches/ge_dyn_load/source/gameengine/GameLogic/SCA_AlwaysSensor.h 
2009-09-28 16:13:23 UTC (rev 23543)
+++ branches/ge_dyn_load/source/gameengine/GameLogic/SCA_AlwaysSensor.h 
2009-09-28 18:05:44 UTC (rev 23544)
@@ -45,9 +45,6 @@
        virtual bool Evaluate();
        virtual bool IsPositiveTrigger();
        virtual void Init();
-
-       void                    Replace_AlwaysEventManager(SCA_EventManager* 
eventmgr) { m_eventmgr= eventmgr; }
-
 };
 
 #endif //__KX_ALWAYSSENSOR

Modified: branches/ge_dyn_load/source/gameengine/GameLogic/SCA_DelaySensor.h
===================================================================
--- branches/ge_dyn_load/source/gameengine/GameLogic/SCA_DelaySensor.h  
2009-09-28 16:13:23 UTC (rev 23543)
+++ branches/ge_dyn_load/source/gameengine/GameLogic/SCA_DelaySensor.h  
2009-09-28 18:05:44 UTC (rev 23544)
@@ -54,9 +54,7 @@
        virtual bool IsPositiveTrigger();
        virtual void Init();
 
-       void                    Replace_AlwaysEventManager(SCA_EventManager* 
eventmgr) { m_eventmgr= eventmgr; }
 
-
        /* 
--------------------------------------------------------------------- */
        /* Python interface 
---------------------------------------------------- */
        /* 
--------------------------------------------------------------------- */

Modified: branches/ge_dyn_load/source/gameengine/GameLogic/SCA_EventManager.h
===================================================================
--- branches/ge_dyn_load/source/gameengine/GameLogic/SCA_EventManager.h 
2009-09-28 16:13:23 UTC (rev 23543)
+++ branches/ge_dyn_load/source/gameengine/GameLogic/SCA_EventManager.h 
2009-09-28 18:05:44 UTC (rev 23544)
@@ -70,7 +70,7 @@
        virtual void    EndFrame();
        virtual void    RegisterSensor(class SCA_ISensor* sensor);
        int             GetType();
-       SG_DList &GetSensors() { return m_sensors; }
+       //SG_DList &GetSensors() { return m_sensors; }
 
 
        void                    Replace_LogicManager(SCA_LogicManager* 
logicmgr) { m_logicmgr= logicmgr; }

Modified: branches/ge_dyn_load/source/gameengine/GameLogic/SCA_ILogicBrick.h
===================================================================
--- branches/ge_dyn_load/source/gameengine/GameLogic/SCA_ILogicBrick.h  
2009-09-28 16:13:23 UTC (rev 23543)
+++ branches/ge_dyn_load/source/gameengine/GameLogic/SCA_ILogicBrick.h  
2009-09-28 18:05:44 UTC (rev 23544)
@@ -128,22 +128,8 @@
 
        /* for moving logic bricks between scenes */
        virtual void            Replace_IScene(void *val) {};
-       virtual void            Replace_SoundScene(void *val) {};
        virtual void            Replace_NetworkScene(void *val) {};
 
-       virtual void            Replace_NetworkEventManager(void *val) {};
-       virtual void            Replace_KeyboardManager(void *val) {};
-       virtual void            Replace_JoystickEventManager(void *val) {};
-       virtual void            Replace_PropertyEventManager(void *val) {};
-       virtual void            Replace_AlwaysEventManager(void *val) {};
-       virtual void            Replace_TouchEventManager(void *val) {};
-       virtual void            Replace_RandomEventManager(void *val) {};
-       virtual void            Replace_RayEventManager(void *val) {};
-       virtual void            Replace_RaydarEventManager(void *val) {};
-       virtual void            Replace_ActuatorEventManager(void *val) {};
-
-
-
        // python methods
        
        static PyObject*        pyattr_get_owner(void *self_v, const 
KX_PYATTRIBUTE_DEF *attrdef);

Modified: branches/ge_dyn_load/source/gameengine/GameLogic/SCA_ISensor.cpp
===================================================================
--- branches/ge_dyn_load/source/gameengine/GameLogic/SCA_ISensor.cpp    
2009-09-28 16:13:23 UTC (rev 23543)
+++ branches/ge_dyn_load/source/gameengine/GameLogic/SCA_ISensor.cpp    
2009-09-28 18:05:44 UTC (rev 23544)
@@ -158,6 +158,21 @@
        m_eventmgr->RegisterSensor(this);
 }
 
+void SCA_ISensor::Replace_EventManager(class SCA_LogicManager* logicmgr)
+{
+       if(m_links) { /* true if we're used currently */
+
+               if(m_eventmgr) /* unlikely to be false */
+                       m_eventmgr->RemoveSensor(this);
+
+               m_eventmgr= logicmgr->FindEventManager(m_eventmgr->GetType());
+               m_eventmgr->RegisterSensor(this);
+       }
+       else {
+               m_eventmgr= logicmgr->FindEventManager(m_eventmgr->GetType());
+       }
+}
+
 void SCA_ISensor::LinkToController(SCA_IController* controller)
 {
        m_linkedcontrollers.push_back(controller);

Modified: branches/ge_dyn_load/source/gameengine/GameLogic/SCA_ISensor.h
===================================================================
--- branches/ge_dyn_load/source/gameengine/GameLogic/SCA_ISensor.h      
2009-09-28 16:13:23 UTC (rev 23543)

@@ Diff output truncated at 10240 characters. @@

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to