aboutsummaryrefslogtreecommitdiff
path: root/engines/cine/various.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/cine/various.cpp')
-rw-r--r--engines/cine/various.cpp33
1 files changed, 18 insertions, 15 deletions
diff --git a/engines/cine/various.cpp b/engines/cine/various.cpp
index be34d8c5d7..6e4637e0ca 100644
--- a/engines/cine/various.cpp
+++ b/engines/cine/various.cpp
@@ -55,10 +55,13 @@ uint16 var5;
int16 buildObjectListCommand(int16 param);
int16 canUseOnObject = 0;
-void drawString(const char *string, byte param) {
-}
-
void waitPlayerInput() {
+ uint16 button;
+
+ do {
+ manageEvents();
+ getMouseData(mouseUpdateStatus, &button, &dummyU16, &dummyU16);
+ } while (!button && !g_cine->shouldQuit());
}
void setTextWindow(uint16 param1, uint16 param2, uint16 param3, uint16 param4) {
@@ -362,13 +365,13 @@ void CineEngine::makeSystemMenu() {
systemCommand = makeMenuChoice(systemMenu, numEntry, mouseX, mouseY, 140);
switch (systemCommand) {
- case 0:
+ case 0: // Pause
{
- drawString(otherMessages[2], 0);
+ renderer->drawString(otherMessages[2], 0);
waitPlayerInput();
break;
}
- case 1:
+ case 1: // Restart Game
{
getMouseData(mouseUpdateStatus, (uint16 *)&mouseButton, (uint16 *)&mouseX, (uint16 *)&mouseY);
if (!makeMenuChoice(confirmMenu, 2, mouseX, mouseY + 8, 100)) {
@@ -376,7 +379,7 @@ void CineEngine::makeSystemMenu() {
}
break;
}
- case 2:
+ case 2: // Quit
{
getMouseData(mouseUpdateStatus, (uint16 *)&mouseButton, (uint16 *)&mouseX, (uint16 *)&mouseY);
if (!makeMenuChoice(confirmMenu, 2, mouseX, mouseY + 8, 100)) {
@@ -405,27 +408,27 @@ void CineEngine::makeSystemMenu() {
char loadString[256];
sprintf(loadString, otherMessages[3], currentSaveName[selectedSave]);
- drawString(loadString, 0);
+ renderer->drawString(loadString, 0);
makeLoad(saveNameBuffer);
} else {
- drawString(otherMessages[4], 0);
+ renderer->drawString(otherMessages[4], 0);
waitPlayerInput();
checkDataDisk(-1);
}
} else {
- drawString(otherMessages[4], 0);
+ renderer->drawString(otherMessages[4], 0);
waitPlayerInput();
checkDataDisk(-1);
}
} else {
- drawString(otherMessages[5], 0);
+ renderer->drawString(otherMessages[5], 0);
waitPlayerInput();
checkDataDisk(-1);
}
break;
}
- case 5:
+ case 5: // Save game
{
loadSaveDirectory();
selectedSave = makeMenuChoice(currentSaveName, 10, mouseX, mouseY + 8, 180);
@@ -458,13 +461,13 @@ void CineEngine::makeSystemMenu() {
delete fHandle;
sprintf(saveString, otherMessages[3], currentSaveName[selectedSave]);
- drawString(saveString, 0);
+ renderer->drawString(saveString, 0);
makeSave(saveFileName);
checkDataDisk(-1);
} else {
- drawString(otherMessages[4], 0);
+ renderer->drawString(otherMessages[4], 0);
waitPlayerInput();
checkDataDisk(-1);
}
@@ -849,7 +852,7 @@ uint16 executePlayerInput() {
canUseOnObject = 0;
if (isInPause) {
- drawString(otherMessages[2], 0);
+ renderer->drawString(otherMessages[2], 0);
waitPlayerInput();
isInPause = 0;
}