projects
/
rocksndiamonds.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
added step-based engine snapshots to undo/redo game steps (continued)
[rocksndiamonds.git]
/
src
/
tape.c
diff --git
a/src/tape.c
b/src/tape.c
index 342f346df3703fabf00f668a17c19b528d67f162..a14690d3b23daaf4c7bf1c5150699ff945ef66c3 100644
(file)
--- a/
src/tape.c
+++ b/
src/tape.c
@@
-195,7
+195,7
@@
static void DrawVideoDisplay_Graphics(unsigned int state, unsigned int value)
static struct
{
int graphic;
static struct
{
int graphic;
- struct
Rect
*pos;
+ struct
XY
*pos;
}
video_pos[NUM_TAPE_FUNCTIONS][NUM_TAPE_FUNCTION_PARTS] =
{
}
video_pos[NUM_TAPE_FUNCTIONS][NUM_TAPE_FUNCTION_PARTS] =
{
@@
-253,7
+253,7
@@
static void DrawVideoDisplay_Graphics(unsigned int state, unsigned int value)
for (j = 0; j < NUM_TAPE_FUNCTION_PARTS; j++) /* label or symbol */
{
int graphic = video_pos[i][j].graphic;
for (j = 0; j < NUM_TAPE_FUNCTION_PARTS; j++) /* label or symbol */
{
int graphic = video_pos[i][j].graphic;
- struct
Rect
*pos = video_pos[i][j].pos;
+ struct
XY
*pos = video_pos[i][j].pos;
if (graphic == -1 ||
pos->x == -1 ||
if (graphic == -1 ||
pos->x == -1 ||
@@
-740,9
+740,14
@@
void TapeTogglePause(boolean toggle_manual)
TapeAppendRecording();
if (!CheckEngineSnapshot())
TapeAppendRecording();
if (!CheckEngineSnapshot())
- SaveEngineSnapshot();
+ SaveEngineSnapshot
Single
();
}
}
}
}
+
+ if (tape.pausing)
+ MapUndoRedoButtons();
+ else
+ MapStopPlayButtons();
}
void TapeStartPlaying()
}
void TapeStartPlaying()
@@
-1002,7
+1007,7
@@
void TapeQuickSave()
}
if (SaveTapeChecked(tape.level_nr))
}
if (SaveTapeChecked(tape.level_nr))
- SaveEngineSnapshot();
+ SaveEngineSnapshot
Single
();
}
void TapeQuickLoad()
}
void TapeQuickLoad()
@@
-1031,7
+1036,7
@@
void TapeQuickLoad()
{
TapeStartGamePlaying();
{
TapeStartGamePlaying();
- LoadEngineSnapshot();
+ LoadEngineSnapshot
Single
();
DrawCompleteVideoDisplay();
DrawCompleteVideoDisplay();
@@
-1217,7
+1222,7
@@
void AutoPlayTape()
static struct
{
int graphic;
static struct
{
int graphic;
- struct
Rect
*pos;
+ struct
XY
*pos;
int gadget_id;
char *infotext;
} tapebutton_info[NUM_TAPE_BUTTONS] =
int gadget_id;
char *infotext;
} tapebutton_info[NUM_TAPE_BUTTONS] =
@@
-1256,7
+1261,7
@@
void CreateTapeButtons()
for (i = 0; i < NUM_TAPE_BUTTONS; i++)
{
struct GraphicInfo *gfx = &graphic_info[tapebutton_info[i].graphic];
for (i = 0; i < NUM_TAPE_BUTTONS; i++)
{
struct GraphicInfo *gfx = &graphic_info[tapebutton_info[i].graphic];
- struct
Rect
*pos = tapebutton_info[i].pos;
+ struct
XY
*pos = tapebutton_info[i].pos;
struct GadgetInfo *gi;
int gd_x = gfx->src_x;
int gd_y = gfx->src_y;
struct GadgetInfo *gi;
int gd_x = gfx->src_x;
int gd_y = gfx->src_y;