22 #ifndef TWINE_KEYBOARD_H 23 #define TWINE_KEYBOARD_H 25 #include "common/events.h" 26 #include "common/keyboard.h" 27 #include "common/scummsys.h" 28 #include "common/util.h" 29 #include "common/rect.h" 35 extern const char *mainKeyMapId;
36 extern const char *uiKeyMapId;
37 extern const char *cutsceneKeyMapId;
38 extern const char *holomapKeyMapId;
40 enum TwinEActionType {
42 DebugGridCameraPressUp,
43 DebugGridCameraPressDown,
44 DebugGridCameraPressLeft,
45 DebugGridCameraPressRight,
47 QuickBehaviourAthletic,
48 QuickBehaviourAggressive,
49 QuickBehaviourDiscreet,
50 ChangeBehaviourNormal,
51 ChangeBehaviourAthletic,
52 ChangeBehaviourAggressive,
53 ChangeBehaviourDiscreet,
54 ExecuteBehaviourAction,
57 RecenterScreenOnTwinsen,
110 uint8 _actionStates[TwinEActionType::Max]{
false};
119 void enableKeyMap(
const char *
id);
120 bool enableAdditionalKeyMap(
const char *
id,
bool enable);
131 bool isActionActive(TwinEActionType actionType,
bool onlyFirstTime =
true)
const;
133 void resetLastHoveredMousePosition();
134 bool isMouseHovering(
const Common::Rect &rect,
bool onlyIfMoved =
true);
140 bool toggleActionIfActive(TwinEActionType actionType);
141 void resetActionStates();
143 bool toggleAbortAction();
145 bool isQuickBehaviourActionActive()
const;
146 bool isMoveOrTurnActionActive()
const;
147 bool isHeroActionActive()
const;
148 bool resetHeroActions();
160 void processCustomEngineEventStart(
const Common::Event& event);
161 void processCustomEngineEventEnd(
const Common::Event& event);
165 return _currentKeyMap;
Activates the given key map id that is registered in the meta engine.
Definition: input.h:95
Definition: achievements_tables.h:27