projects
/
rocksndiamonds.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
rnd-20030525-1-src
[rocksndiamonds.git]
/
src
/
tools.c
diff --git
a/src/tools.c
b/src/tools.c
index 5bba1c107785e4bfbb5dc8dc1c70e03ca7037f4a..4fe2668937485e97ab2235f780cd78a38a3947c3 100644
(file)
--- a/
src/tools.c
+++ b/
src/tools.c
@@
-70,7
+70,7
@@
void SetDrawtoField(int mode)
void RedrawPlayfield(boolean force_redraw, int x, int y, int width, int height)
{
void RedrawPlayfield(boolean force_redraw, int x, int y, int width, int height)
{
- if (game_status == PLAYING)
+ if (game_status ==
GAME_MODE_
PLAYING)
{
if (force_redraw)
{
{
if (force_redraw)
{
@@
-118,7
+118,7
@@
void BackToFront()
int x,y;
DrawBuffer *buffer = (drawto_field == window ? backbuffer : drawto_field);
int x,y;
DrawBuffer *buffer = (drawto_field == window ? backbuffer : drawto_field);
- if (setup.direct_draw && game_status == PLAYING)
+ if (setup.direct_draw && game_status ==
GAME_MODE_
PLAYING)
redraw_mask &= ~REDRAW_MAIN;
if (redraw_mask & REDRAW_TILES && redraw_tiles > REDRAWTILES_THRESHOLD)
redraw_mask &= ~REDRAW_MAIN;
if (redraw_mask & REDRAW_TILES && redraw_tiles > REDRAWTILES_THRESHOLD)
@@
-130,7
+130,7
@@
void BackToFront()
if (redraw_mask == REDRAW_NONE)
return;
if (redraw_mask == REDRAW_NONE)
return;
- if (global.fps_slowdown && game_status == PLAYING)
+ if (global.fps_slowdown && game_status ==
GAME_MODE_
PLAYING)
{
static boolean last_frame_skipped = FALSE;
boolean skip_even_when_not_scrolling = TRUE;
{
static boolean last_frame_skipped = FALSE;
boolean skip_even_when_not_scrolling = TRUE;
@@
-175,7
+175,8
@@
void BackToFront()
if (redraw_mask & REDRAW_FIELD)
{
if (redraw_mask & REDRAW_FIELD)
{
- if (game_status != PLAYING || redraw_mask & REDRAW_FROM_BACKBUFFER)
+ if (game_status != GAME_MODE_PLAYING ||
+ redraw_mask & REDRAW_FROM_BACKBUFFER)
{
BlitBitmap(backbuffer, window,
REAL_SX, REAL_SY, FULL_SXSIZE, FULL_SYSIZE, REAL_SX, REAL_SY);
{
BlitBitmap(backbuffer, window,
REAL_SX, REAL_SY, FULL_SXSIZE, FULL_SYSIZE, REAL_SX, REAL_SY);
@@
-388,7
+389,7
@@
void ClearWindow()
{
DrawBackground(REAL_SX, REAL_SY, FULL_SXSIZE, FULL_SYSIZE);
{
DrawBackground(REAL_SX, REAL_SY, FULL_SXSIZE, FULL_SYSIZE);
- if (setup.soft_scrolling && game_status == PLAYING)
+ if (setup.soft_scrolling && game_status ==
GAME_MODE_
PLAYING)
{
ClearRectangle(fieldbuffer, 0, 0, FXSIZE, FYSIZE);
SetDrawtoField(DRAW_BUFFERED);
{
ClearRectangle(fieldbuffer, 0, 0, FXSIZE, FYSIZE);
SetDrawtoField(DRAW_BUFFERED);
@@
-396,7
+397,7
@@
void ClearWindow()
else
SetDrawtoField(DRAW_BACKBUFFER);
else
SetDrawtoField(DRAW_BACKBUFFER);
- if (setup.direct_draw && game_status == PLAYING)
+ if (setup.direct_draw && game_status ==
GAME_MODE_
PLAYING)
{
ClearRectangle(window, REAL_SX, REAL_SY, FULL_SXSIZE, FULL_SYSIZE);
SetDrawtoField(DRAW_DIRECT);
{
ClearRectangle(window, REAL_SX, REAL_SY, FULL_SXSIZE, FULL_SYSIZE);
SetDrawtoField(DRAW_DIRECT);
@@
-1072,9
+1073,9
@@
void DrawScreenElementExt(int x, int y, int dx, int dy, int element,
{
boolean left_stopped = FALSE, right_stopped = FALSE;
{
boolean left_stopped = FALSE, right_stopped = FALSE;
- if (!IN_LEV_FIELD(lx - 1, ly) || IS_
MAUER
(Feld[lx - 1][ly]))
+ if (!IN_LEV_FIELD(lx - 1, ly) || IS_
WALL
(Feld[lx - 1][ly]))
left_stopped = TRUE;
left_stopped = TRUE;
- if (!IN_LEV_FIELD(lx + 1, ly) || IS_
MAUER
(Feld[lx + 1][ly]))
+ if (!IN_LEV_FIELD(lx + 1, ly) || IS_
WALL
(Feld[lx + 1][ly]))
right_stopped = TRUE;
if (left_stopped && right_stopped)
right_stopped = TRUE;
if (left_stopped && right_stopped)
@@
-1198,7
+1199,8
@@
static void DrawLevelFieldCrumbledSandExt(int x, int y, int graphic, int frame)
element = (IN_LEV_FIELD(xx, yy) ? Feld[xx][yy] : EL_STEELWALL);
element = (IN_LEV_FIELD(xx, yy) ? Feld[xx][yy] : EL_STEELWALL);
- if (CAN_BE_CRUMBLED(element)) /* neighbour is of same type */
+ /* check if neighbour field is of same type */
+ if (CAN_BE_CRUMBLED(element))
continue;
if (i == 1 || i == 2)
continue;
if (i == 1 || i == 2)
@@
-1588,7
+1590,8
@@
void DrawMicroLevel(int xpos, int ypos, boolean restart)
static int label_state, label_counter;
int last_game_status = game_status; /* save current game status */
static int label_state, label_counter;
int last_game_status = game_status; /* save current game status */
- game_status = PSEUDO_PREVIEW; /* force PREVIEW font on preview level */
+ /* force PREVIEW font on preview level */
+ game_status = GAME_MODE_PSEUDO_PREVIEW;
if (restart)
{
if (restart)
{
@@
-1711,7
+1714,7
@@
boolean Request(char *text, unsigned int req_state)
#if defined(PLATFORM_UNIX)
/* pause network game while waiting for request to answer */
if (options.network &&
#if defined(PLATFORM_UNIX)
/* pause network game while waiting for request to answer */
if (options.network &&
- game_status == PLAYING &&
+ game_status ==
GAME_MODE_
PLAYING &&
req_state & REQUEST_WAIT_FOR)
SendToServer_PausePlaying();
#endif
req_state & REQUEST_WAIT_FOR)
SendToServer_PausePlaying();
#endif
@@
-1732,7
+1735,8
@@
boolean Request(char *text, unsigned int req_state)
/* clear door drawing field */
DrawBackground(DX, DY, DXSIZE, DYSIZE);
/* clear door drawing field */
DrawBackground(DX, DY, DXSIZE, DYSIZE);
- game_status = PSEUDO_DOOR; /* force DOOR font on preview level */
+ /* force DOOR font on preview level */
+ game_status = GAME_MODE_PSEUDO_DOOR;
/* write text for request */
for(ty=0; ty < MAX_REQUEST_LINES; ty++)
/* write text for request */
for(ty=0; ty < MAX_REQUEST_LINES; ty++)
@@
-1804,7
+1808,7
@@
boolean Request(char *text, unsigned int req_state)
return FALSE;
}
return FALSE;
}
- if (game_status !=
MAINMENU
)
+ if (game_status !=
GAME_MODE_MAIN
)
InitAnimation();
button_status = MB_RELEASED;
InitAnimation();
button_status = MB_RELEASED;
@@
-1928,7
+1932,7
@@
boolean Request(char *text, unsigned int req_state)
Delay(10);
}
Delay(10);
}
- if (game_status !=
MAINMENU
)
+ if (game_status !=
GAME_MODE_MAIN
)
StopAnimation();
UnmapToolButtons();
StopAnimation();
UnmapToolButtons();
@@
-1953,7
+1957,7
@@
boolean Request(char *text, unsigned int req_state)
#if defined(PLATFORM_UNIX)
/* continue network game after request */
if (options.network &&
#if defined(PLATFORM_UNIX)
/* continue network game after request */
if (options.network &&
- game_status == PLAYING &&
+ game_status ==
GAME_MODE_
PLAYING &&
req_state & REQUEST_WAIT_FOR)
SendToServer_ContinuePlaying();
#endif
req_state & REQUEST_WAIT_FOR)
SendToServer_ContinuePlaying();
#endif
@@
-2007,8
+2011,8
@@
unsigned int MoveDoor(unsigned int door_state)
static int door1 = DOOR_OPEN_1;
static int door2 = DOOR_CLOSE_2;
static unsigned long door_delay = 0;
static int door1 = DOOR_OPEN_1;
static int door2 = DOOR_CLOSE_2;
static unsigned long door_delay = 0;
- int x, start, stepsize =
global.door_
step_offset;
- unsigned long door_delay_value =
global.door_
step_delay;
+ int x, start, stepsize =
door.
step_offset;
+ unsigned long door_delay_value =
door.
step_delay;
if (door_state == DOOR_GET_STATE)
return(door1 | door2);
if (door_state == DOOR_GET_STATE)
return(door1 | door2);
@@
-2146,7
+2150,7
@@
unsigned int MoveDoor(unsigned int door_state)
BackToFront();
BackToFront();
- if (game_status ==
MAINMENU
)
+ if (game_status ==
GAME_MODE_MAIN
)
DoAnimation();
}
}
DoAnimation();
}
}
@@
-2387,6
+2391,7
@@
int get_next_element(int element)
int el_act_dir2img(int element, int action, int direction)
{
int el_act_dir2img(int element, int action, int direction)
{
+ element = GFX_ELEMENT(element);
direction = MV_DIR_BIT(direction);
return element_info[element].direction_graphic[action][direction];
direction = MV_DIR_BIT(direction);
return element_info[element].direction_graphic[action][direction];
@@
-2394,25
+2399,35
@@
int el_act_dir2img(int element, int action, int direction)
int el_act2img(int element, int action)
{
int el_act2img(int element, int action)
{
+ element = GFX_ELEMENT(element);
+
return element_info[element].graphic[action];
}
int el_dir2img(int element, int direction)
{
return element_info[element].graphic[action];
}
int el_dir2img(int element, int direction)
{
+ element = GFX_ELEMENT(element);
+
return el_act_dir2img(element, ACTION_DEFAULT, direction);
}
int el2img(int element)
{
return el_act_dir2img(element, ACTION_DEFAULT, direction);
}
int el2img(int element)
{
+ element = GFX_ELEMENT(element);
+
return element_info[element].graphic[ACTION_DEFAULT];
}
int el2edimg(int element)
{
return element_info[element].graphic[ACTION_DEFAULT];
}
int el2edimg(int element)
{
+ element = GFX_ELEMENT(element);
+
return element_info[element].special_graphic[GFX_SPECIAL_ARG_EDITOR];
}
int el2preimg(int element)
{
return element_info[element].special_graphic[GFX_SPECIAL_ARG_EDITOR];
}
int el2preimg(int element)
{
+ element = GFX_ELEMENT(element);
+
return element_info[element].special_graphic[GFX_SPECIAL_ARG_PREVIEW];
}
return element_info[element].special_graphic[GFX_SPECIAL_ARG_PREVIEW];
}