22#ifndef WINTERMUTE_KEYMAPPER_TABLES_H
23#define WINTERMUTE_KEYMAPPER_TABLES_H
25#include "backends/keymapper/action.h"
26#include "backends/keymapper/keymapper.h"
29#include "engines/wintermute/base/base_game_custom_actions.h"
31#include "common/translation.h"
39 Keymap *engineKeyMap =
new Keymap(Keymap::kKeymapTypeGame,
"wintermute",
"Wintermute engine");
40 Keymap *gameKeyMap =
new Keymap(Keymap::kKeymapTypeGame, gameId, gameDescr);
41 Keymap *extraKeyMap =
new Keymap(Keymap::kKeymapTypeGame,
"extras",
"ScummVM extra actions");
45 act =
new Action(kStandardActionLeftClick, _(
"Left click"));
46 act->setLeftClickEvent();
51 act =
new Action(kStandardActionRightClick, _(
"Right click"));
52 act->setRightClickEvent();
57 act =
new Action(
"RETURN", _(
"Confirm"));
58 act->setKeyEvent(
KeyState(KEYCODE_RETURN, ASCII_RETURN));
63 act =
new Action(
"ESCAPE", _(
"Escape"));
64 act->setKeyEvent(
KeyState(KEYCODE_ESCAPE, ASCII_ESCAPE));
69 act =
new Action(
"PAUSE", _(
"Pause game anytime"));
70 act->setKeyEvent(
KeyState(KEYCODE_p, 0, KBD_CTRL));
74 act =
new Action(
"HIGHLIGHT", _(
"Highlight active items"));
75 act->setKeyEvent(
KeyState(KEYCODE_TAB, 0, KBD_CTRL));
80 if (gameId ==
"8squares" ||
81 gameId ==
"actualdest" ||
83 gameId ==
"agustin" ||
84 gameId ==
"artofmurder1" ||
85 gameId ==
"barbapoca1" ||
86 gameId ==
"barrowhilldp" ||
87 gameId ==
"bickadoodle" ||
88 gameId ==
"bookmania" ||
89 gameId ==
"bthreshold" ||
90 gameId ==
"carolreed6" ||
91 gameId ==
"carolreed7" ||
92 gameId ==
"carolreed8" ||
94 gameId ==
"colapso1" ||
95 gameId ==
"colorsoncanvas" ||
96 gameId ==
"conspiracao" ||
97 gameId ==
"corrosion" ||
98 gameId ==
"darkfallls" ||
99 gameId ==
"deadcity" ||
100 gameId ==
"drbohus" ||
101 gameId ==
"dreaming" ||
102 gameId ==
"dreamscape" ||
103 gameId ==
"driller" ||
104 gameId ==
"everydaygray" ||
105 gameId ==
"findinghope" ||
107 gameId ==
"framed" ||
109 gameId ==
"guttenburg" ||
110 gameId ==
"hamlet" ||
112 gameId ==
"idiotstale" ||
113 gameId ==
"imustkill" ||
114 gameId ==
"juliauntold" ||
115 gameId ==
"keshaskazok" ||
116 gameId ==
"klaymen1" ||
117 gameId ==
"leyendabiblio" ||
118 gameId ==
"lifein3minutes" ||
119 gameId ==
"lonelyrobot" ||
120 gameId ==
"machumayu" ||
121 gameId ==
"mirage" ||
122 gameId ==
"miskatonic1" ||
123 gameId ==
"mukhtar" ||
124 gameId ==
"mystictriddle" ||
125 gameId ==
"nighttrain" ||
126 gameId ==
"nightinthefog" ||
127 gameId ==
"nosebound1" ||
128 gameId ==
"octave" ||
129 gameId ==
"operacionbomba" ||
130 gameId ==
"pangea" ||
131 gameId ==
"preciouspills" ||
132 gameId ==
"projectdoom" ||
133 gameId ==
"roadsantiago" ||
134 gameId ==
"royalmahjong" ||
135 gameId ==
"rosemary" ||
136 gameId ==
"satanandsons" ||
137 gameId ==
"shadowofnebula" ||
138 gameId ==
"shelter" ||
139 gameId ==
"sofiasdebt" ||
140 gameId ==
"spaceinvaders" ||
141 gameId ==
"spacemadness" ||
142 gameId ==
"strangechange" ||
143 gameId ==
"susanrose1" ||
144 gameId ==
"susanrose2" ||
145 gameId ==
"tanya1" ||
146 gameId ==
"tanya2" ||
147 gameId ==
"theancientmark1" ||
148 gameId ==
"thebox" ||
149 gameId ==
"thekite" ||
150 gameId ==
"tradestory" ||
155 }
else if (gameId ==
"dfafadventure" ||
156 gameId ==
"dreamcat" ||
157 gameId ==
"openquest"
159 act =
new Action(
"LOOK", _(
"Look at"));
160 act->setKeyEvent(
KeyState(KEYCODE_l,
'l'));
165 act =
new Action(
"TALK", _(
"Talk to"));
166 act->setKeyEvent(
KeyState(KEYCODE_t,
't'));
171 act =
new Action(
"PICK", _(
"Pick up"));
172 act->setKeyEvent(
KeyState(KEYCODE_p,
'p'));
177 act =
new Action(
"USE", _(
"Use"));
178 act->setKeyEvent(
KeyState(KEYCODE_u,
'u'));
182 }
else if (gameId ==
"basisoctavus" ||
183 gameId ==
"lovmamuta" ||
184 gameId ==
"wmedemo3d"
186 act =
new Action(kStandardActionMoveUp, _(
"Move forward"));
187 act->setKeyEvent(KEYCODE_UP);
192 act =
new Action(kStandardActionMoveDown, _(
"Move backwards"));
193 act->setKeyEvent(KEYCODE_DOWN);
198 act =
new Action(kStandardActionMoveLeft, _(
"Turn left"));
199 act->setKeyEvent(KEYCODE_LEFT);
204 act =
new Action(kStandardActionMoveRight, _(
"Turn right"));
205 act->setKeyEvent(KEYCODE_RIGHT);
211 act =
new Action(
"DBGSCN", _(
"Show scene geometry"));
212 act->setKeyEvent(KEYCODE_F1);
217 }
else if (gameId ==
"5ld" ||
218 gameId ==
"projectjoe"
220 act =
new Action(
"PAGEUP", _(
"Previous page"));
221 act->setKeyEvent(KEYCODE_PAGEUP);
227 act =
new Action(
"PAGEDN", _(
"Next page"));
228 act->setKeyEvent(KEYCODE_PAGEDOWN);
233 }
else if (gameId ==
"5ma" ||
234 gameId ==
"dirtysplit"
236 act =
new Action(
"PAGEUP", _(
"Previous page"));
237 act->setKeyEvent(KEYCODE_PAGEUP);
244 act =
new Action(
"PAGEDN", _(
"Next page"));
245 act->setKeyEvent(KEYCODE_PAGEDOWN);
251 }
else if (gameId ==
"chivalry" ||
252 gameId ==
"paintaria" ||
253 gameId ==
"pigeons" ||
254 gameId ==
"rhiannon" ||
255 gameId ==
"shinestar"
257 act =
new Action(kStandardActionSkip, _(
"Skip"));
258 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
263 }
else if (gameId ==
"drdoylemotch" ||
264 gameId ==
"carolreed9" ||
265 gameId ==
"carolreed10" ||
266 gameId ==
"carolreed11" ||
267 gameId ==
"carolreed12" ||
268 gameId ==
"carolreed13" ||
269 gameId ==
"carolreed14" ||
270 gameId ==
"carolreed15" ||
271 gameId ==
"carolreed16" ||
272 gameId ==
"kulivocko" ||
273 gameId ==
"sunrise" ||
274 gameId ==
"rebeccacarlson1"
276 act =
new Action(
"HINT", _(
"Show hints"));
277 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
282 }
else if (gameId ==
"goldencalf" ||
286 act =
new Action(
"INV", _(
"Show inventory"));
287 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
292 }
else if (gameId ==
"bookofgron") {
293 act =
new Action(kStandardActionMiddleClick, _(
"Middle click"));
294 act->setMiddleClickEvent();
298 }
else if (gameId ==
"qajarycat") {
299 act =
new Action(
"HINT", _(
"Show hints"));
300 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
306 act =
new Action(
"GUIA", _(
"GUI variant A"));
307 act->setKeyEvent(KEYCODE_F10);
313 act =
new Action(
"GUIB", _(
"GUI variant B"));
314 act->setKeyEvent(KEYCODE_F11);
320 act =
new Action(
"PHONEX", _(
"Phone cancel button"));
321 act->setKeyEvent(
KeyState(KEYCODE_BACKSPACE, ASCII_BACKSPACE));
325 act =
new Action(
"PHONEU", _(
"Phone up button"));
326 act->setKeyEvent(KEYCODE_UP);
331 act =
new Action(
"PHONED", _(
"Phone down button"));
332 act->setKeyEvent(KEYCODE_DOWN);
337 act =
new Action(kStandardActionMiddleClick, _(
"Middle click"));
338 act->setMiddleClickEvent();
342 act =
new Action(kStandardActionEE, _(
"???"));
343 act->setKeyEvent(KEYCODE_HOME);
347 }
else if (gameId ==
"forgottensound1" ||
348 gameId ==
"forgottensound2"
350 act =
new Action(
"HINT", _(
"Show hints"));
351 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
357 act =
new Action(kStandardActionMoveLeft, _(
"Left"));
358 act->setKeyEvent(KEYCODE_LEFT);
363 act =
new Action(kStandardActionMoveRight, _(
"Right"));
364 act->setKeyEvent(KEYCODE_RIGHT);
369 act =
new Action(
"GUIA", _(
"GUI variant A"));
370 act->setKeyEvent(KEYCODE_F10);
376 act =
new Action(
"GUIB", _(
"GUI variant B"));
377 act->setKeyEvent(KEYCODE_F11);
383 act =
new Action(kStandardActionEE, _(
"???"));
384 act->setKeyEvent(KEYCODE_HOME);
388 }
else if (gameId ==
"tehran1933") {
389 act =
new Action(
"HINT", _(
"Show hints"));
390 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
397 act =
new Action(
"ALTUSE", _(
"Alternative action"));
398 act->setMiddleClickEvent();
404 act =
new Action(
"GUIA", _(
"GUI variant A"));
405 act->setKeyEvent(KEYCODE_F10);
411 act =
new Action(
"GUIB", _(
"GUI variant B"));
412 act->setKeyEvent(KEYCODE_F11);
418 act =
new Action(kStandardActionEE, _(
"???"));
419 act->setKeyEvent(KEYCODE_HOME);
423 }
else if (gameId ==
"darksummer" ||
424 gameId ==
"tehran2016"
426 act =
new Action(
"HINT", _(
"Show hints"));
427 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
433 act =
new Action(
"INV", _(
"Show inventory"));
434 act->setKeyEvent(
KeyState(KEYCODE_i,
'i'));
439 act =
new Action(
"GUIA", _(
"GUI variant A"));
440 act->setKeyEvent(KEYCODE_F10);
445 act =
new Action(
"GUIB", _(
"GUI variant B"));
446 act->setKeyEvent(KEYCODE_F11);
451 act =
new Action(
"PHONEX", _(
"Phone cancel button"));
452 act->setKeyEvent(
KeyState(KEYCODE_BACKSPACE, ASCII_BACKSPACE));
456 act =
new Action(
"PHONEU", _(
"Phone up button"));
457 act->setKeyEvent(KEYCODE_UP);
462 act =
new Action(
"PHONED", _(
"Phone down button"));
463 act->setKeyEvent(KEYCODE_DOWN);
468 act =
new Action(
"PHONE0", _(
"Phone 0 button"));
469 act->setKeyEvent(
KeyState(KEYCODE_0,
'0'));
473 act =
new Action(
"PHONE1", _(
"Phone 1 button"));
474 act->setKeyEvent(
KeyState(KEYCODE_1,
'1'));
478 act =
new Action(
"PHONE2", _(
"Phone 2 button"));
479 act->setKeyEvent(
KeyState(KEYCODE_2,
'2'));
483 act =
new Action(
"PHONE3", _(
"Phone 3 button"));
484 act->setKeyEvent(
KeyState(KEYCODE_3,
'3'));
488 act =
new Action(
"PHONE4", _(
"Phone 4 button"));
489 act->setKeyEvent(
KeyState(KEYCODE_4,
'4'));
493 act =
new Action(
"PHONE5", _(
"Phone 5 button"));
494 act->setKeyEvent(
KeyState(KEYCODE_5,
'5'));
498 act =
new Action(
"PHONE6", _(
"Phone 6 button"));
499 act->setKeyEvent(
KeyState(KEYCODE_6,
'6'));
503 act =
new Action(
"PHONE7", _(
"Phone 7 button"));
504 act->setKeyEvent(
KeyState(KEYCODE_7,
'7'));
508 act =
new Action(
"PHONE8", _(
"Phone 8 button"));
509 act->setKeyEvent(
KeyState(KEYCODE_8,
'8'));
513 act =
new Action(
"PHONE9", _(
"Phone 9 button"));
514 act->setKeyEvent(
KeyState(KEYCODE_9,
'9'));
518 act =
new Action(
"PHONEA", _(
"Phone * button"));
519 act->setKeyEvent(
KeyState(KEYCODE_ASTERISK,
'*'));
523 act =
new Action(
"PHONEH", _(
"Phone # button"));
524 act->setKeyEvent(
KeyState(KEYCODE_HASH,
'#'));
528 act =
new Action(kStandardActionEE, _(
"???"));
529 act->setKeyEvent(KEYCODE_HOME);
533 }
else if (gameId ==
"alimardan1" ||
534 gameId ==
"devilincapital"
536 act =
new Action(
"HINT", _(
"Show hints"));
537 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
543 act =
new Action(
"GUIA", _(
"GUI variant A"));
544 act->setKeyEvent(KEYCODE_F10);
550 act =
new Action(
"GUIB", _(
"GUI variant B"));
551 act->setKeyEvent(KEYCODE_F11);
557 act =
new Action(kStandardActionEE, _(
"???"));
558 act->setKeyEvent(KEYCODE_HOME);
562 }
else if (gameId ==
"alimardan2") {
563 act =
new Action(
"HINT", _(
"Show hints"));
564 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
570 act =
new Action(
"GUIA", _(
"GUI variant A"));
571 act->setKeyEvent(KEYCODE_F10);
577 act =
new Action(
"GUIB", _(
"GUI variant B"));
578 act->setKeyEvent(KEYCODE_F11);
584 act =
new Action(
"PHONEX", _(
"Phone cancel button"));
585 act->setKeyEvent(
KeyState(KEYCODE_BACKSPACE, ASCII_BACKSPACE));
589 act =
new Action(
"PHONEU", _(
"Phone up button"));
590 act->setKeyEvent(KEYCODE_UP);
595 act =
new Action(
"PHONED", _(
"Phone down button"));
596 act->setKeyEvent(KEYCODE_DOWN);
601 act =
new Action(
"PHONE0", _(
"Phone 0 button"));
602 act->setKeyEvent(
KeyState(KEYCODE_0,
'0'));
606 act =
new Action(
"PHONE1", _(
"Phone 1 button"));
607 act->setKeyEvent(
KeyState(KEYCODE_1,
'1'));
611 act =
new Action(
"PHONE2", _(
"Phone 2 button"));
612 act->setKeyEvent(
KeyState(KEYCODE_2,
'2'));
616 act =
new Action(
"PHONE3", _(
"Phone 3 button"));
617 act->setKeyEvent(
KeyState(KEYCODE_3,
'3'));
621 act =
new Action(
"PHONE4", _(
"Phone 4 button"));
622 act->setKeyEvent(
KeyState(KEYCODE_4,
'4'));
626 act =
new Action(
"PHONE5", _(
"Phone 5 button"));
627 act->setKeyEvent(
KeyState(KEYCODE_5,
'5'));
631 act =
new Action(
"PHONE6", _(
"Phone 6 button"));
632 act->setKeyEvent(
KeyState(KEYCODE_6,
'6'));
636 act =
new Action(
"PHONE7", _(
"Phone 7 button"));
637 act->setKeyEvent(
KeyState(KEYCODE_7,
'7'));
641 act =
new Action(
"PHONE8", _(
"Phone 8 button"));
642 act->setKeyEvent(
KeyState(KEYCODE_8,
'8'));
646 act =
new Action(
"PHONE9", _(
"Phone 9 button"));
647 act->setKeyEvent(
KeyState(KEYCODE_9,
'9'));
651 act =
new Action(
"PHONEA", _(
"Phone * button"));
652 act->setKeyEvent(
KeyState(KEYCODE_ASTERISK,
'*'));
656 act =
new Action(
"PHONEH", _(
"Phone # button"));
657 act->setKeyEvent(
KeyState(KEYCODE_HASH,
'#'));
661 act =
new Action(kStandardActionEE, _(
"???"));
662 act->setKeyEvent(KEYCODE_HOME);
666 }
else if (gameId ==
"alavi") {
667 act =
new Action(
"PAGEUP", _(
"Previous page"));
668 act->setKeyEvent(KEYCODE_PAGEUP);
675 act =
new Action(
"PAGEDN", _(
"Next page"));
676 act->setKeyEvent(KEYCODE_PAGEDOWN);
683 act =
new Action(
"SCRS", _(
"Save screenshot"));
684 act->setKeyEvent(KEYCODE_F6);
687 }
else if (gameId ==
"alphapolaris") {
688 act =
new Action(
"HINT", _(
"Show hints"));
689 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
695 act =
new Action(
"INV", _(
"Show inventory"));
696 act->setKeyEvent(
KeyState(KEYCODE_i,
'i'));
701 act =
new Action(
"HELP", _(
"Show help"));
702 act->setKeyEvent(KEYCODE_F1);
707 act =
new Action(
"SCRLUP", _(
"Scroll up"));
708 act->setMouseWheelUpEvent();
714 act =
new Action(
"SCRLDN", _(
"Scroll down"));
715 act->setMouseWheelDownEvent();
722 act =
new Action(
"DBGSCN", _(
"Show scene geometry"));
723 act->setKeyEvent(
KeyState(KEYCODE_F2, 0, KBD_CTRL));
727 act =
new Action(
"SHADOW", _(
"Change shadow type"));
728 act->setKeyEvent(
KeyState(KEYCODE_F3, 0, KBD_CTRL));
732 act =
new Action(
"SCRS", _(
"Save screenshot"));
733 act->setKeyEvent(
KeyState(KEYCODE_F5, 0, KBD_CTRL));
737 act =
new Action(
"VOLMAX", _(
"Volume max"));
738 act->setKeyEvent(
KeyState(KEYCODE_F6, 0, KBD_CTRL));
743 act =
new Action(
"DBGCLI", _(
"Show debug parser"));
744 act->setKeyEvent(
KeyState(KEYCODE_F7, 0, KBD_CTRL));
751 act =
new Action(
"DBGTXT", _(
"Debug print"));
752 act->setKeyEvent(
KeyState(KEYCODE_F8, 0, KBD_CTRL));
757 act =
new Action(
"EXIT", _(
"Exit"));
758 act->setKeyEvent(
KeyState(KEYCODE_F9, 0, KBD_CTRL));
763 act =
new Action(
"LIGHT", _(
"Light helper window"));
764 act->setKeyEvent(
KeyState(KEYCODE_F11, 0, KBD_CTRL));
768 act =
new Action(kStandardActionMoveUp, _(
"Move forward"));
769 act->setKeyEvent(KEYCODE_UP);
773 act =
new Action(kStandardActionMoveDown, _(
"Move backwards"));
774 act->setKeyEvent(KEYCODE_DOWN);
778 act =
new Action(kStandardActionMoveLeft, _(
"Turn left"));
779 act->setKeyEvent(KEYCODE_LEFT);
783 act =
new Action(kStandardActionMoveRight, _(
"Turn right"));
784 act->setKeyEvent(KEYCODE_RIGHT);
788 act =
new Action(
"FASTU", _(
"Run forward"));
789 act->setKeyEvent(
KeyState(KEYCODE_UP, 0, KBD_SHIFT));
793 act =
new Action(
"FASTD", _(
"Run backward"));
794 act->setKeyEvent(
KeyState(KEYCODE_DOWN, 0, KBD_SHIFT));
798 act =
new Action(
"FASTL", _(
"Turn left fast"));
799 act->setKeyEvent(
KeyState(KEYCODE_LEFT, 0, KBD_SHIFT));
803 act =
new Action(
"FASTR", _(
"Turn right fast"));
804 act->setKeyEvent(
KeyState(KEYCODE_RIGHT, 0, KBD_SHIFT));
807 }
else if (gameId ==
"apeiron") {
809 act =
new Action(
"BLUE", _(
"Show blueprint"));
810 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
816 act =
new Action(kStandardActionEE, _(
"???"));
817 act->setKeyEvent(
KeyState(KEYCODE_n,
'n'));
821 }
else if (gameId ==
"awakening") {
822 act =
new Action(
"HINT", _(
"Show hints"));
823 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
829 act =
new Action(
"ACTNXT", _(
"Next action"));
830 act->setMouseWheelDownEvent();
836 act =
new Action(
"ACTPRV", _(
"Previous action"));
837 act->setMouseWheelUpEvent();
843 act =
new Action(kStandardActionEE, _(
"???"));
844 act->setKeyEvent(KEYCODE_END);
848 }
else if (gameId ==
"carolreed4") {
849 act =
new Action(
"HINT", _(
"Show hints"));
850 act->setKeyEvent(
KeyState(KEYCODE_TAB, ASCII_TAB));
856 act =
new Action(
"VOLMAX", _(
"Volume max"));
857 act->setMouseWheelUpEvent();
863 act =
new Action(
"VOLOFF", _(
"Volume off"));
864 act->setMouseWheelDownEvent();
869 }
else if (gameId ==
"carolreed5") {
870 act =
new Action(
"HINT", _(
"Show hints"));
871 act->setKeyEvent(
KeyState(KEYCODE_TAB, ASCII_TAB));
876 }
else if (gameId ==
"erinmyers") {
877 act =
new Action(
"GUIB", _(
"Change font size"));
878 act->setKeyEvent(KEYCODE_END);
882 }
else if (gameId ==
"escapemansion") {
883 act =
new Action(kStandardActionEE, _(
"???"));
884 act->setKeyEvent(KEYCODE_F1);
890 act =
new Action(
"DBGTXT", _(
"Debug print"));
891 act->setKeyEvent(KEYCODE_F2);
894 }
else if (gameId ==
"facenoir") {
895 act =
new Action(
"HINT", _(
"Show hints"));
896 act->setKeyEvent(KEYCODE_F1);
901 act =
new Action(
"INV", _(
"Show inventory"));
902 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
908 act =
new Action(
"SCRLUP", _(
"Scroll up"));
909 act->setMouseWheelUpEvent();
915 act =
new Action(
"SCRLDN", _(
"Scroll down"));
916 act->setMouseWheelDownEvent();
921 }
else if (gameId ==
"foxtail") {
922 act =
new Action(
"HINT", _(
"Show hints"));
923 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
929 act =
new Action(
"SCRLUP", _(
"Scroll up"));
930 act->setMouseWheelUpEvent();
936 act =
new Action(
"SCRLDN", _(
"Scroll down"));
937 act->setMouseWheelDownEvent();
943 act =
new Action(
"PAGEUP", _(
"Previous page"));
944 act->setKeyEvent(KEYCODE_PAGEUP);
950 act =
new Action(
"PAGEDN", _(
"Next page"));
951 act->setKeyEvent(KEYCODE_PAGEDOWN);
957 act =
new Action(kStandardActionSave, _(
"Save game"));
958 act->setKeyEvent(KEYCODE_F2);
962 act =
new Action(kStandardActionLoad, _(
"Load game"));
963 act->setKeyEvent(KEYCODE_F3);
967 act =
new Action(
"QSAVE", _(
"Quick save"));
968 act->setKeyEvent(KEYCODE_F5);
972 act =
new Action(
"SPD1", _(
"Walking speed: Low"));
973 act->setKeyEvent(KEYCODE_F6);
977 act =
new Action(
"SPD2", _(
"Walking speed: Medium"));
978 act->setKeyEvent(KEYCODE_F7);
982 act =
new Action(
"SPD3", _(
"Walking speed: High"));
983 act->setKeyEvent(KEYCODE_F8);
987 act =
new Action(
"QLOAD", _(
"Quick load"));
988 act->setKeyEvent(KEYCODE_F9);
992 act =
new Action(
"NOWAIT", _(
"Cancel waiting"));
993 act->setKeyEvent(KEYCODE_F10);
997 act =
new Action(
"CAPT", _(
"Toggle mouse capture"));
998 act->setKeyEvent(KEYCODE_F11);
1002 act =
new Action(
"HOME", _(
"First page"));
1003 act->setKeyEvent(KEYCODE_HOME);
1007 act =
new Action(
"END", _(
"Last page"));
1008 act->setKeyEvent(KEYCODE_END);
1013 if (extra.hasPrefix(
"1.2.230.") || extra.hasPrefix(
"1.2.304.") || extra.hasPrefix(
"1.2.362.")) {
1015 act =
new Action(
"SPDMAX", _(
"Walking speed: Ultra Super Mega Fast"));
1016 act->setKeyEvent(
KeyState(KEYCODE_s,
's', KBD_CTRL|KBD_ALT|KBD_SHIFT));
1022 if (extra.hasPrefix(
"1.2.362.")) {
1023 act =
new Action(kStandardActionEE, _(
"???"));
1024 act->setKeyEvent(
KeyState(KEYCODE_z,
'z'));
1030 if (extra.hasPrefix(
"1.2.896.")) {
1031 act =
new Action(
"CREDIT", _(
"Show game credits"));
1032 act->setKeyEvent(KEYCODE_F1);
1036 act =
new Action(
"MPLAY", _(
"Play selected music record"));
1037 act->setKeyEvent(KEYCODE_F4);
1041 act =
new Action(
"MNEXT", _(
"Select next music record"));
1042 act->setKeyEvent(
KeyState(KEYCODE_TAB, ASCII_TAB));
1046 act =
new Action(
"NOTE1", _(
"Play note 1: A"));
1047 act->setKeyEvent(
KeyState(KEYCODE_d,
'd'));
1051 act =
new Action(
"NOTE2", _(
"Play note 2: F#"));
1052 act->setKeyEvent(
KeyState(KEYCODE_f,
'f'));
1056 act =
new Action(
"NOTE3", _(
"Play note 3: D#"));
1057 act->setKeyEvent(
KeyState(KEYCODE_g,
'g'));
1061 act =
new Action(
"NOTE4", _(
"Play note 4: C#"));
1062 act->setKeyEvent(
KeyState(KEYCODE_h,
'h'));
1066 act =
new Action(
"NOTE5", _(
"Play note 5: E"));
1067 act->setKeyEvent(
KeyState(KEYCODE_j,
'j'));
1071 act =
new Action(
"NOTE6", _(
"Play note 6: G#"));
1072 act->setKeyEvent(
KeyState(KEYCODE_k,
'k'));
1076 act =
new Action(
"NOTE7", _(
"Play note 7: B"));
1077 act->setKeyEvent(
KeyState(KEYCODE_l,
'l'));
1081 }
else if (gameId ==
"ghostsheet") {
1082 act =
new Action(
"HINT", _(
"Show hints"));
1083 act->setKeyEvent(
KeyState(KEYCODE_TAB, ASCII_TAB));
1089 act =
new Action(
"ABLT1", _(
"Ability: Telekinesis"));
1090 act->setKeyEvent(KEYCODE_F1);
1094 act =
new Action(
"ABLT2", _(
"Ability: Push"));
1095 act->setKeyEvent(KEYCODE_F2);
1099 act =
new Action(
"ABLT3", _(
"Ability: Lightning"));
1100 act->setKeyEvent(KEYCODE_F3);
1104 act =
new Action(
"ABLT4", _(
"Ability: Light"));
1105 act->setKeyEvent(KEYCODE_F4);
1109 act =
new Action(
"ABLT5", _(
"Ability: Wind"));
1110 act->setKeyEvent(KEYCODE_F5);
1114 act =
new Action(
"ABLT6", _(
"Ability: Sound"));
1115 act->setKeyEvent(KEYCODE_F6);
1119 act =
new Action(
"ABLT7", _(
"Ability: Esence"));
1120 act->setKeyEvent(KEYCODE_F7);
1124 act =
new Action(
"ABLT8", _(
"Ability: Exorcist"));
1125 act->setKeyEvent(KEYCODE_F8);
1129 act =
new Action(kStandardActionSkip, _(
"Skip"));
1130 act->setKeyEvent(
KeyState(KEYCODE_BACKSPACE, ASCII_BACKSPACE));
1135 act =
new Action(
"SCRS", _(
"Save screenshot"));
1136 act->setKeyEvent(KEYCODE_F10);
1139 }
else if (gameId ==
"helga") {
1140 act =
new Action(
"PAGEUP", _(
"Previous page"));
1141 act->setKeyEvent(KEYCODE_PAGEUP);
1147 act =
new Action(
"PAGEDN", _(
"Next page"));
1148 act->setKeyEvent(KEYCODE_PAGEDOWN);
1154 act =
new Action(
"PHONEX", _(
"Phone cancel button"));
1155 act->setKeyEvent(
KeyState(KEYCODE_BACKSPACE, ASCII_BACKSPACE));
1159 act =
new Action(
"PHONEU", _(
"Phone up button"));
1160 act->setKeyEvent(KEYCODE_UP);
1165 act =
new Action(
"PHONED", _(
"Phone down button"));
1166 act->setKeyEvent(KEYCODE_DOWN);
1171 act =
new Action(
"PHONE0", _(
"Phone 0 button"));
1172 act->setKeyEvent(
KeyState(KEYCODE_0,
'0'));
1176 act =
new Action(
"PHONE1", _(
"Phone 1 button"));
1177 act->setKeyEvent(
KeyState(KEYCODE_1,
'1'));
1181 act =
new Action(
"PHONE2", _(
"Phone 2 button"));
1182 act->setKeyEvent(
KeyState(KEYCODE_2,
'2'));
1186 act =
new Action(
"PHONE3", _(
"Phone 3 button"));
1187 act->setKeyEvent(
KeyState(KEYCODE_3,
'3'));
1191 act =
new Action(
"PHONE4", _(
"Phone 4 button"));
1192 act->setKeyEvent(
KeyState(KEYCODE_4,
'4'));
1196 act =
new Action(
"PHONE5", _(
"Phone 5 button"));
1197 act->setKeyEvent(
KeyState(KEYCODE_5,
'5'));
1201 act =
new Action(
"PHONE6", _(
"Phone 6 button"));
1202 act->setKeyEvent(
KeyState(KEYCODE_6,
'6'));
1206 act =
new Action(
"PHONE7", _(
"Phone 7 button"));
1207 act->setKeyEvent(
KeyState(KEYCODE_7,
'7'));
1211 act =
new Action(
"PHONE8", _(
"Phone 8 button"));
1212 act->setKeyEvent(
KeyState(KEYCODE_8,
'8'));
1216 act =
new Action(
"PHONE9", _(
"Phone 9 button"));
1217 act->setKeyEvent(
KeyState(KEYCODE_9,
'9'));
1221 act =
new Action(
"PHONEA", _(
"Phone * button"));
1222 act->setKeyEvent(
KeyState(KEYCODE_ASTERISK,
'*'));
1226 act =
new Action(
"PHONEH", _(
"Phone # button"));
1227 act->setKeyEvent(
KeyState(KEYCODE_HASH,
'#'));
1230 }
else if (gameId ==
"knossos") {
1231 act =
new Action(kStandardActionEE, _(
"???"));
1232 act->setKeyEvent(
KeyState(KEYCODE_a,
'a', KBD_SHIFT));
1236 }
else if (gameId ==
"jamesperis") {
1237 act =
new Action(
"HINT", _(
"Show hints / Dance move"));
1238 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
1244 act =
new Action(kStandardActionMoveUp, _(
"Dance move up"));
1245 act->setKeyEvent(KEYCODE_UP);
1250 act =
new Action(kStandardActionMoveDown, _(
"Dance move down"));
1251 act->setKeyEvent(KEYCODE_DOWN);
1256 act =
new Action(kStandardActionMoveLeft, _(
"Dance move left"));
1257 act->setKeyEvent(KEYCODE_LEFT);
1262 act =
new Action(kStandardActionMoveRight, _(
"Dance move right"));
1263 act->setKeyEvent(KEYCODE_RIGHT);
1268 act =
new Action(
"PAGEUP", _(
"Previous page"));
1269 act->setMouseWheelUpEvent();
1273 act =
new Action(
"PAGEDN", _(
"Next page"));
1274 act->setMouseWheelDownEvent();
1278 act =
new Action(kStandardActionEE, _(
"???"));
1279 act->setKeyEvent(KEYCODE_F10);
1284 }
else if (gameId ==
"jamesperis2" ||
1285 gameId ==
"jamesperis2uncut") {
1286 act =
new Action(
"HINT", _(
"Show hints"));
1287 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
1293 act =
new Action(
"PAGEUP", _(
"Previous page"));
1294 act->setMouseWheelUpEvent();
1298 act =
new Action(
"PAGEDN", _(
"Next page"));
1299 act->setMouseWheelDownEvent();
1303 act =
new Action(kStandardActionLoad, _(
"Load game"));
1304 act->setKeyEvent(KEYCODE_F5);
1308 act =
new Action(kStandardActionEE, _(
"???"));
1309 act->setKeyEvent(
KeyState(KEYCODE_t,
't', KBD_CTRL));
1313 }
else if (gameId ==
"julia") {
1314 act =
new Action(kStandardActionSkip, _(
"Skip"));
1315 act->setKeyEvent(KEYCODE_F12);
1320 }
else if (gameId ==
"juliastars") {
1321 act =
new Action(
"CANCEL", _(
"Cancel input"));
1322 act->setKeyEvent(KEYCODE_BACKSPACE);
1328 act =
new Action(kStandardActionMoveUp, _(
"Up"));
1329 act->setKeyEvent(KEYCODE_UP);
1334 act =
new Action(kStandardActionMoveDown, _(
"Down"));
1335 act->setKeyEvent(KEYCODE_DOWN);
1340 act =
new Action(kStandardActionMoveLeft, _(
"Left"));
1341 act->setKeyEvent(KEYCODE_LEFT);
1346 act =
new Action(kStandardActionMoveRight, _(
"Right"));
1347 act->setKeyEvent(KEYCODE_RIGHT);
1352 act =
new Action(
"NOWAIT", _(
"Cancel waiting"));
1353 act->setKeyEvent(KEYCODE_F11);
1356 }
else if (gameId ==
"looky") {
1357 act =
new Action(
"HINT", _(
"Show hints"));
1358 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
1364 act =
new Action(
"SCRLUP", _(
"Scroll up"));
1365 act->setMouseWheelUpEvent();
1371 act =
new Action(
"SCRLDN", _(
"Scroll down"));
1372 act->setMouseWheelDownEvent();
1378 act =
new Action(
"SCRS", _(
"Save screenshot"));
1379 act->setKeyEvent(KEYCODE_F12);
1382 }
else if (gameId ==
"lotl") {
1383 act =
new Action(
"SUBS", _(
"Toggle subtitles"));
1384 act->setKeyEvent(
KeyState(KEYCODE_t,
't'));
1390 act =
new Action(
"SCRLUP", _(
"Scroll up"));
1391 act->setMouseWheelUpEvent();
1397 act =
new Action(
"SCRLDN", _(
"Scroll down"));
1398 act->setMouseWheelDownEvent();
1403 }
else if (gameId ==
"lostbride") {
1404 act =
new Action(
"HELP", _(
"Show help"));
1405 act->setKeyEvent(KEYCODE_F1);
1411 act =
new Action(kStandardActionMoveUp, _(
"Up"));
1412 act->setKeyEvent(KEYCODE_UP);
1417 act =
new Action(kStandardActionMoveDown, _(
"Down"));
1418 act->setKeyEvent(KEYCODE_DOWN);
1423 act =
new Action(kStandardActionMoveLeft, _(
"Left"));
1424 act->setKeyEvent(KEYCODE_LEFT);
1429 act =
new Action(kStandardActionMoveRight, _(
"Right"));
1430 act->setKeyEvent(KEYCODE_RIGHT);
1435 act =
new Action(kStandardActionEE, _(
"???"));
1436 act->setKeyEvent(
KeyState(KEYCODE_SLASH, 0, KBD_SHIFT));
1441 act =
new Action(
"HINT", _(
"???"));
1442 act->setKeyEvent(
KeyState(KEYCODE_s,
's'));
1447 act =
new Action(
"NOHINT", _(
"Hide hints"));
1448 act->setKeyEvent(
KeyState(KEYCODE_h,
'h'));
1452 }
else if (gameId ==
"mentalrepairs") {
1453 act =
new Action(
"HINT", _(
"Show hints"));
1454 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
1460 act =
new Action(
"HELP", _(
"Show help"));
1461 act->setKeyEvent(KEYCODE_F1);
1465 }
else if (gameId ==
"mythguff") {
1466 act =
new Action(
"SCRLUP", _(
"Scroll up"));
1467 act->setMouseWheelUpEvent();
1473 act =
new Action(
"SCRLDN", _(
"Scroll down"));
1474 act->setMouseWheelDownEvent();
1479 }
else if (gameId ==
"oknytt") {
1480 act =
new Action(
"INV", _(
"Show inventory"));
1481 act->setKeyEvent(
KeyState(KEYCODE_TAB, ASCII_TAB));
1486 }
else if (gameId ==
"onehelluvaday") {
1487 act =
new Action(kStandardActionMoveUp, _(
"Up"));
1488 act->setKeyEvent(KEYCODE_UP);
1494 act =
new Action(kStandardActionMoveDown, _(
"Down"));
1495 act->setKeyEvent(KEYCODE_DOWN);
1502 act =
new Action(
"SHIFT", _(
"Shift key"));
1503 act->setKeyEvent(KEYCODE_RSHIFT);
1509 }
else if (gameId ==
"palladion") {
1510 act =
new Action(
"HINT", _(
"Show hints"));
1511 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
1517 act =
new Action(
"SCRS", _(
"Save screenshot"));
1518 act->setKeyEvent(KEYCODE_F12);
1521 }
else if (gameId ==
"papasdaughters1") {
1522 act =
new Action(
"SCRLUP", _(
"Scroll up"));
1523 act->setMouseWheelUpEvent();
1529 act =
new Action(
"SCRLDN", _(
"Scroll down"));
1530 act->setMouseWheelDownEvent();
1535 }
else if (gameId ==
"papasdaughters2") {
1536 act =
new Action(
"HINT", _(
"Show hints"));
1537 act->setKeyEvent(KEYCODE_F1);
1543 act =
new Action(
"SCRLUP", _(
"Scroll up"));
1544 act->setMouseWheelUpEvent();
1550 act =
new Action(
"SCRLDN", _(
"Scroll down"));
1551 act->setMouseWheelDownEvent();
1556 }
else if (gameId ==
"petka02") {
1557 act =
new Action(
"INV", _(
"Show inventory"));
1558 act->setKeyEvent(
KeyState(KEYCODE_i,
'i'));
1564 act =
new Action(
"MAP", _(
"Show map"));
1565 act->setKeyEvent(
KeyState(KEYCODE_m,
'm'));
1572 act =
new Action(
"LOOK", _(
"Look at"));
1573 act->setKeyEvent(
KeyState(KEYCODE_l,
'l'));
1578 act =
new Action(
"WALK", _(
"Walk to"));
1579 act->setKeyEvent(
KeyState(KEYCODE_w,
'w'));
1584 act =
new Action(
"PICK", _(
"Pick up"));
1585 act->setKeyEvent(
KeyState(KEYCODE_g,
'g'));
1590 act =
new Action(
"USE", _(
"Use"));
1591 act->setKeyEvent(
KeyState(KEYCODE_u,
'u'));
1596 act =
new Action(
"TALK", _(
"Talk to"));
1597 act->setKeyEvent(
KeyState(KEYCODE_t,
't'));
1604 act =
new Action(
"ALTUSE", _(
"Chapayev's action"));
1605 act->setKeyEvent(
KeyState(KEYCODE_c,
'c'));
1611 if (extra.hasSuffix(
"2015")) {
1612 act =
new Action(kStandardActionEE, _(
"???"));
1613 act->setKeyEvent(
KeyState(KEYCODE_q,
'q'));
1619 act =
new Action(
"DBGTXT", _(
"Debug print"));
1620 act->setKeyEvent(KEYCODE_BACKSPACE);
1624 }
else if (gameId ==
"pizzamorgana") {
1625 act =
new Action(
"ACTNXT", _(
"Next action"));
1626 act->setMouseWheelUpEvent();
1633 act =
new Action(
"ACTPRV", _(
"Previous action"));
1634 act->setMouseWheelDownEvent();
1639 act =
new Action(kStandardActionSkip, _(
"Skip"));
1640 act->setKeyEvent(
KeyState(KEYCODE_PERIOD,
'.'));
1646 act =
new Action(kStandardActionPause, _(
"Pause"));
1647 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
1652 act =
new Action(kStandardActionOpenSettings, _(
"Settings"));
1653 act->setKeyEvent(
KeyState(KEYCODE_s,
's'));
1657 act =
new Action(
"ANSWR1", _(
"Dialog answer 1"));
1658 act->setKeyEvent(
KeyState(KEYCODE_1,
'1'));
1662 act =
new Action(
"ANSWR2", _(
"Dialog answer 2"));
1663 act->setKeyEvent(
KeyState(KEYCODE_2,
'2'));
1667 act =
new Action(
"ANSWR3", _(
"Dialog answer 3"));
1668 act->setKeyEvent(
KeyState(KEYCODE_3,
'3'));
1672 act =
new Action(
"ANSWR4", _(
"Dialog answer 4"));
1673 act->setKeyEvent(
KeyState(KEYCODE_4,
'4'));
1677 act =
new Action(
"SCRS", _(
"Save screenshot"));
1678 act->setKeyEvent(
KeyState(KEYCODE_p,
'p', KBD_SHIFT));
1681 }
else if (gameId ==
"polechudes") {
1683 act =
new Action(
"SLOWER", _(
"Spin wheel slower"));
1684 act->setKeyEvent(KEYCODE_F1);
1691 act =
new Action(
"FASTER", _(
"Spin wheel faster"));
1692 act->setKeyEvent(KEYCODE_F2);
1697 }
else if (gameId ==
"reptilesquest") {
1698 act =
new Action(
"HINT", _(
"Show hints"));
1699 act->setKeyEvent(
KeyState(KEYCODE_x,
'x'));
1705 act =
new Action(
"INV", _(
"Show inventory"));
1706 act->setKeyEvent(
KeyState(KEYCODE_i,
'i'));
1711 act =
new Action(
"MAP", _(
"Show map"));
1712 act->setKeyEvent(
KeyState(KEYCODE_m,
'm'));
1716 }
else if (gameId ==
"reversion1") {
1717 act =
new Action(
"INV", _(
"Show inventory"));
1718 act->setKeyEvent(
KeyState(KEYCODE_i,
'i'));
1723 }
else if (gameId ==
"reversion2" ||
1724 gameId ==
"reversion3"
1726 act =
new Action(
"INV", _(
"Show inventory"));
1727 act->setKeyEvent(
KeyState(KEYCODE_i,
'i'));
1733 act =
new Action(kStandardActionMoveUp, _(
"Scroll up"));
1734 act->setMouseWheelUpEvent();
1740 act =
new Action(kStandardActionMoveDown, _(
"Scroll down"));
1741 act->setMouseWheelDownEvent();
1746 }
else if (gameId ==
"ritter") {
1747 act =
new Action(
"HINT", _(
"Show hints"));
1748 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
1754 act =
new Action(kStandardActionSkip, _(
"Skip"));
1755 act->setKeyEvent(
KeyState(KEYCODE_BACKSPACE, ASCII_BACKSPACE));
1759 }
else if (gameId ==
"shaban") {
1760 act =
new Action(
"MAP", _(
"Show map"));
1761 act->setKeyEvent(
KeyState(KEYCODE_m,
'm'));
1766 }
else if (gameId ==
"sof1" ||
1769 act =
new Action(
"ZOOMOT", _(
"Zoom out"));
1770 act->setMouseWheelUpEvent();
1776 act =
new Action(
"ZOOMIN", _(
"Zoom in"));
1777 act->setMouseWheelDownEvent();
1783 act =
new Action(
"MAP", _(
"Show map"));
1784 act->setKeyEvent(
KeyState(KEYCODE_m,
'm'));
1789 act =
new Action(
"JRNL", _(
"Show journal"));
1790 act->setKeyEvent(
KeyState(KEYCODE_n,
'n'));
1794 }
else if (gameId ==
"sotv1") {
1795 act =
new Action(
"HINT", _(
"Show hints"));
1796 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
1802 act =
new Action(
"MAP", _(
"Show map"));
1803 act->setKeyEvent(
KeyState(KEYCODE_m,
'm'));
1808 act =
new Action(
"ACTNXT", _(
"Next action"));
1809 act->setMouseWheelDownEvent();
1815 act =
new Action(
"ACTPRV", _(
"Previous action"));
1816 act->setMouseWheelUpEvent();
1822 act =
new Action(kStandardActionEE, _(
"???"));
1823 act->setMiddleClickEvent();
1827 }
else if (gameId ==
"sotv2") {
1828 act =
new Action(
"HINT", _(
"Show hints"));
1829 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
1835 act =
new Action(
"MAP", _(
"Show map"));
1836 act->setKeyEvent(
KeyState(KEYCODE_m,
'm'));
1841 act =
new Action(
"ACTNXT", _(
"Next action"));
1842 act->setMouseWheelDownEvent();
1848 act =
new Action(
"ACTPRV", _(
"Previous action"));
1849 act->setMouseWheelUpEvent();
1855 act =
new Action(
"PHONE1", _(
"Phone 1 button"));
1856 act->setKeyEvent(
KeyState(KEYCODE_1,
'1'));
1860 act =
new Action(
"PHONE2", _(
"Phone 2 button"));
1861 act->setKeyEvent(
KeyState(KEYCODE_2,
'2'));
1865 act =
new Action(
"PHONE3", _(
"Phone 3 button"));
1866 act->setKeyEvent(
KeyState(KEYCODE_3,
'3'));
1871 act =
new Action(
"DBGTXT", _(
"Debug print"));
1872 act->setKeyEvent(KEYCODE_F6);
1876 act =
new Action(kStandardActionEE, _(
"???"));
1877 act->setMiddleClickEvent();
1881 }
else if (gameId ==
"tib") {
1882 act =
new Action(
"SCRS", _(
"Save screenshot"));
1883 act->setKeyEvent(KEYCODE_F9);
1886 }
else if (gameId ==
"thelastcrownmh") {
1887 act =
new Action(
"EXIT", _(
"Exit"));
1888 act->setKeyEvent(KEYCODE_F1);
1893 act =
new Action(
"DBGSCN", _(
"Show scene geometry"));
1894 act->setKeyEvent(KEYCODE_F2);
1900 act =
new Action(
"SCRS", _(
"Save screenshot"));
1901 act->setKeyEvent(KEYCODE_F3);
1905 act =
new Action(kStandardActionOpenSettings, _(
"Settings"));
1906 act->setKeyEvent(KEYCODE_F4);
1910 act =
new Action(
"NOWAIT", _(
"Cancel waiting"));
1911 act->setKeyEvent(KEYCODE_F5);
1916 act =
new Action(
"DBGTXT", _(
"Debug print"));
1917 act->setKeyEvent(KEYCODE_F6);
1922 act =
new Action(
"DBGBEZ", _(
"Bezier window"));
1923 act->setKeyEvent(KEYCODE_F7);
1926 }
else if (gameId ==
"thelostcrowngha") {
1927 act =
new Action(kStandardActionEE, _(
"???"));
1928 act->setKeyEvent(KEYCODE_F1);
1933 act =
new Action(
"SCRS", _(
"Save screenshot"));
1934 act->setKeyEvent(KEYCODE_F3);
1937 }
else if (gameId ==
"twc") {
1939 act =
new Action(
"ALTUSE", _(
"Droid's action"));
1940 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
1946 act =
new Action(kStandardActionMoveLeft, _(
"Left"));
1947 act->setKeyEvent(KEYCODE_LEFT);
1952 act =
new Action(kStandardActionMoveRight, _(
"Right"));
1953 act->setKeyEvent(KEYCODE_RIGHT);
1958 act =
new Action(kStandardActionMoveUp, _(
"Up"));
1959 act->setKeyEvent(KEYCODE_UP);
1964 act =
new Action(kStandardActionMoveDown, _(
"Down"));
1965 act->setKeyEvent(KEYCODE_DOWN);
1970 act =
new Action(
"GUIA", _(
"GUI variant A"));
1971 act->setKeyEvent(KEYCODE_F10);
1976 act =
new Action(
"GUIB", _(
"GUI variant B"));
1977 act->setKeyEvent(KEYCODE_F11);
1982 act =
new Action(kStandardActionEE, _(
"???"));
1983 act->setKeyEvent(KEYCODE_HOME);
1987 }
else if (gameId ==
"vsevolod") {
1988 act =
new Action(
"INV", _(
"Show inventory"));
1989 act->setKeyEvent(
KeyState(KEYCODE_i,
'i'));
1995 act =
new Action(
"JRNL", _(
"Show journal"));
1996 act->setKeyEvent(
KeyState(KEYCODE_j,
'j'));
2001 act =
new Action(kStandardActionOpenSettings, _(
"Settings"));
2002 act->setKeyEvent(
KeyState(KEYCODE_m,
'm'));
2007 act =
new Action(
"SCRLUP", _(
"Scroll up"));
2008 act->setMouseWheelUpEvent();
2014 act =
new Action(
"SCRLDN", _(
"Scroll down"));
2015 act->setMouseWheelDownEvent();
2020 }
else if (gameId ==
"wayoflove") {
2021 act =
new Action(
"HINT", _(
"Show hints"));
2022 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
2028 act =
new Action(
"GUIA", _(
"GUI variant A"));
2029 act->setKeyEvent(KEYCODE_F10);
2034 act =
new Action(
"GUIB", _(
"GUI variant B"));
2035 act->setKeyEvent(KEYCODE_F11);
2040 act =
new Action(kStandardActionEE, _(
"???"));
2041 act->setKeyEvent(KEYCODE_HOME);
2045 }
else if (gameId ==
"wtetris") {
2047 act =
new Action(
"ROTATE", _(
"Rotate"));
2048 act->setKeyEvent(KEYCODE_UP);
2056 act =
new Action(kStandardActionMoveLeft, _(
"Left"));
2057 act->setKeyEvent(KEYCODE_LEFT);
2064 act =
new Action(kStandardActionMoveRight, _(
"Right"));
2065 act->setKeyEvent(KEYCODE_RIGHT);
2073 act =
new Action(
"DROP", _(
"Drop"));
2074 act->setKeyEvent(KEYCODE_DOWN);
2080 }
else if (gameId ==
"zilm") {
2081 act =
new Action(
"P1UP", _(
"Player 1: Up"));
2082 act->setKeyEvent(
KeyState(KEYCODE_w,
'w'));
2086 act =
new Action(
"P1LT", _(
"Player 1: Left"));
2087 act->setKeyEvent(
KeyState(KEYCODE_a,
'a'));
2091 act =
new Action(
"P1DN", _(
"Player 1: Down"));
2092 act->setKeyEvent(
KeyState(KEYCODE_s,
's'));
2096 act =
new Action(
"P1RT", _(
"Player 1: Right"));
2097 act->setKeyEvent(
KeyState(KEYCODE_d,
'd'));
2101 act =
new Action(
"P2UP", _(
"Player 2: Up"));
2102 act->setKeyEvent(KEYCODE_UP);
2106 act =
new Action(
"P2LT", _(
"Player 2: Left"));
2107 act->setKeyEvent(KEYCODE_LEFT);
2111 act =
new Action(
"P2DN", _(
"Player 2: Down"));
2112 act->setKeyEvent(KEYCODE_DOWN);
2116 act =
new Action(
"P2RT", _(
"Player 2: Right"));
2117 act->setKeyEvent(KEYCODE_RIGHT);
2122 act =
new Action(
"DBGFPS", _(
"Debug FPS"));
2123 act->setKeyEvent(KEYCODE_F2);
2126 }
else if (gameId ==
"zbang") {
2127 act =
new Action(
"ACTNXT", _(
"Next action"));
2128 act->setMouseWheelUpEvent();
2135 act =
new Action(
"ACTPRV", _(
"Previous action"));
2136 act->setMouseWheelDownEvent();
2141 act =
new Action(
"HINT", _(
"Show hints"));
2142 act->setKeyEvent(
KeyState(KEYCODE_TAB, ASCII_TAB));
2148 act =
new Action(kStandardActionSkip, _(
"Skip"));
2149 act->setKeyEvent(
KeyState(KEYCODE_PERIOD,
'.'));
2154 act =
new Action(kStandardActionMoveUp, _(
"Move forward"));
2155 act->setKeyEvent(KEYCODE_UP);
2160 act =
new Action(kStandardActionMoveLeft, _(
"Turn left"));
2161 act->setKeyEvent(KEYCODE_LEFT);
2166 act =
new Action(kStandardActionMoveRight, _(
"Turn right"));
2167 act->setKeyEvent(KEYCODE_RIGHT);
2171 }
else if (gameId ==
"barbapoca2") {
2172 act =
new Action(
"HINT", _(
"Show hints"));
2173 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
2178 }
else if (gameId ==
"tetriks") {
2179 act =
new Action(
"SPACE", _(
"Space"));
2180 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
2185 act =
new Action(kStandardActionMoveLeft, _(
"Left"));
2186 act->setKeyEvent(KEYCODE_LEFT);
2191 act =
new Action(kStandardActionMoveRight, _(
"Right"));
2192 act->setKeyEvent(KEYCODE_RIGHT);
2197 act =
new Action(kStandardActionMoveUp, _(
"Up"));
2198 act->setKeyEvent(KEYCODE_UP);
2203 act =
new Action(kStandardActionMoveDown, _(
"Down"));
2204 act->setKeyEvent(KEYCODE_DOWN);
2208 }
else if (gameId ==
"sunny") {
2209 act =
new Action(
"SPACE", _(
"Space"));
2210 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
2214 act =
new Action(
"KP_MINUS", _(
"???"));
2215 act->setKeyEvent(
KeyState(KEYCODE_KP_MINUS));
2218 }
else if (gameId ==
"todaymama") {
2219 act =
new Action(
"SPACE", _(
"Space"));
2220 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
2225 warning(
"Autogenerated keymap for unknown WME game, id '%s', target '%s'", gameId.c_str(), target);
2227 act =
new Action(
"SPACE", _(
"Space"));
2228 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
2233 act =
new Action(kStandardActionMoveLeft, _(
"Left"));
2234 act->setKeyEvent(KEYCODE_LEFT);
2239 act =
new Action(kStandardActionMoveRight, _(
"Right"));
2240 act->setKeyEvent(KEYCODE_RIGHT);
2245 act =
new Action(kStandardActionMoveUp, _(
"Up"));
2246 act->setKeyEvent(KEYCODE_UP);
2251 act =
new Action(kStandardActionMoveDown, _(
"Down"));
2252 act->setKeyEvent(KEYCODE_DOWN);
2257 act =
new Action(kStandardActionMiddleClick, _(
"Middle click"));
2258 act->setMiddleClickEvent();
2262 act =
new Action(
"SCRLUP", _(
"Scroll up"));
2263 act->setMouseWheelUpEvent();
2267 act =
new Action(
"SCRLDN", _(
"Scroll down"));
2268 act->setMouseWheelDownEvent();
2272 act =
new Action(
"KEYF1", _(
"F1"));
2273 act->setKeyEvent(KEYCODE_F1);
2277 act =
new Action(
"KEYI", _(
"Key i"));
2278 act->setKeyEvent(
KeyState(KEYCODE_i,
'i'));
2282 act =
new Action(
"TAB", _(
"Tab"));
2283 act->setKeyEvent(
KeyState(KEYCODE_TAB, ASCII_TAB));
2290 if (gameId ==
"carolreed4" ||
2291 gameId ==
"carolreed5" ||
2292 gameId ==
"carolreed6" ||
2293 gameId ==
"carolreed7" ||
2294 gameId ==
"carolreed8" ||
2295 gameId ==
"carolreed9" ||
2296 gameId ==
"carolreed10" ||
2297 gameId ==
"carolreed11" ||
2298 gameId ==
"carolreed12" ||
2299 gameId ==
"carolreed13" ||
2300 gameId ==
"carolreed14" ||
2301 gameId ==
"carolreed15" ||
2302 gameId ==
"carolreed16" ||
2303 gameId ==
"corrosion" ||
2304 gameId ==
"rebeccacarlson1" ||
2305 gameId ==
"rhiannon"
2307 act =
new Action(kStandardActionMoveUp, _(
"Move forward"));
2308 act->setCustomEngineActionEvent(kClickAtEntityNearestToCenter);
2314 act =
new Action(kStandardActionMoveLeft, _(
"Turn left"));
2315 act->setCustomEngineActionEvent(kClickAtLeft);
2321 act =
new Action(kStandardActionMoveRight, _(
"Turn right"));
2322 act->setCustomEngineActionEvent(kClickAtRight);
2328 if (gameId !=
"rhiannon") {
2329 act =
new Action(kStandardActionMoveDown, _(
"Move backwards"));
2330 act->setCustomEngineActionEvent(kClickAtBottom);
void push_back(const T &element)
Definition: array.h:181
void addAction(Action *action)
void warning(MSVC_PRINTF const char *s,...) GCC_PRINTF(1
Definition: algorithm.h:29
A set of well known keymapper actions.
void addDefaultInputMapping(const String &hwId)
Definition: keyboard.h:294