{ "game.button.stop.y", "-1" },
{ "game.button.pause.x", "35" },
{ "game.button.pause.y", "215" },
- { "game.button.play.x", "-1" },
- { "game.button.play.y", "-1" },
+ { "game.button.play.x", "35" },
+ { "game.button.play.y", "215" },
{ "game.button.undo.x", "5" },
{ "game.button.undo.y", "215" },
{ "game.button.redo.x", "65" },
{
UnmapGameButtonsAtSamePosition(GAME_CTRL_ID_UNDO);
UnmapGameButtonsAtSamePosition(GAME_CTRL_ID_REDO);
+ UnmapGameButtonsAtSamePosition(GAME_CTRL_ID_PLAY);
MapGadget(game_gadget[GAME_CTRL_ID_UNDO]);
MapGadget(game_gadget[GAME_CTRL_ID_REDO]);
+ MapGadget(game_gadget[GAME_CTRL_ID_PLAY]);
}
void UnmapUndoRedoButtons()
{
UnmapGadget(game_gadget[GAME_CTRL_ID_UNDO]);
UnmapGadget(game_gadget[GAME_CTRL_ID_REDO]);
+ UnmapGadget(game_gadget[GAME_CTRL_ID_PLAY]);
MapGameButtonsAtSamePosition(GAME_CTRL_ID_UNDO);
MapGameButtonsAtSamePosition(GAME_CTRL_ID_REDO);
+ MapGameButtonsAtSamePosition(GAME_CTRL_ID_PLAY);
}
void MapGameButtons()
for (i = 0; i < NUM_GAME_BUTTONS; i++)
if (i != GAME_CTRL_ID_UNDO &&
- i != GAME_CTRL_ID_REDO)
+ i != GAME_CTRL_ID_REDO &&
+ i != GAME_CTRL_ID_PLAY)
MapGadget(game_gadget[i]);
}
SendToServer_ContinuePlaying();
else
#endif
- {
- tape.pausing = FALSE;
- DrawVideoDisplay(VIDEO_STATE_PAUSE_OFF, 0);
- }
+ TapeTogglePause(TAPE_TOGGLE_MANUAL);
}
break;
}
}
- if (CheckEngineSnapshotList())
+ if (game_status == GAME_MODE_PLAYING && CheckEngineSnapshotList())
{
if (tape.pausing)
MapUndoRedoButtons();
break;
case TAPE_CTRL_ID_PLAY:
+ if (tape.recording && tape.pausing) /* PAUSE -> RECORD */
+ {
+ // ("TAPE_IS_EMPTY(tape)" is TRUE here -- probably fix this)
+
+ TapeTogglePause(TAPE_TOGGLE_MANUAL);
+ }
+
if (TAPE_IS_EMPTY(tape))
break;