22#ifndef HOPKINS_BASE_ENHANCEMENTS_H
23#define HOPKINS_BASE_ENHANCEMENTS_H
25#include "common/scummsys.h"
26#include "common/str.h"
33static const char *
const kWBASEEnhancementsConfigKey =
"wbase_enhancements";
34static const char *
const kWBASEForcedAutoplayConfigKey =
"wbase_forced_autoplay";
35static const char *
const kWBASEEnhancementsKeymapId =
"hopkins-wbase-enhancements";
37enum WBASEEnhancementPanel {
38 kWBASEEnhancementPanelNone,
39 kWBASEEnhancementPanelNavigationMap,
40 kWBASEEnhancementPanelAutoplay
43enum WBASEEnhancementControl {
44 kWBASEEnhancementControlNone,
45 kWBASEEnhancementControlNavigationMap,
46 kWBASEEnhancementControlAutoplay,
47 kWBASEEnhancementControlForward,
48 kWBASEEnhancementControlBackward,
49 kWBASEEnhancementControlTurnLeft,
50 kWBASEEnhancementControlTurnRight,
51 kWBASEEnhancementControlFire,
52 kWBASEEnhancementControlExit,
53 kWBASEEnhancementControlEscape
60 bool enabled()
const {
return _enabled; }
61 bool forcedAutoplayEnabled()
const {
return _forcedAutoplay; }
62 bool controlsEnabled()
const {
return _enabled || _forcedAutoplay; }
63 bool navigationMapEnabled()
const {
return controlsEnabled(); }
64 void renderNavigationMap(
const BaseData &data,
const BaseEngine &engine,
byte *framebuffer)
const;
65 WBASEEnhancementControl controlAtPoint(
int x,
int y)
const;
66 bool controlEnabled(WBASEEnhancementControl control, WBASEEnhancementPanel panel)
const;
67 void renderControls(
const BaseData &data, WBASEEnhancementPanel panel,
68 WBASEEnhancementControl hoveredControl, uint32 pressedControls,
69 bool autoplayActive,
byte *framebuffer)
const;
Definition: base_data.h:35
Definition: base_engine.h:57
Definition: base_enhancements.h:56