[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [14403] trunk/blender/source/gameengine/ GamePlayer: fix BGE bug #8880: blenderplayer closing when esc is pressed
Benoit Bolsee
benoit.bolsee at online.be
Sat Apr 12 23:19:07 CEST 2008
Revision: 14403
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=14403
Author: ben2610
Date: 2008-04-12 23:18:58 +0200 (Sat, 12 Apr 2008)
Log Message:
-----------
fix BGE bug #8880: blenderplayer closing when esc is pressed
ESC now quits the game by default in all modes unless a keyboard sensor is set on ESC.
In this case, the game designer must arrange for an alternative way to quit the game.
Modified Paths:
--------------
trunk/blender/source/gameengine/GamePlayer/common/GPC_KeyboardDevice.h
trunk/blender/source/gameengine/GamePlayer/ghost/GPG_Application.cpp
Modified: trunk/blender/source/gameengine/GamePlayer/common/GPC_KeyboardDevice.h
===================================================================
--- trunk/blender/source/gameengine/GamePlayer/common/GPC_KeyboardDevice.h 2008-04-12 20:36:35 UTC (rev 14402)
+++ trunk/blender/source/gameengine/GamePlayer/common/GPC_KeyboardDevice.h 2008-04-12 21:18:58 UTC (rev 14403)
@@ -58,9 +58,9 @@
* System dependent keyboard codes are stored as ints.
*/
std::map<int, KX_EnumInputs> m_reverseKeyTranslateTable;
- bool m_hookesc;
public:
+ bool m_hookesc;
GPC_KeyboardDevice()
: m_hookesc(false)
{
Modified: trunk/blender/source/gameengine/GamePlayer/ghost/GPG_Application.cpp
===================================================================
--- trunk/blender/source/gameengine/GamePlayer/ghost/GPG_Application.cpp 2008-04-12 20:36:35 UTC (rev 14402)
+++ trunk/blender/source/gameengine/GamePlayer/ghost/GPG_Application.cpp 2008-04-12 21:18:58 UTC (rev 14403)
@@ -845,11 +845,12 @@
{
GHOST_TEventDataPtr eventData = ((GHOST_IEvent*)event)->getData();
GHOST_TEventKeyData* keyData = static_cast<GHOST_TEventKeyData*>(eventData);
- if (fSystem->getFullScreen()) {
- if (keyData->key == GHOST_kKeyEsc) {
+ //no need for this test
+ //if (fSystem->getFullScreen()) {
+ if (keyData->key == GHOST_kKeyEsc && !m_keyboard->m_hookesc) {
m_exitRequested = KX_EXIT_REQUEST_OUTSIDE;
}
- }
+ //}
m_keyboard->ConvertEvent(keyData->key, isDown);
handled = true;
}
More information about the Bf-blender-cvs
mailing list