From f78d6b2fae2280010dd0dcf8828a2a09fa7ca3e1 Mon Sep 17 00:00:00 2001 From: Kostas Nakos Date: Sun, 1 Mar 2009 22:35:14 +0000 Subject: add support for tinsel engine (off by default for the time being) svn-id: r39061 --- backends/platform/wince/CEActionsPocket.cpp | 8 ++++++-- backends/platform/wince/CEActionsSmartphone.cpp | 8 ++++++-- backends/platform/wince/Makefile | 2 ++ backends/platform/wince/README-WinCE.txt | 10 ++++++++++ backends/platform/wince/wince-sdl.cpp | 5 +++++ 5 files changed, 29 insertions(+), 4 deletions(-) (limited to 'backends/platform/wince') diff --git a/backends/platform/wince/CEActionsPocket.cpp b/backends/platform/wince/CEActionsPocket.cpp index 8adf9874e5..1f6eeb3770 100644 --- a/backends/platform/wince/CEActionsPocket.cpp +++ b/backends/platform/wince/CEActionsPocket.cpp @@ -132,11 +132,12 @@ void CEActionsPocket::initInstanceGame() { bool is_drascula = (strncmp(gameid.c_str(), "drascula",8) == 0); bool is_tucker = (gameid == "tucker"); bool is_groovie = (gameid == "groovie"); + bool is_tinsel = (gameid == "tinsel"); GUI_Actions::initInstanceGame(); // See if a right click mapping could be needed - if (is_sword1 || is_sword2 || is_sky || is_queen || is_comi || is_gob || + if (is_sword1 || is_sword2 || is_sky || is_queen || is_comi || is_gob || is_tinsel || is_samnmax || is_cine || is_touche || is_parallaction || is_drascula) _right_click_needed = true; @@ -166,6 +167,9 @@ void CEActionsPocket::initInstanceGame() { } else if (is_parallaction) { _action_enabled[POCKET_ACTION_SAVE] = true; _key_action[POCKET_ACTION_SAVE].setKey('s', SDLK_s); + } else if (is_tinsel) { + _action_enabled[POCKET_ACTION_SAVE] = true; + _key_action[POCKET_ACTION_SAVE].setKey(Common::ASCII_F1, SDLK_F1); } else { _action_enabled[POCKET_ACTION_SAVE] = true; _key_action[POCKET_ACTION_SAVE].setKey(Common::ASCII_F5, SDLK_F5); // F5 key @@ -175,7 +179,7 @@ void CEActionsPocket::initInstanceGame() { // Skip if (!is_cine && !is_parallaction && !is_groovie) _action_enabled[POCKET_ACTION_SKIP] = true; - if (is_simon || is_sky || is_sword2 || is_queen || is_sword1 || is_gob || + if (is_simon || is_sky || is_sword2 || is_queen || is_sword1 || is_gob || is_tinsel || is_saga || is_kyra || is_touche || is_lure || is_feeble || is_drascula || is_tucker) _key_action[POCKET_ACTION_SKIP].setKey(VK_ESCAPE); else diff --git a/backends/platform/wince/CEActionsSmartphone.cpp b/backends/platform/wince/CEActionsSmartphone.cpp index 663ad18433..99f73bf37d 100644 --- a/backends/platform/wince/CEActionsSmartphone.cpp +++ b/backends/platform/wince/CEActionsSmartphone.cpp @@ -122,11 +122,12 @@ void CEActionsSmartphone::initInstanceGame() { bool is_drascula = (strncmp(gameid.c_str(), "drascula",8) == 0); bool is_tucker = (gameid == "tucker"); bool is_groovie = (gameid == "groovie"); + bool is_tinsel = (gameid == "tinsel"); GUI_Actions::initInstanceGame(); // See if a right click mapping could be needed - if (is_sword1 || is_sword2 || is_sky || is_queen || is_comi || is_gob || + if (is_sword1 || is_sword2 || is_sky || is_queen || is_comi || is_gob || is_tinsel || is_samnmax || is_cine || is_touche || is_parallaction || is_drascula) _right_click_needed = true; @@ -149,13 +150,16 @@ void CEActionsSmartphone::initInstanceGame() { } else if (is_parallaction) { _action_enabled[SMARTPHONE_ACTION_SAVE] = true; _key_action[SMARTPHONE_ACTION_SAVE].setKey('s', SDLK_s); + } else if (is_tinsel) { + _action_enabled[SMARTPHONE_ACTION_SAVE] = true; + _key_action[SMARTPHONE_ACTION_SAVE].setKey(Common::ASCII_F1, SDLK_F1); } else { _action_enabled[SMARTPHONE_ACTION_SAVE] = true; _key_action[SMARTPHONE_ACTION_SAVE].setKey(Common::ASCII_F5, SDLK_F5); // F5 key } // Skip _action_enabled[SMARTPHONE_ACTION_SKIP] = true; - if (is_simon || is_sky || is_sword2 || is_queen || is_sword1 || is_gob || + if (is_simon || is_sky || is_sword2 || is_queen || is_sword1 || is_gob || is_tinsel || is_saga || is_kyra || is_touche || is_lure || is_feeble || is_drascula || is_tucker || is_groovie) _key_action[SMARTPHONE_ACTION_SKIP].setKey(VK_ESCAPE); else diff --git a/backends/platform/wince/Makefile b/backends/platform/wince/Makefile index 1d17253d21..bda259eaba 100644 --- a/backends/platform/wince/Makefile +++ b/backends/platform/wince/Makefile @@ -39,6 +39,8 @@ ENABLE_PARALLACTION = STATIC_PLUGIN ENABLE_DRASCULA = STATIC_PLUGIN ENABLE_GROOVIE = STATIC_PLUGIN ENABLE_TUCKER = STATIC_PLUGIN +#ENABLE_SCI = STATIC_PLUGIN +#ENABLE_TINSEL = STATIC_PLUGIN #ENABLE_CRUISE = STATIC_PLUGIN #ENABLE_IGOR = STATIC_PLUGIN #ENABLE_M4 = STATIC_PLUGIN diff --git a/backends/platform/wince/README-WinCE.txt b/backends/platform/wince/README-WinCE.txt index b258eff46d..6a289766a2 100644 --- a/backends/platform/wince/README-WinCE.txt +++ b/backends/platform/wince/README-WinCE.txt @@ -574,6 +574,7 @@ Readme file for more information on this. The control scheme is awkward (Pocket PCs) ------------------------------------------ + Map and use the 'Free Look' action. Since normal pointer operation is to enter a left click at each tap position, the free look mode enables 'hovering' the mouse on an object, then right clicking either by using the @@ -581,6 +582,15 @@ double tap method or by pressing the 'Right Click' action. Also, a left click can be entered while in free look mode, by clicking a second time near the current pointer's location. Note that two taps equal a left click. +--------------- +-- Discworld -- +--------------- + +By default, the double tap to right click action is disabled in this game +as this interferes with the game's controls. This setting can be overridden +(see 'no_doubletap_rightclick' parameter above). + + ------------------------------------------------------------------------ Support ------------------------------------------------------------------------ diff --git a/backends/platform/wince/wince-sdl.cpp b/backends/platform/wince/wince-sdl.cpp index bd138d73c9..a191af0810 100644 --- a/backends/platform/wince/wince-sdl.cpp +++ b/backends/platform/wince/wince-sdl.cpp @@ -1083,6 +1083,11 @@ void OSystem_WINCE3::update_game_settings() { if (ConfMan.hasKey("no_doubletap_rightclick")) _noDoubleTapRMB = ConfMan.getBool("no_doubletap_rightclick"); + else if (gameid == "tinsel") { + _noDoubleTapRMB = true; + ConfMan.setBool("no_doubletap_rightclick", true); + ConfMan.flushToDisk(); + } compute_sample_rate(); } -- cgit v1.2.3