22 #include "backends/keymapper/action.h" 23 #include "backends/keymapper/keymapper.h" 26 #include "engines/wintermute/base/base_game_custom_actions.h" 28 #include "common/translation.h" 36 Keymap *engineKeyMap =
new Keymap(Keymap::kKeymapTypeGame,
"wintermute",
"Wintermute engine");
37 Keymap *gameKeyMap =
new Keymap(Keymap::kKeymapTypeGame, gameId, gameDescr);
38 Keymap *extraKeyMap =
new Keymap(Keymap::kKeymapTypeGame,
"extras",
"ScummVM extra actions");
42 act =
new Action(kStandardActionLeftClick, _(
"Left Click"));
43 act->setLeftClickEvent();
48 act =
new Action(kStandardActionRightClick, _(
"Right Click"));
49 act->setRightClickEvent();
54 act =
new Action(
"RETURN", _(
"Confirm"));
55 act->setKeyEvent(
KeyState(KEYCODE_RETURN, ASCII_RETURN));
60 act =
new Action(
"ESCAPE", _(
"Escape"));
61 act->setKeyEvent(
KeyState(KEYCODE_ESCAPE, ASCII_ESCAPE));
67 if (gameId ==
"8squares" ||
68 gameId ==
"actualdest" ||
69 gameId ==
"artofmurder1" ||
70 gameId ==
"agustin" ||
71 gameId ==
"barrowhilldp" ||
72 gameId ==
"bickadoodle" ||
73 gameId ==
"bthreshold" ||
74 gameId ==
"carolreed6" ||
75 gameId ==
"carolreed7" ||
76 gameId ==
"carolreed8" ||
77 gameId ==
"colorsoncanvas" ||
78 gameId ==
"conspiracao" ||
79 gameId ==
"corrosion" ||
80 gameId ==
"deadcity" ||
81 gameId ==
"darkfallls" ||
82 gameId ==
"drbohus" ||
83 gameId ==
"dreaming" ||
84 gameId ==
"dreamscape" ||
85 gameId ==
"driller" ||
86 gameId ==
"everydaygray" ||
87 gameId ==
"findinghope" ||
92 gameId ==
"idiotstale" ||
93 gameId ==
"imustkill" ||
94 gameId ==
"juliauntold" ||
95 gameId ==
"lifein3minutes" ||
96 gameId ==
"lonelyrobot" ||
97 gameId ==
"machumayu" ||
99 gameId ==
"miskatonic1" ||
100 gameId ==
"nighttrain" ||
101 gameId ==
"projectdoom" ||
102 gameId ==
"rosemary" ||
103 gameId ==
"satanandsons" ||
104 gameId ==
"sofiasdebt" ||
105 gameId ==
"spaceinvaders" ||
106 gameId ==
"spacemadness" ||
107 gameId ==
"strangechange" ||
108 gameId ==
"tanya1" ||
109 gameId ==
"tanya2" ||
110 gameId ==
"theancientmark1" ||
111 gameId ==
"thebox" ||
112 gameId ==
"thekite" ||
113 gameId ==
"tradestory" ||
118 }
else if (gameId ==
"dfafadventure" ||
119 gameId ==
"dreamcat" ||
120 gameId ==
"openquest" 122 act =
new Action(
"LOOK", _(
"Look at"));
123 act->setKeyEvent(
KeyState(KEYCODE_l,
'l'));
128 act =
new Action(
"TALK", _(
"Talk to"));
129 act->setKeyEvent(
KeyState(KEYCODE_t,
't'));
134 act =
new Action(
"PICK", _(
"Pick up"));
135 act->setKeyEvent(
KeyState(KEYCODE_p,
'p'));
140 act =
new Action(
"USE", _(
"Use"));
141 act->setKeyEvent(
KeyState(KEYCODE_u,
'u'));
145 }
else if (gameId ==
"basisoctavus" ||
146 gameId ==
"lovmamuta" ||
147 gameId ==
"wmedemo3d" 149 act =
new Action(kStandardActionMoveUp, _(
"Move Forward"));
150 act->setKeyEvent(KEYCODE_UP);
155 act =
new Action(kStandardActionMoveDown, _(
"Move Backwards"));
156 act->setKeyEvent(KEYCODE_DOWN);
161 act =
new Action(kStandardActionMoveLeft, _(
"Turn left"));
162 act->setKeyEvent(KEYCODE_LEFT);
167 act =
new Action(kStandardActionMoveRight, _(
"Turn right"));
168 act->setKeyEvent(KEYCODE_RIGHT);
174 act =
new Action(
"DBGSCN", _(
"Show scene geometry"));
175 act->setKeyEvent(KEYCODE_F1);
180 }
else if (gameId ==
"5ld" ||
181 gameId ==
"projectjoe" 183 act =
new Action(
"PAGEUP", _(
"Previous page"));
184 act->setKeyEvent(KEYCODE_PAGEUP);
190 act =
new Action(
"PAGEDN", _(
"Next page"));
191 act->setKeyEvent(KEYCODE_PAGEDOWN);
196 }
else if (gameId ==
"5ma" ||
197 gameId ==
"dirtysplit" 199 act =
new Action(
"PAGEUP", _(
"Previous page"));
200 act->setKeyEvent(KEYCODE_PAGEUP);
207 act =
new Action(
"PAGEDN", _(
"Next page"));
208 act->setKeyEvent(KEYCODE_PAGEDOWN);
214 }
else if (gameId ==
"chivalry" ||
215 gameId ==
"paintaria" ||
216 gameId ==
"pigeons" ||
217 gameId ==
"rhiannon" ||
218 gameId ==
"shinestar" 220 act =
new Action(kStandardActionSkip, _(
"Skip"));
221 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
226 }
else if (gameId ==
"drdoylemotch" ||
227 gameId ==
"carolreed9" ||
228 gameId ==
"carolreed10" ||
229 gameId ==
"carolreed11" ||
230 gameId ==
"carolreed12" ||
231 gameId ==
"carolreed13" ||
232 gameId ==
"carolreed14" ||
233 gameId ==
"carolreed15" ||
234 gameId ==
"carolreed16" ||
235 gameId ==
"kulivocko" ||
236 gameId ==
"sunrise" ||
237 gameId ==
"rebeccacarlson1" 239 act =
new Action(
"HINT", _(
"Show hints"));
240 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
245 }
else if (gameId ==
"goldencalf" ||
249 act =
new Action(
"INV", _(
"Show inventory"));
250 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
255 }
else if (gameId ==
"bookofgron") {
256 act =
new Action(kStandardActionMiddleClick, _(
"Middle Click"));
257 act->setMiddleClickEvent();
261 }
else if (gameId ==
"qajarycat") {
262 act =
new Action(
"HINT", _(
"Show hints"));
263 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
269 act =
new Action(
"GUIA", _(
"GUI variant A"));
270 act->setKeyEvent(KEYCODE_F10);
276 act =
new Action(
"GUIB", _(
"GUI variant B"));
277 act->setKeyEvent(KEYCODE_F11);
283 act =
new Action(
"PHONEX", _(
"Phone cancel button"));
284 act->setKeyEvent(
KeyState(KEYCODE_BACKSPACE, ASCII_BACKSPACE));
288 act =
new Action(
"PHONEU", _(
"Phone up button"));
289 act->setKeyEvent(KEYCODE_UP);
294 act =
new Action(
"PHONED", _(
"Phone down button"));
295 act->setKeyEvent(KEYCODE_DOWN);
300 act =
new Action(kStandardActionMiddleClick, _(
"Middle Click"));
301 act->setMiddleClickEvent();
305 act =
new Action(kStandardActionEE, _(
"???"));
306 act->setKeyEvent(KEYCODE_HOME);
310 }
else if (gameId ==
"forgottensound1" ||
311 gameId ==
"forgottensound2" 313 act =
new Action(
"HINT", _(
"Show hints"));
314 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
320 act =
new Action(kStandardActionMoveLeft, _(
"Left"));
321 act->setKeyEvent(KEYCODE_LEFT);
326 act =
new Action(kStandardActionMoveRight, _(
"Right"));
327 act->setKeyEvent(KEYCODE_RIGHT);
332 act =
new Action(
"GUIA", _(
"GUI variant A"));
333 act->setKeyEvent(KEYCODE_F10);
339 act =
new Action(
"GUIB", _(
"GUI variant B"));
340 act->setKeyEvent(KEYCODE_F11);
346 act =
new Action(kStandardActionEE, _(
"???"));
347 act->setKeyEvent(KEYCODE_HOME);
351 }
else if (gameId ==
"tehran1933") {
352 act =
new Action(
"HINT", _(
"Show hints"));
353 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
360 act =
new Action(
"ALTUSE", _(
"Alternative action"));
361 act->setMiddleClickEvent();
367 act =
new Action(
"GUIA", _(
"GUI variant A"));
368 act->setKeyEvent(KEYCODE_F10);
374 act =
new Action(
"GUIB", _(
"GUI variant B"));
375 act->setKeyEvent(KEYCODE_F11);
381 act =
new Action(kStandardActionEE, _(
"???"));
382 act->setKeyEvent(KEYCODE_HOME);
386 }
else if (gameId ==
"darksummer" ||
387 gameId ==
"tehran2016" 389 act =
new Action(
"HINT", _(
"Show hints"));
390 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
396 act =
new Action(
"INV", _(
"Show inventory"));
397 act->setKeyEvent(
KeyState(KEYCODE_i,
'i'));
402 act =
new Action(
"GUIA", _(
"GUI variant A"));
403 act->setKeyEvent(KEYCODE_F10);
408 act =
new Action(
"GUIB", _(
"GUI variant B"));
409 act->setKeyEvent(KEYCODE_F11);
414 act =
new Action(
"PHONEX", _(
"Phone cancel button"));
415 act->setKeyEvent(
KeyState(KEYCODE_BACKSPACE, ASCII_BACKSPACE));
419 act =
new Action(
"PHONEU", _(
"Phone up button"));
420 act->setKeyEvent(KEYCODE_UP);
425 act =
new Action(
"PHONED", _(
"Phone down button"));
426 act->setKeyEvent(KEYCODE_DOWN);
431 act =
new Action(
"PHONE0", _(
"Phone 0 button"));
432 act->setKeyEvent(
KeyState(KEYCODE_0,
'0'));
436 act =
new Action(
"PHONE1", _(
"Phone 1 button"));
437 act->setKeyEvent(
KeyState(KEYCODE_1,
'1'));
441 act =
new Action(
"PHONE2", _(
"Phone 2 button"));
442 act->setKeyEvent(
KeyState(KEYCODE_2,
'2'));
446 act =
new Action(
"PHONE3", _(
"Phone 3 button"));
447 act->setKeyEvent(
KeyState(KEYCODE_3,
'3'));
451 act =
new Action(
"PHONE4", _(
"Phone 4 button"));
452 act->setKeyEvent(
KeyState(KEYCODE_4,
'4'));
456 act =
new Action(
"PHONE5", _(
"Phone 5 button"));
457 act->setKeyEvent(
KeyState(KEYCODE_5,
'5'));
461 act =
new Action(
"PHONE6", _(
"Phone 6 button"));
462 act->setKeyEvent(
KeyState(KEYCODE_6,
'6'));
466 act =
new Action(
"PHONE7", _(
"Phone 7 button"));
467 act->setKeyEvent(
KeyState(KEYCODE_7,
'7'));
471 act =
new Action(
"PHONE8", _(
"Phone 8 button"));
472 act->setKeyEvent(
KeyState(KEYCODE_8,
'8'));
476 act =
new Action(
"PHONE9", _(
"Phone 9 button"));
477 act->setKeyEvent(
KeyState(KEYCODE_9,
'9'));
481 act =
new Action(
"PHONEA", _(
"Phone * button"));
482 act->setKeyEvent(
KeyState(KEYCODE_ASTERISK,
'*'));
486 act =
new Action(
"PHONEH", _(
"Phone # button"));
487 act->setKeyEvent(
KeyState(KEYCODE_HASH,
'#'));
491 act =
new Action(kStandardActionEE, _(
"???"));
492 act->setKeyEvent(KEYCODE_HOME);
496 }
else if (gameId ==
"alimardan1" ||
497 gameId ==
"devilincapital" 499 act =
new Action(
"HINT", _(
"Show hints"));
500 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
506 act =
new Action(
"GUIA", _(
"GUI variant A"));
507 act->setKeyEvent(KEYCODE_F10);
513 act =
new Action(
"GUIB", _(
"GUI variant B"));
514 act->setKeyEvent(KEYCODE_F11);
520 act =
new Action(kStandardActionEE, _(
"???"));
521 act->setKeyEvent(KEYCODE_HOME);
525 }
else if (gameId ==
"alimardan2") {
526 act =
new Action(
"HINT", _(
"Show hints"));
527 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
533 act =
new Action(
"GUIA", _(
"GUI variant A"));
534 act->setKeyEvent(KEYCODE_F10);
540 act =
new Action(
"GUIB", _(
"GUI variant B"));
541 act->setKeyEvent(KEYCODE_F11);
547 act =
new Action(
"PHONEX", _(
"Phone cancel button"));
548 act->setKeyEvent(
KeyState(KEYCODE_BACKSPACE, ASCII_BACKSPACE));
552 act =
new Action(
"PHONEU", _(
"Phone up button"));
553 act->setKeyEvent(KEYCODE_UP);
558 act =
new Action(
"PHONED", _(
"Phone down button"));
559 act->setKeyEvent(KEYCODE_DOWN);
564 act =
new Action(
"PHONE0", _(
"Phone 0 button"));
565 act->setKeyEvent(
KeyState(KEYCODE_0,
'0'));
569 act =
new Action(
"PHONE1", _(
"Phone 1 button"));
570 act->setKeyEvent(
KeyState(KEYCODE_1,
'1'));
574 act =
new Action(
"PHONE2", _(
"Phone 2 button"));
575 act->setKeyEvent(
KeyState(KEYCODE_2,
'2'));
579 act =
new Action(
"PHONE3", _(
"Phone 3 button"));
580 act->setKeyEvent(
KeyState(KEYCODE_3,
'3'));
584 act =
new Action(
"PHONE4", _(
"Phone 4 button"));
585 act->setKeyEvent(
KeyState(KEYCODE_4,
'4'));
589 act =
new Action(
"PHONE5", _(
"Phone 5 button"));
590 act->setKeyEvent(
KeyState(KEYCODE_5,
'5'));
594 act =
new Action(
"PHONE6", _(
"Phone 6 button"));
595 act->setKeyEvent(
KeyState(KEYCODE_6,
'6'));
599 act =
new Action(
"PHONE7", _(
"Phone 7 button"));
600 act->setKeyEvent(
KeyState(KEYCODE_7,
'7'));
604 act =
new Action(
"PHONE8", _(
"Phone 8 button"));
605 act->setKeyEvent(
KeyState(KEYCODE_8,
'8'));
609 act =
new Action(
"PHONE9", _(
"Phone 9 button"));
610 act->setKeyEvent(
KeyState(KEYCODE_9,
'9'));
614 act =
new Action(
"PHONEA", _(
"Phone * button"));
615 act->setKeyEvent(
KeyState(KEYCODE_ASTERISK,
'*'));
619 act =
new Action(
"PHONEH", _(
"Phone # button"));
620 act->setKeyEvent(
KeyState(KEYCODE_HASH,
'#'));
624 act =
new Action(kStandardActionEE, _(
"???"));
625 act->setKeyEvent(KEYCODE_HOME);
629 }
else if (gameId ==
"alavi") {
630 act =
new Action(
"PAGEUP", _(
"Previous page"));
631 act->setKeyEvent(KEYCODE_PAGEUP);
638 act =
new Action(
"PAGEDN", _(
"Next page"));
639 act->setKeyEvent(KEYCODE_PAGEDOWN);
646 act =
new Action(
"SCRS", _(
"Save screenshot"));
647 act->setKeyEvent(KEYCODE_F6);
650 }
else if (gameId ==
"alphapolaris") {
651 act =
new Action(
"HINT", _(
"Show hints"));
652 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
658 act =
new Action(
"INV", _(
"Show inventory"));
659 act->setKeyEvent(
KeyState(KEYCODE_i,
'i'));
664 act =
new Action(
"HELP", _(
"Show help"));
665 act->setKeyEvent(KEYCODE_F1);
670 act =
new Action(
"SCRLUP", _(
"Scroll up"));
671 act->setMouseWheelUpEvent();
677 act =
new Action(
"SCRLDN", _(
"Scroll down"));
678 act->setMouseWheelDownEvent();
685 act =
new Action(
"DBGSCN", _(
"Show scene geometry"));
686 act->setKeyEvent(
KeyState(KEYCODE_F2, 0, KBD_CTRL));
690 act =
new Action(
"SHADOW", _(
"Change shadow type"));
691 act->setKeyEvent(
KeyState(KEYCODE_F3, 0, KBD_CTRL));
695 act =
new Action(
"SCRS", _(
"Save screenshot"));
696 act->setKeyEvent(
KeyState(KEYCODE_F5, 0, KBD_CTRL));
700 act =
new Action(
"VOLMAX", _(
"Volume max"));
701 act->setKeyEvent(
KeyState(KEYCODE_F6, 0, KBD_CTRL));
706 act =
new Action(
"DBGCLI", _(
"Show debug parser"));
707 act->setKeyEvent(
KeyState(KEYCODE_F7, 0, KBD_CTRL));
714 act =
new Action(
"DBGTXT", _(
"Debug print"));
715 act->setKeyEvent(
KeyState(KEYCODE_F8, 0, KBD_CTRL));
720 act =
new Action(
"EXIT", _(
"Exit"));
721 act->setKeyEvent(
KeyState(KEYCODE_F9, 0, KBD_CTRL));
726 act =
new Action(
"LIGHT", _(
"Light helper window"));
727 act->setKeyEvent(
KeyState(KEYCODE_F11, 0, KBD_CTRL));
731 act =
new Action(kStandardActionMoveUp, _(
"Move Forward"));
732 act->setKeyEvent(KEYCODE_UP);
736 act =
new Action(kStandardActionMoveDown, _(
"Move Backwards"));
737 act->setKeyEvent(KEYCODE_DOWN);
741 act =
new Action(kStandardActionMoveLeft, _(
"Turn left"));
742 act->setKeyEvent(KEYCODE_LEFT);
746 act =
new Action(kStandardActionMoveRight, _(
"Turn right"));
747 act->setKeyEvent(KEYCODE_RIGHT);
751 act =
new Action(
"FASTU", _(
"Run forward"));
752 act->setKeyEvent(
KeyState(KEYCODE_UP, 0, KBD_SHIFT));
756 act =
new Action(
"FASTD", _(
"Run backward"));
757 act->setKeyEvent(
KeyState(KEYCODE_DOWN, 0, KBD_SHIFT));
761 act =
new Action(
"FASTL", _(
"Turn left fast"));
762 act->setKeyEvent(
KeyState(KEYCODE_LEFT, 0, KBD_SHIFT));
766 act =
new Action(
"FASTR", _(
"Turn right fast"));
767 act->setKeyEvent(
KeyState(KEYCODE_RIGHT, 0, KBD_SHIFT));
770 }
else if (gameId ==
"apeiron") {
772 act =
new Action(
"BLUE", _(
"Show blueprint"));
773 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
779 act =
new Action(kStandardActionEE, _(
"???"));
780 act->setKeyEvent(
KeyState(KEYCODE_n,
'n'));
784 }
else if (gameId ==
"awakening") {
785 act =
new Action(
"HINT", _(
"Show hints"));
786 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
792 act =
new Action(
"ACTNXT", _(
"Next action"));
793 act->setMouseWheelDownEvent();
799 act =
new Action(
"ACTPRV", _(
"Previous action"));
800 act->setMouseWheelUpEvent();
806 act =
new Action(kStandardActionEE, _(
"???"));
807 act->setKeyEvent(KEYCODE_END);
811 }
else if (gameId ==
"carolreed4") {
812 act =
new Action(
"HINT", _(
"Show hints"));
813 act->setKeyEvent(
KeyState(KEYCODE_TAB, ASCII_TAB));
819 act =
new Action(
"VOLMAX", _(
"Volume max"));
820 act->setMouseWheelUpEvent();
826 act =
new Action(
"VOLOFF", _(
"Volume off"));
827 act->setMouseWheelDownEvent();
832 }
else if (gameId ==
"carolreed5") {
833 act =
new Action(
"HINT", _(
"Show hints"));
834 act->setKeyEvent(
KeyState(KEYCODE_TAB, ASCII_TAB));
839 }
else if (gameId ==
"erinmyers") {
840 act =
new Action(
"GUIB", _(
"Change font size"));
841 act->setKeyEvent(KEYCODE_END);
845 }
else if (gameId ==
"escapemansion") {
846 act =
new Action(kStandardActionEE, _(
"???"));
847 act->setKeyEvent(KEYCODE_F1);
853 act =
new Action(
"DBGTXT", _(
"Debug print"));
854 act->setKeyEvent(KEYCODE_F2);
857 }
else if (gameId ==
"facenoir") {
858 act =
new Action(
"HINT", _(
"Show hints"));
859 act->setKeyEvent(KEYCODE_F1);
864 act =
new Action(
"INV", _(
"Show inventory"));
865 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
871 act =
new Action(
"SCRLUP", _(
"Scroll up"));
872 act->setMouseWheelUpEvent();
878 act =
new Action(
"SCRLDN", _(
"Scroll down"));
879 act->setMouseWheelDownEvent();
884 }
else if (gameId ==
"foxtail") {
885 act =
new Action(
"HINT", _(
"Show hints"));
886 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
892 act =
new Action(
"SCRLUP", _(
"Scroll up"));
893 act->setMouseWheelUpEvent();
899 act =
new Action(
"SCRLDN", _(
"Scroll down"));
900 act->setMouseWheelDownEvent();
906 act =
new Action(
"PAGEUP", _(
"Previous page"));
907 act->setKeyEvent(KEYCODE_PAGEUP);
913 act =
new Action(
"PAGEDN", _(
"Next page"));
914 act->setKeyEvent(KEYCODE_PAGEDOWN);
920 act =
new Action(kStandardActionSave, _(
"Save game"));
921 act->setKeyEvent(KEYCODE_F2);
925 act =
new Action(kStandardActionLoad, _(
"Load game"));
926 act->setKeyEvent(KEYCODE_F3);
930 act =
new Action(
"QSAVE", _(
"Quick save"));
931 act->setKeyEvent(KEYCODE_F5);
935 act =
new Action(
"SPD1", _(
"Walking speed: Low"));
936 act->setKeyEvent(KEYCODE_F6);
940 act =
new Action(
"SPD2", _(
"Walking speed: Medium"));
941 act->setKeyEvent(KEYCODE_F7);
945 act =
new Action(
"SPD3", _(
"Walking speed: High"));
946 act->setKeyEvent(KEYCODE_F8);
950 act =
new Action(
"QLOAD", _(
"Quick load"));
951 act->setKeyEvent(KEYCODE_F9);
955 act =
new Action(
"NOWAIT", _(
"Cancel waiting"));
956 act->setKeyEvent(KEYCODE_F10);
960 act =
new Action(
"CAPT", _(
"Toggle mouse capture"));
961 act->setKeyEvent(KEYCODE_F11);
965 act =
new Action(
"HOME", _(
"First page"));
966 act->setKeyEvent(KEYCODE_HOME);
970 act =
new Action(
"END", _(
"Last page"));
971 act->setKeyEvent(KEYCODE_END);
976 if (extra.hasPrefix(
"1.2.230.") || extra.hasPrefix(
"1.2.304.") || extra.hasPrefix(
"1.2.362.")) {
978 act =
new Action(
"SPDMAX", _(
"Walking speed: Ultra Super Mega Fast"));
979 act->setKeyEvent(
KeyState(KEYCODE_s,
's', KBD_CTRL|KBD_ALT|KBD_SHIFT));
985 if (extra.hasPrefix(
"1.2.362.")) {
986 act =
new Action(kStandardActionEE, _(
"???"));
987 act->setKeyEvent(
KeyState(KEYCODE_z,
'z'));
993 if (extra.hasPrefix(
"1.2.896.")) {
994 act =
new Action(
"CREDIT", _(
"Show game credits"));
995 act->setKeyEvent(KEYCODE_F1);
999 act =
new Action(
"MPLAY", _(
"Play selected music record"));
1000 act->setKeyEvent(KEYCODE_F4);
1004 act =
new Action(
"MNEXT", _(
"Select next music record"));
1005 act->setKeyEvent(
KeyState(KEYCODE_TAB, ASCII_TAB));
1009 act =
new Action(
"NOTE1", _(
"Play note 1: A"));
1010 act->setKeyEvent(
KeyState(KEYCODE_d,
'd'));
1014 act =
new Action(
"NOTE2", _(
"Play note 2: F#"));
1015 act->setKeyEvent(
KeyState(KEYCODE_f,
'f'));
1019 act =
new Action(
"NOTE3", _(
"Play note 3: D#"));
1020 act->setKeyEvent(
KeyState(KEYCODE_g,
'g'));
1024 act =
new Action(
"NOTE4", _(
"Play note 4: C#"));
1025 act->setKeyEvent(
KeyState(KEYCODE_h,
'h'));
1029 act =
new Action(
"NOTE5", _(
"Play note 5: E"));
1030 act->setKeyEvent(
KeyState(KEYCODE_j,
'j'));
1034 act =
new Action(
"NOTE6", _(
"Play note 6: G#"));
1035 act->setKeyEvent(
KeyState(KEYCODE_k,
'k'));
1039 act =
new Action(
"NOTE7", _(
"Play note 7: B"));
1040 act->setKeyEvent(
KeyState(KEYCODE_l,
'l'));
1044 }
else if (gameId ==
"ghostsheet") {
1045 act =
new Action(
"HINT", _(
"Show hints"));
1046 act->setKeyEvent(
KeyState(KEYCODE_TAB, ASCII_TAB));
1052 act =
new Action(
"ABLT1", _(
"Ability: Telekinesis"));
1053 act->setKeyEvent(KEYCODE_F1);
1057 act =
new Action(
"ABLT2", _(
"Ability: Push"));
1058 act->setKeyEvent(KEYCODE_F2);
1062 act =
new Action(
"ABLT3", _(
"Ability: Lightning"));
1063 act->setKeyEvent(KEYCODE_F3);
1067 act =
new Action(
"ABLT4", _(
"Ability: Light"));
1068 act->setKeyEvent(KEYCODE_F4);
1072 act =
new Action(
"ABLT5", _(
"Ability: Wind"));
1073 act->setKeyEvent(KEYCODE_F5);
1077 act =
new Action(
"ABLT6", _(
"Ability: Sound"));
1078 act->setKeyEvent(KEYCODE_F6);
1082 act =
new Action(
"ABLT7", _(
"Ability: Esence"));
1083 act->setKeyEvent(KEYCODE_F7);
1087 act =
new Action(
"ABLT8", _(
"Ability: Exorcist"));
1088 act->setKeyEvent(KEYCODE_F8);
1092 act =
new Action(kStandardActionSkip, _(
"Skip"));
1093 act->setKeyEvent(
KeyState(KEYCODE_BACKSPACE, ASCII_BACKSPACE));
1098 act =
new Action(
"SCRS", _(
"Save screenshot"));
1099 act->setKeyEvent(KEYCODE_F10);
1102 }
else if (gameId ==
"helga") {
1103 act =
new Action(
"PAGEUP", _(
"Previous page"));
1104 act->setKeyEvent(KEYCODE_PAGEUP);
1110 act =
new Action(
"PAGEDN", _(
"Next page"));
1111 act->setKeyEvent(KEYCODE_PAGEDOWN);
1117 act =
new Action(
"PHONEX", _(
"Phone cancel button"));
1118 act->setKeyEvent(
KeyState(KEYCODE_BACKSPACE, ASCII_BACKSPACE));
1122 act =
new Action(
"PHONEU", _(
"Phone up button"));
1123 act->setKeyEvent(KEYCODE_UP);
1128 act =
new Action(
"PHONED", _(
"Phone down button"));
1129 act->setKeyEvent(KEYCODE_DOWN);
1134 act =
new Action(
"PHONE0", _(
"Phone 0 button"));
1135 act->setKeyEvent(
KeyState(KEYCODE_0,
'0'));
1139 act =
new Action(
"PHONE1", _(
"Phone 1 button"));
1140 act->setKeyEvent(
KeyState(KEYCODE_1,
'1'));
1144 act =
new Action(
"PHONE2", _(
"Phone 2 button"));
1145 act->setKeyEvent(
KeyState(KEYCODE_2,
'2'));
1149 act =
new Action(
"PHONE3", _(
"Phone 3 button"));
1150 act->setKeyEvent(
KeyState(KEYCODE_3,
'3'));
1154 act =
new Action(
"PHONE4", _(
"Phone 4 button"));
1155 act->setKeyEvent(
KeyState(KEYCODE_4,
'4'));
1159 act =
new Action(
"PHONE5", _(
"Phone 5 button"));
1160 act->setKeyEvent(
KeyState(KEYCODE_5,
'5'));
1164 act =
new Action(
"PHONE6", _(
"Phone 6 button"));
1165 act->setKeyEvent(
KeyState(KEYCODE_6,
'6'));
1169 act =
new Action(
"PHONE7", _(
"Phone 7 button"));
1170 act->setKeyEvent(
KeyState(KEYCODE_7,
'7'));
1174 act =
new Action(
"PHONE8", _(
"Phone 8 button"));
1175 act->setKeyEvent(
KeyState(KEYCODE_8,
'8'));
1179 act =
new Action(
"PHONE9", _(
"Phone 9 button"));
1180 act->setKeyEvent(
KeyState(KEYCODE_9,
'9'));
1184 act =
new Action(
"PHONEA", _(
"Phone * button"));
1185 act->setKeyEvent(
KeyState(KEYCODE_ASTERISK,
'*'));
1189 act =
new Action(
"PHONEH", _(
"Phone # button"));
1190 act->setKeyEvent(
KeyState(KEYCODE_HASH,
'#'));
1193 }
else if (gameId ==
"knossos") {
1194 act =
new Action(kStandardActionEE, _(
"???"));
1195 act->setKeyEvent(
KeyState(KEYCODE_a,
'a', KBD_SHIFT));
1199 }
else if (gameId ==
"jamesperis") {
1200 act =
new Action(
"HINT", _(
"Show hints / Dance move"));
1201 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
1207 act =
new Action(kStandardActionMoveUp, _(
"Dance move up"));
1208 act->setKeyEvent(KEYCODE_UP);
1213 act =
new Action(kStandardActionMoveDown, _(
"Dance move down"));
1214 act->setKeyEvent(KEYCODE_DOWN);
1219 act =
new Action(kStandardActionMoveLeft, _(
"Dance move left"));
1220 act->setKeyEvent(KEYCODE_LEFT);
1225 act =
new Action(kStandardActionMoveRight, _(
"Dance move right"));
1226 act->setKeyEvent(KEYCODE_RIGHT);
1231 act =
new Action(
"PAGEUP", _(
"Previous page"));
1232 act->setMouseWheelUpEvent();
1236 act =
new Action(
"PAGEDN", _(
"Next page"));
1237 act->setMouseWheelDownEvent();
1241 act =
new Action(kStandardActionEE, _(
"???"));
1242 act->setKeyEvent(KEYCODE_F10);
1247 }
else if (gameId ==
"jamesperis2") {
1248 act =
new Action(
"HINT", _(
"Show hints"));
1249 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
1255 act =
new Action(
"PAGEUP", _(
"Previous page"));
1256 act->setMouseWheelUpEvent();
1260 act =
new Action(
"PAGEDN", _(
"Next page"));
1261 act->setMouseWheelDownEvent();
1265 act =
new Action(kStandardActionLoad, _(
"Load game"));
1266 act->setKeyEvent(KEYCODE_F5);
1270 act =
new Action(kStandardActionEE, _(
"???"));
1271 act->setKeyEvent(
KeyState(KEYCODE_t,
't', KBD_CTRL));
1275 }
else if (gameId ==
"julia") {
1276 act =
new Action(kStandardActionSkip, _(
"Skip"));
1277 act->setKeyEvent(KEYCODE_F12);
1282 }
else if (gameId ==
"juliastars") {
1283 act =
new Action(
"CANCEL", _(
"Cancel input"));
1284 act->setKeyEvent(KEYCODE_BACKSPACE);
1290 act =
new Action(kStandardActionMoveUp, _(
"Up"));
1291 act->setKeyEvent(KEYCODE_UP);
1296 act =
new Action(kStandardActionMoveDown, _(
"Down"));
1297 act->setKeyEvent(KEYCODE_DOWN);
1302 act =
new Action(kStandardActionMoveLeft, _(
"Left"));
1303 act->setKeyEvent(KEYCODE_LEFT);
1308 act =
new Action(kStandardActionMoveRight, _(
"Right"));
1309 act->setKeyEvent(KEYCODE_RIGHT);
1314 act =
new Action(
"NOWAIT", _(
"Cancel waiting"));
1315 act->setKeyEvent(KEYCODE_F11);
1318 }
else if (gameId ==
"looky") {
1319 act =
new Action(
"HINT", _(
"Show hints"));
1320 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
1326 act =
new Action(
"SCRLUP", _(
"Scroll up"));
1327 act->setMouseWheelUpEvent();
1333 act =
new Action(
"SCRLDN", _(
"Scroll down"));
1334 act->setMouseWheelDownEvent();
1340 act =
new Action(
"SCRS", _(
"Save screenshot"));
1341 act->setKeyEvent(KEYCODE_F12);
1344 }
else if (gameId ==
"lotl") {
1345 act =
new Action(
"SUBS", _(
"Toggle subtitles"));
1346 act->setKeyEvent(
KeyState(KEYCODE_t,
't'));
1352 act =
new Action(
"SCRLUP", _(
"Scroll up"));
1353 act->setMouseWheelUpEvent();
1359 act =
new Action(
"SCRLDN", _(
"Scroll down"));
1360 act->setMouseWheelDownEvent();
1365 }
else if (gameId ==
"lostbride") {
1366 act =
new Action(
"HELP", _(
"Show help"));
1367 act->setKeyEvent(KEYCODE_F1);
1373 act =
new Action(kStandardActionMoveUp, _(
"Up"));
1374 act->setKeyEvent(KEYCODE_UP);
1379 act =
new Action(kStandardActionMoveDown, _(
"Down"));
1380 act->setKeyEvent(KEYCODE_DOWN);
1385 act =
new Action(kStandardActionMoveLeft, _(
"Left"));
1386 act->setKeyEvent(KEYCODE_LEFT);
1391 act =
new Action(kStandardActionMoveRight, _(
"Right"));
1392 act->setKeyEvent(KEYCODE_RIGHT);
1397 act =
new Action(kStandardActionEE, _(
"???"));
1398 act->setKeyEvent(
KeyState(KEYCODE_SLASH, 0, KBD_SHIFT));
1403 act =
new Action(
"HINT", _(
"???"));
1404 act->setKeyEvent(
KeyState(KEYCODE_s,
's'));
1409 act =
new Action(
"NOHINT", _(
"Hide hints"));
1410 act->setKeyEvent(
KeyState(KEYCODE_h,
'h'));
1414 }
else if (gameId ==
"mentalrepairs") {
1415 act =
new Action(
"HINT", _(
"Show hints"));
1416 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
1422 act =
new Action(
"HELP", _(
"Show help"));
1423 act->setKeyEvent(KEYCODE_F1);
1427 }
else if (gameId ==
"mythguff") {
1428 act =
new Action(
"SCRLUP", _(
"Scroll up"));
1429 act->setMouseWheelUpEvent();
1435 act =
new Action(
"SCRLDN", _(
"Scroll down"));
1436 act->setMouseWheelDownEvent();
1441 }
else if (gameId ==
"oknytt") {
1442 act =
new Action(
"INV", _(
"Show inventory"));
1443 act->setKeyEvent(
KeyState(KEYCODE_TAB, ASCII_TAB));
1448 }
else if (gameId ==
"onehelluvaday") {
1449 act =
new Action(kStandardActionMoveUp, _(
"Up"));
1450 act->setKeyEvent(KEYCODE_UP);
1456 act =
new Action(kStandardActionMoveDown, _(
"Down"));
1457 act->setKeyEvent(KEYCODE_DOWN);
1464 act =
new Action(
"SHIFT", _(
"Shift key"));
1465 act->setKeyEvent(KEYCODE_RSHIFT);
1471 }
else if (gameId ==
"palladion") {
1472 act =
new Action(
"HINT", _(
"Show hints"));
1473 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
1479 act =
new Action(
"SCRS", _(
"Save screenshot"));
1480 act->setKeyEvent(KEYCODE_F12);
1483 }
else if (gameId ==
"papasdaughters1") {
1484 act =
new Action(
"SCRLUP", _(
"Scroll up"));
1485 act->setMouseWheelUpEvent();
1491 act =
new Action(
"SCRLDN", _(
"Scroll down"));
1492 act->setMouseWheelDownEvent();
1497 }
else if (gameId ==
"papasdaughters2") {
1498 act =
new Action(
"HINT", _(
"Show hints"));
1499 act->setKeyEvent(KEYCODE_F1);
1505 act =
new Action(
"SCRLUP", _(
"Scroll up"));
1506 act->setMouseWheelUpEvent();
1512 act =
new Action(
"SCRLDN", _(
"Scroll down"));
1513 act->setMouseWheelDownEvent();
1518 }
else if (gameId ==
"petka02") {
1519 act =
new Action(
"INV", _(
"Show inventory"));
1520 act->setKeyEvent(
KeyState(KEYCODE_i,
'i'));
1526 act =
new Action(
"MAP", _(
"Show map"));
1527 act->setKeyEvent(
KeyState(KEYCODE_m,
'm'));
1534 act =
new Action(
"LOOK", _(
"Look at"));
1535 act->setKeyEvent(
KeyState(KEYCODE_l,
'l'));
1540 act =
new Action(
"WALK", _(
"Walk to"));
1541 act->setKeyEvent(
KeyState(KEYCODE_w,
'w'));
1546 act =
new Action(
"PICK", _(
"Pick up"));
1547 act->setKeyEvent(
KeyState(KEYCODE_g,
'g'));
1552 act =
new Action(
"USE", _(
"Use"));
1553 act->setKeyEvent(
KeyState(KEYCODE_u,
'u'));
1558 act =
new Action(
"TALK", _(
"Talk to"));
1559 act->setKeyEvent(
KeyState(KEYCODE_t,
't'));
1566 act =
new Action(
"ALTUSE", _(
"Chapayev's action"));
1567 act->setKeyEvent(
KeyState(KEYCODE_c,
'c'));
1573 if (extra.hasSuffix(
"2015")) {
1574 act =
new Action(kStandardActionEE, _(
"???"));
1575 act->setKeyEvent(
KeyState(KEYCODE_q,
'q'));
1581 act =
new Action(
"DBGTXT", _(
"Debug print"));
1582 act->setKeyEvent(KEYCODE_BACKSPACE);
1586 }
else if (gameId ==
"pizzamorgana") {
1587 act =
new Action(
"ACTNXT", _(
"Next action"));
1588 act->setMouseWheelUpEvent();
1595 act =
new Action(
"ACTPRV", _(
"Previous action"));
1596 act->setMouseWheelDownEvent();
1601 act =
new Action(kStandardActionSkip, _(
"Skip"));
1602 act->setKeyEvent(
KeyState(KEYCODE_PERIOD,
'.'));
1608 act =
new Action(kStandardActionPause, _(
"Pause"));
1609 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
1614 act =
new Action(kStandardActionOpenSettings, _(
"Settings"));
1615 act->setKeyEvent(
KeyState(KEYCODE_s,
's'));
1619 act =
new Action(
"ANSWR1", _(
"Dialogue answer 1"));
1620 act->setKeyEvent(
KeyState(KEYCODE_1,
'1'));
1624 act =
new Action(
"ANSWR2", _(
"Dialogue answer 2"));
1625 act->setKeyEvent(
KeyState(KEYCODE_2,
'2'));
1629 act =
new Action(
"ANSWR3", _(
"Dialogue answer 3"));
1630 act->setKeyEvent(
KeyState(KEYCODE_3,
'3'));
1634 act =
new Action(
"ANSWR4", _(
"Dialogue answer 4"));
1635 act->setKeyEvent(
KeyState(KEYCODE_4,
'4'));
1639 act =
new Action(
"SCRS", _(
"Save screenshot"));
1640 act->setKeyEvent(
KeyState(KEYCODE_p,
'p', KBD_SHIFT));
1643 }
else if (gameId ==
"polechudes") {
1645 act =
new Action(
"SLOWER", _(
"Spin wheel slower"));
1646 act->setKeyEvent(KEYCODE_F1);
1653 act =
new Action(
"FASTER", _(
"Spin wheel faster"));
1654 act->setKeyEvent(KEYCODE_F2);
1659 }
else if (gameId ==
"reptilesquest") {
1660 act =
new Action(
"HINT", _(
"Show hints"));
1661 act->setKeyEvent(
KeyState(KEYCODE_x,
'x'));
1667 act =
new Action(
"INV", _(
"Show inventory"));
1668 act->setKeyEvent(
KeyState(KEYCODE_i,
'i'));
1673 act =
new Action(
"MAP", _(
"Show map"));
1674 act->setKeyEvent(
KeyState(KEYCODE_m,
'm'));
1678 }
else if (gameId ==
"reversion1") {
1679 act =
new Action(
"INV", _(
"Show inventory"));
1680 act->setKeyEvent(
KeyState(KEYCODE_i,
'i'));
1685 }
else if (gameId ==
"reversion2" ||
1686 gameId ==
"reversion3" 1688 act =
new Action(
"INV", _(
"Show inventory"));
1689 act->setKeyEvent(
KeyState(KEYCODE_i,
'i'));
1695 act =
new Action(kStandardActionMoveUp, _(
"Scroll up"));
1696 act->setMouseWheelUpEvent();
1702 act =
new Action(kStandardActionMoveDown, _(
"Scroll down"));
1703 act->setMouseWheelDownEvent();
1708 }
else if (gameId ==
"ritter") {
1709 act =
new Action(
"HINT", _(
"Show hints"));
1710 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
1716 act =
new Action(kStandardActionSkip, _(
"Skip"));
1717 act->setKeyEvent(
KeyState(KEYCODE_BACKSPACE, ASCII_BACKSPACE));
1721 }
else if (gameId ==
"shaban") {
1722 act =
new Action(
"MAP", _(
"Show map"));
1723 act->setKeyEvent(
KeyState(KEYCODE_m,
'm'));
1728 }
else if (gameId ==
"sof1" ||
1731 act =
new Action(
"ZOOMOT", _(
"Zoom out"));
1732 act->setMouseWheelUpEvent();
1738 act =
new Action(
"ZOOMIN", _(
"Zoom in"));
1739 act->setMouseWheelDownEvent();
1745 act =
new Action(
"MAP", _(
"Show map"));
1746 act->setKeyEvent(
KeyState(KEYCODE_m,
'm'));
1751 act =
new Action(
"JRNL", _(
"Show journal"));
1752 act->setKeyEvent(
KeyState(KEYCODE_n,
'n'));
1756 }
else if (gameId ==
"sotv1") {
1757 act =
new Action(
"HINT", _(
"Show hints"));
1758 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
1764 act =
new Action(
"MAP", _(
"Show map"));
1765 act->setKeyEvent(
KeyState(KEYCODE_m,
'm'));
1770 act =
new Action(
"ACTNXT", _(
"Next action"));
1771 act->setMouseWheelDownEvent();
1777 act =
new Action(
"ACTPRV", _(
"Previous action"));
1778 act->setMouseWheelUpEvent();
1784 act =
new Action(kStandardActionEE, _(
"???"));
1785 act->setMiddleClickEvent();
1789 }
else if (gameId ==
"sotv2") {
1790 act =
new Action(
"HINT", _(
"Show hints"));
1791 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
1797 act =
new Action(
"MAP", _(
"Show map"));
1798 act->setKeyEvent(
KeyState(KEYCODE_m,
'm'));
1803 act =
new Action(
"ACTNXT", _(
"Next action"));
1804 act->setMouseWheelDownEvent();
1810 act =
new Action(
"ACTPRV", _(
"Previous action"));
1811 act->setMouseWheelUpEvent();
1817 act =
new Action(
"PHONE1", _(
"Phone 1 button"));
1818 act->setKeyEvent(
KeyState(KEYCODE_1,
'1'));
1822 act =
new Action(
"PHONE2", _(
"Phone 2 button"));
1823 act->setKeyEvent(
KeyState(KEYCODE_2,
'2'));
1827 act =
new Action(
"PHONE3", _(
"Phone 3 button"));
1828 act->setKeyEvent(
KeyState(KEYCODE_3,
'3'));
1833 act =
new Action(
"DBGTXT", _(
"Debug print"));
1834 act->setKeyEvent(KEYCODE_F6);
1838 act =
new Action(kStandardActionEE, _(
"???"));
1839 act->setMiddleClickEvent();
1843 }
else if (gameId ==
"tib") {
1844 act =
new Action(
"SCRS", _(
"Save screenshot"));
1845 act->setKeyEvent(KEYCODE_F9);
1848 }
else if (gameId ==
"thelastcrownmh") {
1849 act =
new Action(
"EXIT", _(
"Exit"));
1850 act->setKeyEvent(KEYCODE_F1);
1855 act =
new Action(
"DBGSCN", _(
"Show scene geometry"));
1856 act->setKeyEvent(KEYCODE_F2);
1862 act =
new Action(
"SCRS", _(
"Save screenshot"));
1863 act->setKeyEvent(KEYCODE_F3);
1867 act =
new Action(kStandardActionOpenSettings, _(
"Settings"));
1868 act->setKeyEvent(KEYCODE_F4);
1872 act =
new Action(
"NOWAIT", _(
"Cancel waiting"));
1873 act->setKeyEvent(KEYCODE_F5);
1878 act =
new Action(
"DBGTXT", _(
"Debug print"));
1879 act->setKeyEvent(KEYCODE_F6);
1884 act =
new Action(
"DBGBEZ", _(
"Bezier window"));
1885 act->setKeyEvent(KEYCODE_F7);
1888 }
else if (gameId ==
"thelostcrowngha") {
1889 act =
new Action(kStandardActionEE, _(
"???"));
1890 act->setKeyEvent(KEYCODE_F1);
1895 act =
new Action(
"SCRS", _(
"Save screenshot"));
1896 act->setKeyEvent(KEYCODE_F3);
1899 }
else if (gameId ==
"twc") {
1901 act =
new Action(
"ALTUSE", _(
"Droid's action"));
1902 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
1908 act =
new Action(kStandardActionMoveLeft, _(
"Left"));
1909 act->setKeyEvent(KEYCODE_LEFT);
1914 act =
new Action(kStandardActionMoveRight, _(
"Right"));
1915 act->setKeyEvent(KEYCODE_RIGHT);
1920 act =
new Action(kStandardActionMoveUp, _(
"Up"));
1921 act->setKeyEvent(KEYCODE_UP);
1926 act =
new Action(kStandardActionMoveDown, _(
"Down"));
1927 act->setKeyEvent(KEYCODE_DOWN);
1932 act =
new Action(
"GUIA", _(
"GUI variant A"));
1933 act->setKeyEvent(KEYCODE_F10);
1938 act =
new Action(
"GUIB", _(
"GUI variant B"));
1939 act->setKeyEvent(KEYCODE_F11);
1944 act =
new Action(kStandardActionEE, _(
"???"));
1945 act->setKeyEvent(KEYCODE_HOME);
1949 }
else if (gameId ==
"vsevolod") {
1950 act =
new Action(
"INV", _(
"Show inventory"));
1951 act->setKeyEvent(
KeyState(KEYCODE_i,
'i'));
1957 act =
new Action(
"JRNL", _(
"Show journal"));
1958 act->setKeyEvent(
KeyState(KEYCODE_j,
'j'));
1963 act =
new Action(kStandardActionOpenSettings, _(
"Settings"));
1964 act->setKeyEvent(
KeyState(KEYCODE_m,
'm'));
1969 act =
new Action(
"SCRLUP", _(
"Scroll up"));
1970 act->setMouseWheelUpEvent();
1976 act =
new Action(
"SCRLDN", _(
"Scroll down"));
1977 act->setMouseWheelDownEvent();
1982 }
else if (gameId ==
"wayoflove") {
1983 act =
new Action(
"HINT", _(
"Show hints"));
1984 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
1990 act =
new Action(
"GUIA", _(
"GUI variant A"));
1991 act->setKeyEvent(KEYCODE_F10);
1996 act =
new Action(
"GUIB", _(
"GUI variant B"));
1997 act->setKeyEvent(KEYCODE_F11);
2002 act =
new Action(kStandardActionEE, _(
"???"));
2003 act->setKeyEvent(KEYCODE_HOME);
2007 }
else if (gameId ==
"wtetris") {
2009 act =
new Action(
"ROTATE", _(
"Rotate"));
2010 act->setKeyEvent(KEYCODE_UP);
2018 act =
new Action(kStandardActionMoveLeft, _(
"Left"));
2019 act->setKeyEvent(KEYCODE_LEFT);
2026 act =
new Action(kStandardActionMoveRight, _(
"Right"));
2027 act->setKeyEvent(KEYCODE_RIGHT);
2035 act =
new Action(
"DROP", _(
"Drop"));
2036 act->setKeyEvent(KEYCODE_DOWN);
2042 }
else if (gameId ==
"zilm") {
2043 act =
new Action(
"P1UP", _(
"Player 1: Up"));
2044 act->setKeyEvent(
KeyState(KEYCODE_w,
'w'));
2048 act =
new Action(
"P1LT", _(
"Player 1: Left"));
2049 act->setKeyEvent(
KeyState(KEYCODE_a,
'a'));
2053 act =
new Action(
"P1DN", _(
"Player 1: Down"));
2054 act->setKeyEvent(
KeyState(KEYCODE_s,
's'));
2058 act =
new Action(
"P1RT", _(
"Player 1: Right"));
2059 act->setKeyEvent(
KeyState(KEYCODE_d,
'd'));
2063 act =
new Action(
"P2UP", _(
"Player 2: Up"));
2064 act->setKeyEvent(KEYCODE_UP);
2068 act =
new Action(
"P2LT", _(
"Player 2: Left"));
2069 act->setKeyEvent(KEYCODE_LEFT);
2073 act =
new Action(
"P2DN", _(
"Player 2: Down"));
2074 act->setKeyEvent(KEYCODE_DOWN);
2078 act =
new Action(
"P2RT", _(
"Player 2: Right"));
2079 act->setKeyEvent(KEYCODE_RIGHT);
2084 act =
new Action(
"DBGFPS", _(
"Debug FPS"));
2085 act->setKeyEvent(KEYCODE_F2);
2088 }
else if (gameId ==
"zbang") {
2089 act =
new Action(
"ACTNXT", _(
"Next action"));
2090 act->setMouseWheelUpEvent();
2097 act =
new Action(
"ACTPRV", _(
"Previous action"));
2098 act->setMouseWheelDownEvent();
2103 act =
new Action(
"HINT", _(
"Show hints"));
2104 act->setKeyEvent(
KeyState(KEYCODE_TAB, ASCII_TAB));
2110 act =
new Action(kStandardActionSkip, _(
"Skip"));
2111 act->setKeyEvent(
KeyState(KEYCODE_PERIOD,
'.'));
2116 act =
new Action(kStandardActionMoveUp, _(
"Move Forward"));
2117 act->setKeyEvent(KEYCODE_UP);
2122 act =
new Action(kStandardActionMoveLeft, _(
"Turn left"));
2123 act->setKeyEvent(KEYCODE_LEFT);
2128 act =
new Action(kStandardActionMoveRight, _(
"Turn right"));
2129 act->setKeyEvent(KEYCODE_RIGHT);
2134 warning(
"Autogenerated keymap for unknown WME game, id '%s', target '%s'", gameId.c_str(), target);
2136 act =
new Action(
"SPACE", _(
"Space"));
2137 act->setKeyEvent(
KeyState(KEYCODE_SPACE, ASCII_SPACE));
2138 act->addDefaultInputMapping(
"SPACE");
2139 act->addDefaultInputMapping(
"JOY_Y");
2142 act =
new Action(kStandardActionMoveLeft, _(
"Left"));
2143 act->setKeyEvent(KEYCODE_LEFT);
2144 act->addDefaultInputMapping(
"LEFT");
2145 act->addDefaultInputMapping(
"JOY_LEFT");
2148 act =
new Action(kStandardActionMoveRight, _(
"Right"));
2149 act->setKeyEvent(KEYCODE_RIGHT);
2150 act->addDefaultInputMapping(
"RIGHT");
2151 act->addDefaultInputMapping(
"JOY_RIGHT");
2154 act =
new Action(kStandardActionMoveUp, _(
"Up"));
2155 act->setKeyEvent(KEYCODE_UP);
2156 act->addDefaultInputMapping(
"UP");
2157 act->addDefaultInputMapping(
"JOY_UP");
2160 act =
new Action(kStandardActionMoveDown, _(
"Down"));
2161 act->setKeyEvent(KEYCODE_DOWN);
2162 act->addDefaultInputMapping(
"DOWN");
2163 act->addDefaultInputMapping(
"JOY_DOWN");
2166 act =
new Action(kStandardActionMiddleClick, _(
"Middle Click"));
2167 act->setMiddleClickEvent();
2168 act->addDefaultInputMapping(
"MOUSE_MIDDLE");
2171 act =
new Action(
"SCRLUP", _(
"Scroll up"));
2172 act->setMouseWheelUpEvent();
2173 act->addDefaultInputMapping(
"MOUSE_WHEEL_UP");
2176 act =
new Action(
"SCRLDN", _(
"Scroll down"));
2177 act->setMouseWheelDownEvent();
2178 act->addDefaultInputMapping(
"MOUSE_WHEEL_DOWN");
2181 act =
new Action(
"KEYF1", _(
"F1"));
2182 act->setKeyEvent(KEYCODE_F1);
2183 act->addDefaultInputMapping(
"F1");
2186 act =
new Action(
"KEYI", _(
"Key i"));
2187 act->setKeyEvent(
KeyState(KEYCODE_i,
'i'));
2188 act->addDefaultInputMapping(
"i");
2191 act =
new Action(
"TAB", _(
"Tab"));
2192 act->setKeyEvent(
KeyState(KEYCODE_TAB, ASCII_TAB));
2193 act->addDefaultInputMapping(
"TAB");
2199 if (gameId ==
"carolreed4" ||
2200 gameId ==
"carolreed5" ||
2201 gameId ==
"carolreed6" ||
2202 gameId ==
"carolreed7" ||
2203 gameId ==
"carolreed8" ||
2204 gameId ==
"carolreed9" ||
2205 gameId ==
"carolreed10" ||
2206 gameId ==
"carolreed11" ||
2207 gameId ==
"carolreed12" ||
2208 gameId ==
"carolreed13" ||
2209 gameId ==
"carolreed14" ||
2210 gameId ==
"carolreed15" ||
2211 gameId ==
"carolreed16" ||
2212 gameId ==
"corrosion" ||
2213 gameId ==
"rebeccacarlson1" ||
2214 gameId ==
"rhiannon" 2216 act =
new Action(kStandardActionMoveUp, _(
"Move Forward"));
2217 act->setCustomEngineActionEvent(kClickAtEntityNearestToCenter);
2218 act->addDefaultInputMapping(
"UP");
2219 act->addDefaultInputMapping(
"KP5");
2220 act->addDefaultInputMapping(
"JOY_UP");
2223 act =
new Action(kStandardActionMoveLeft, _(
"Turn left"));
2224 act->setCustomEngineActionEvent(kClickAtLeft);
2225 act->addDefaultInputMapping(
"LEFT");
2226 act->addDefaultInputMapping(
"KP4");
2227 act->addDefaultInputMapping(
"JOY_LEFT");
2230 act =
new Action(kStandardActionMoveRight, _(
"Turn right"));
2231 act->setCustomEngineActionEvent(kClickAtRight);
2232 act->addDefaultInputMapping(
"RIGHT");
2233 act->addDefaultInputMapping(
"KP6");
2234 act->addDefaultInputMapping(
"JOY_RIGHT");
2237 if (gameId !=
"rhiannon") {
2238 act =
new Action(kStandardActionMoveDown, _(
"Move Backwards"));
2239 act->setCustomEngineActionEvent(kClickAtBottom);
2240 act->addDefaultInputMapping(
"DOWN");
2241 act->addDefaultInputMapping(
"KP2");
2242 act->addDefaultInputMapping(
"JOY_DOWN");
void warning(MSVC_PRINTF const char *s,...) GCC_PRINTF(1
void addAction(Action *action)
A set of well known keymapper actions.
void push_back(const T &element)
Definition: array.h:180
void addDefaultInputMapping(const String &hwId)
Definition: algorithm.h:29
Definition: keyboard.h:294
Definition: achievements_tables.h:27