projects
/
rocksndiamonds.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
rnd-20070401-1-src
[rocksndiamonds.git]
/
src
/
tools.c
diff --git
a/src/tools.c
b/src/tools.c
index ba774925f95d7128c5a3c9c8be3f48cbdf8b9aa8..9530644e204d1787fbe18e240867c44b5923b7e9 100644
(file)
--- a/
src/tools.c
+++ b/
src/tools.c
@@
-662,25
+662,46
@@
void FadeCrossSaveBackbuffer()
BlitBitmap(backbuffer, bitmap_db_cross, 0, 0, WIN_XSIZE, WIN_YSIZE, 0, 0);
}
BlitBitmap(backbuffer, bitmap_db_cross, 0, 0, WIN_XSIZE, WIN_YSIZE, 0, 0);
}
+static void FadeSetLeaveNext(struct TitleFadingInfo fading_leave, boolean set)
+{
+ static struct TitleFadingInfo fading_leave_stored;
+
+ if (set)
+ fading_leave_stored = fading_leave;
+ else
+ fading = fading_leave_stored;
+}
+
void FadeSetEnterMenu()
{
fading = menu.enter_menu;
void FadeSetEnterMenu()
{
fading = menu.enter_menu;
+
+ FadeSetLeaveNext(fading, TRUE); /* (keep same fade mode) */
}
void FadeSetLeaveMenu()
{
fading = menu.leave_menu;
}
void FadeSetLeaveMenu()
{
fading = menu.leave_menu;
+
+ FadeSetLeaveNext(fading, TRUE); /* (keep same fade mode) */
+}
+
+void FadeSetEnterScreen()
+{
+ fading = menu.enter_screen[game_status];
+
+ FadeSetLeaveNext(menu.leave_screen[game_status], TRUE); /* store */
}
}
-void FadeSet
StartItem
()
+void FadeSet
LeaveScreen
()
{
{
- fading = menu.start_item;
+ FadeSetLeaveNext(menu.leave_screen[game_status], FALSE); /* recall */
}
void FadeSetFromType(int type)
{
if (type & TYPE_ENTER_SCREEN)
}
void FadeSetFromType(int type)
{
if (type & TYPE_ENTER_SCREEN)
- FadeSet
StartItem
();
+ FadeSet
EnterScreen
();
else if (type & TYPE_ENTER)
FadeSetEnterMenu();
else if (type & TYPE_LEAVE)
else if (type & TYPE_ENTER)
FadeSetEnterMenu();
else if (type & TYPE_LEAVE)