From c7debe1455f4e48e98ccb7af385dc1b1075f83e6 Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Sat, 13 Jun 2009 11:28:29 +0000 Subject: [PATCH 1/2] allow building without SDL --- source/gameengine/GameLogic/Joystick/SCA_Joystick.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/source/gameengine/GameLogic/Joystick/SCA_Joystick.cpp b/source/gameengine/GameLogic/Joystick/SCA_Joystick.cpp index d83179d4f80..6140702534c 100644 --- a/source/gameengine/GameLogic/Joystick/SCA_Joystick.cpp +++ b/source/gameengine/GameLogic/Joystick/SCA_Joystick.cpp @@ -158,12 +158,13 @@ bool SCA_Joystick::aAxisIsPositive(int axis_single) bool SCA_Joystick::aAnyButtonPressIsPositive(void) { +#ifndef DISABLE_SDL /* this is needed for the "all events" option * so we know if there are no buttons pressed */ for (int i=0; im_joystick, i)) return true; - +#endif return false; } From b40eb540d3a49c710bbd10effa9d9db04a915347 Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Sat, 13 Jun 2009 13:02:01 +0000 Subject: [PATCH 2/2] G.sipo was being passed in the BGE when it wasnt needed, just access G.sipo directly. KX_PythonSeq.cpp - disable the cmpfunc with py3, need to have richcmp. --- source/blender/src/space.c | 8 ++++---- .../gameengine/BlenderRoutines/BL_KetsjiEmbedStart.cpp | 6 ++---- .../gameengine/Converter/KX_BlenderSceneConverter.cpp | 10 ++++------ source/gameengine/Converter/KX_BlenderSceneConverter.h | 5 +---- source/gameengine/GamePlayer/ghost/GPG_Application.cpp | 2 +- source/gameengine/Ketsji/KX_PythonSeq.cpp | 4 ++++ 6 files changed, 16 insertions(+), 19 deletions(-) diff --git a/source/blender/src/space.c b/source/blender/src/space.c index 8ff2b526ae8..1e845376952 100644 --- a/source/blender/src/space.c +++ b/source/blender/src/space.c @@ -194,8 +194,8 @@ #include "BLO_sys_types.h" // for intptr_t support /* maybe we need this defined somewhere else */ -extern void StartKetsjiShell(ScrArea *area, char* startscenename, struct Main* maggie, struct SpaceIpo* sipo,int always_use_expand_framing); -extern void StartKetsjiShellSimulation(ScrArea *area, char* startscenename, struct Main* maggie, struct SpaceIpo* sipo,int always_use_expand_framing);/*rcruiz*/ +extern void StartKetsjiShell(ScrArea *area, char* startscenename, struct Main* maggie,int always_use_expand_framing); +extern void StartKetsjiShellSimulation(ScrArea *area, char* startscenename, struct Main* maggie, int always_use_expand_framing);/*rcruiz*/ /** * When the mipmap setting changes, we want to redraw the view right @@ -556,7 +556,7 @@ void start_game(void) space_set_commmandline_options(); SaveState(); - StartKetsjiShell(curarea, startscene->id.name+2, G.main,G.sipo, 1); + StartKetsjiShell(curarea, startscene->id.name+2, G.main, 1); RestoreState(); /* Restart BPY - unload the game engine modules. */ @@ -634,7 +634,7 @@ void start_RBSimulation(void) space_set_commmandline_options(); SaveState(); - StartKetsjiShellSimulation(curarea, startscene->id.name+2, G.main,G.sipo, 1); + StartKetsjiShellSimulation(curarea, startscene->id.name+2, G.main, 1); RestoreState(); /* Restart BPY - unload the game engine modules. */ diff --git a/source/gameengine/BlenderRoutines/BL_KetsjiEmbedStart.cpp b/source/gameengine/BlenderRoutines/BL_KetsjiEmbedStart.cpp index 38a2ccd5d79..ec751376d4a 100644 --- a/source/gameengine/BlenderRoutines/BL_KetsjiEmbedStart.cpp +++ b/source/gameengine/BlenderRoutines/BL_KetsjiEmbedStart.cpp @@ -104,7 +104,6 @@ static BlendFileData *load_game_data(char *filename) { extern "C" void StartKetsjiShell(struct ScrArea *area, char* scenename, struct Main* maggie1, - struct SpaceIpo *sipo, int always_use_expand_framing) { int exitrequested = KX_EXIT_REQUEST_NO_REQUEST; @@ -330,7 +329,7 @@ extern "C" void StartKetsjiShell(struct ScrArea *area, } // create a scene converter, create and convert the startingscene - KX_ISceneConverter* sceneconverter = new KX_BlenderSceneConverter(blenderdata,sipo, ketsjiengine); + KX_ISceneConverter* sceneconverter = new KX_BlenderSceneConverter(blenderdata, ketsjiengine); ketsjiengine->SetSceneConverter(sceneconverter); sceneconverter->addInitFromFrame=false; if (always_use_expand_framing) @@ -549,7 +548,6 @@ extern "C" void StartKetsjiShell(struct ScrArea *area, extern "C" void StartKetsjiShellSimulation(struct ScrArea *area, char* scenename, struct Main* maggie, - struct SpaceIpo *sipo, int always_use_expand_framing) { int exitrequested = KX_EXIT_REQUEST_NO_REQUEST; @@ -648,7 +646,7 @@ extern "C" void StartKetsjiShellSimulation(struct ScrArea *area, if (exitrequested != KX_EXIT_REQUEST_QUIT_GAME) { // create a scene converter, create and convert the startingscene - KX_ISceneConverter* sceneconverter = new KX_BlenderSceneConverter(maggie,sipo, ketsjiengine); + KX_ISceneConverter* sceneconverter = new KX_BlenderSceneConverter(maggie, ketsjiengine); ketsjiengine->SetSceneConverter(sceneconverter); sceneconverter->addInitFromFrame=true; diff --git a/source/gameengine/Converter/KX_BlenderSceneConverter.cpp b/source/gameengine/Converter/KX_BlenderSceneConverter.cpp index 646e569a27e..42b96d65622 100644 --- a/source/gameengine/Converter/KX_BlenderSceneConverter.cpp +++ b/source/gameengine/Converter/KX_BlenderSceneConverter.cpp @@ -94,11 +94,9 @@ extern "C" KX_BlenderSceneConverter::KX_BlenderSceneConverter( struct Main* maggie, - struct SpaceIpo* sipo, class KX_KetsjiEngine* engine ) : m_maggie(maggie), - m_sipo(sipo), m_ketsjiEngine(engine), m_alwaysUseExpandFraming(false), m_usemat(false), @@ -641,13 +639,13 @@ void KX_BlenderSceneConverter::RegisterWorldInfo( * When deleting an IPO curve from Python, check if the IPO is being * edited and if so clear the pointer to the old curve. */ -void KX_BlenderSceneConverter::localDel_ipoCurve ( IpoCurve * icu ,struct SpaceIpo* sipo) +void KX_BlenderSceneConverter::localDel_ipoCurve ( IpoCurve * icu) { - if (!sipo) + if (!G.sipo) return; int i; - EditIpo *ei= (EditIpo *)sipo->editipo; + EditIpo *ei= (EditIpo *)G.sipo->editipo; if (!ei) return; for(i=0; itotipo; i++, ei++) { @@ -751,7 +749,7 @@ void KX_BlenderSceneConverter::ResetPhysicsObjectsAnimationIpo(bool clearIpo) if( tmpicu->bezt ) MEM_freeN( tmpicu->bezt ); MEM_freeN( tmpicu ); - localDel_ipoCurve( tmpicu ,m_sipo); + localDel_ipoCurve( tmpicu ); } } } else diff --git a/source/gameengine/Converter/KX_BlenderSceneConverter.h b/source/gameengine/Converter/KX_BlenderSceneConverter.h index f7c1a506457..cf8dd5b339a 100644 --- a/source/gameengine/Converter/KX_BlenderSceneConverter.h +++ b/source/gameengine/Converter/KX_BlenderSceneConverter.h @@ -44,7 +44,6 @@ class BL_InterpolatorList; class BL_Material; struct IpoCurve; struct Main; -struct SpaceIpo; struct Scene; class KX_BlenderSceneConverter : public KX_ISceneConverter @@ -69,7 +68,6 @@ class KX_BlenderSceneConverter : public KX_ISceneConverter GEN_Map m_map_blender_to_gameipolist; Main* m_maggie; - SpaceIpo* m_sipo; STR_String m_newfilename; class KX_KetsjiEngine* m_ketsjiEngine; @@ -78,13 +76,12 @@ class KX_BlenderSceneConverter : public KX_ISceneConverter bool m_usemat; bool m_useglslmat; - void localDel_ipoCurve ( IpoCurve * icu ,struct SpaceIpo* sipo); + void localDel_ipoCurve ( IpoCurve * icu ); // struct Ipo* findIpoForName(char* objName); public: KX_BlenderSceneConverter( Main* maggie, - SpaceIpo *sipo, class KX_KetsjiEngine* engine ); diff --git a/source/gameengine/GamePlayer/ghost/GPG_Application.cpp b/source/gameengine/GamePlayer/ghost/GPG_Application.cpp index 8a594f7365d..bd332e8bbd7 100644 --- a/source/gameengine/GamePlayer/ghost/GPG_Application.cpp +++ b/source/gameengine/GamePlayer/ghost/GPG_Application.cpp @@ -663,7 +663,7 @@ bool GPG_Application::startEngine(void) */ // create a scene converter, create and convert the stratingscene - m_sceneconverter = new KX_BlenderSceneConverter(m_maggie,0, m_ketsjiengine); + m_sceneconverter = new KX_BlenderSceneConverter(m_maggie, m_ketsjiengine); if (m_sceneconverter) { STR_String startscenename = m_startSceneName.Ptr(); diff --git a/source/gameengine/Ketsji/KX_PythonSeq.cpp b/source/gameengine/Ketsji/KX_PythonSeq.cpp index cc8021fc2e4..f2bc4671f4e 100644 --- a/source/gameengine/Ketsji/KX_PythonSeq.cpp +++ b/source/gameengine/Ketsji/KX_PythonSeq.cpp @@ -313,7 +313,11 @@ PyTypeObject KX_PythonSeq_Type = { NULL, /* printfunc tp_print; */ NULL, /* getattrfunc tp_getattr; */ NULL, /* setattrfunc tp_setattr; */ +#if PY_VERSION_HEX >= 0x03000000 // TODO - richcmp + NULL, +#else ( cmpfunc ) KX_PythonSeq_compare, /* cmpfunc tp_compare; */ +#endif ( reprfunc ) KX_PythonSeq_repr, /* reprfunc tp_repr; */ /* Method suites for standard classes */