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"
35extern const char *mainKeyMapId;
36extern const char *uiKeyMapId;
37extern const char *cutsceneKeyMapId;
38extern const char *holomapKeyMapId;
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};
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);
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