22 #ifndef BLADERUNNER_KIA_H 23 #define BLADERUNNER_KIA_H 25 #include "common/str.h" 27 #include "graphics/surface.h" 36 class BladeRunnerEngine;
40 class KIASectionClues;
41 class KIASectionDiagnostic;
42 class KIASectionCrimes;
45 class KIASectionSettings;
48 class KIASectionSuspects;
56 kKIASectionCrimes = 1,
57 kKIASectionSuspects = 2,
59 kKIASectionSettings = 4,
64 kKIASectionDiagnostic = 9,
69 static const char *kPogo;
70 static const int kPlayerActorDialogueQueueCapacity = 31;
72 struct ActorDialogueQueueEntry {
81 uint32 _playerVqaTimeLast;
83 uint32 _playerVqaFrame;
84 uint32 _playerVisualizerState;
85 int _playerPhotographId;
86 Shapes *_playerPhotographs;
87 int _playerSliceModelId;
88 float _playerSliceModelAngle;
92 ActorDialogueQueueEntry _playerActorDialogueQueue[kPlayerActorDialogueQueueCapacity];
93 int _playerActorDialogueQueuePosition;
94 int _playerActorDialogueQueueSize;
95 int _playerActorDialogueState;
97 KIASections _currentSectionId;
98 KIASections _lastSectionIdKIA;
99 KIASections _lastSectionIdOptions;
138 void openLastOpened();
139 void open(KIASections sectionId);
146 void handleMouseDown(
int mouseX,
int mouseY,
bool mainButton);
147 void handleMouseUp(
int mouseX,
int mouseY,
bool mainButton);
148 void handleMouseScroll(
int mouseX,
int mouseY,
int direction);
155 void playActorDialogue(
int actorId,
int sentenceId);
156 void playSliceModel(
int sliceModelId);
157 void playPhotograph(
int photographId);
160 const char *scrambleSuspectsName(
const char *name);
163 static void mouseDownCallback(
int buttonId,
void *callbackData);
164 static void mouseUpCallback(
int buttonId,
void *callbackData);
165 static void loopEnded(
void *callbackData,
int frame,
int loopId);
169 void switchSection(
int sectionId);
171 void createButtons(
int sectionId);
172 void buttonClicked(
int buttonId);
174 const char *getSectionVqaName(
int sectionId);
175 int getVqaLoopMain(
int sectionId);
176 int getVqaLoopTransition(
int transitionId);
178 int getTransitionId(
int oldSectionId,
int newSectionId);
179 void playTransitionSound(
int transitionId);
181 void playPrivateAddon();
182 void playObjectDescription();
Definition: kia_section_save.h:43
Definition: kia_section_base.h:40
Definition: kia_section_crimes.h:38
Definition: kia_section_diagnostic.h:32
Definition: kia_section_load.h:41
Definition: vqa_player.h:45
Definition: kia_section_clues.h:37
Definition: algorithm.h:29
Definition: ui_image_picker.h:40
Definition: kia_section_pogo.h:30
Definition: kia_section_settings.h:42
Definition: keyboard.h:294
Definition: bladerunner.h:113
Definition: kia_section_suspects.h:39
Definition: kia_script.h:31
Definition: kia_section_help.h:33