|
From: <cro...@li...> - 2003-08-08 17:06:41
|
Module Name: client
Committed By: tchize
Date: Fri Aug 8 17:06:40 UTC 2003
Modified Files:
client/gtk: map.c
Log Message:
Fixed a bug in gtk client which cleared multipart object when tail was
scrolling in the map.
Start of context diffs
Index: client/gtk/map.c
diff -c client/gtk/map.c:1.15 client/gtk/map.c:1.16
*** client/gtk/map.c:1.15 Wed Jul 16 05:36:31 2003
--- client/gtk/map.c Fri Aug 8 10:06:40 2003
***************
*** 1,6 ****
/*
* static char *rcsid_map_c =
! * "$Id: map.c,v 1.15 2003/07/16 12:36:31 tchize Exp $";
*/
/*
Crossfire client, a client program for the crossfire program.
--- 1,6 ----
/*
* static char *rcsid_map_c =
! * "$Id: map.c,v 1.16 2003/08/08 17:06:40 tchize Exp $";
*/
/*
Crossfire client, a client program for the crossfire program.
***************
*** 355,363 ****
if( x < 0 || y < 0 || x >= the_map.x || y >= the_map.y)
continue;
!
the_map.cells[x][y].need_update= 1;
! the_map.cells[x][y].cleared= 1;
}
} /* for y */
} /* for x */
--- 355,370 ----
if( x < 0 || y < 0 || x >= the_map.x || y >= the_map.y)
continue;
!
the_map.cells[x][y].need_update= 1;
! /*After long long long investigations on why the multipart objects did
! disappear when entering map view from right or bottom, scrolling
! through whole server code, i concluded the following line should be
! commented. If a multipart object was on a square outside of map,
! containing the tail, tail may be cleared by following process and
! so we end up with things like tower disappearance.
! tc...@my...*/
! /*the_map.cells[x][y].cleared= 1;*/
}
} /* for y */
} /* for x */
***************
*** 365,371 ****
#ifdef HAVE_SDL
if (use_config[CONFIG_SDL])
sdl_mapscroll(dx,dy);
! else
#endif
map_did_scroll = 1;
/* fprintf(stderr,"scroll command: %d %d\n", dx, dy);*/
--- 372,378 ----
#ifdef HAVE_SDL
if (use_config[CONFIG_SDL])
sdl_mapscroll(dx,dy);
! else
#endif
map_did_scroll = 1;
/* fprintf(stderr,"scroll command: %d %d\n", dx, dy);*/
***************
*** 439,445 ****
sfaces[i]=0; /*black picture*/
}else{
slevels[i]=the_map.cells[emx][emy].smooth[layer];
! sfaces[i]=getsmooth(the_map.cells[emx][emy].heads[layer].face);
dosmooth=1;
}
}
--- 446,452 ----
sfaces[i]=0; /*black picture*/
}else{
slevels[i]=the_map.cells[emx][emy].smooth[layer];
! sfaces[i]=getsmooth(the_map.cells[emx][emy].heads[layer].face);
dosmooth=1;
}
}
***************
*** 532,538 ****
my = y + pl_pos.y;
/* Don't need to touch this space */
! if (!redraw && !the_map.cells[mx][my].need_update && !map_did_scroll&& !the_map.cells[mx][my].need_resmooth)
continue;
/* First, we need to black out this space. */
gdk_draw_rectangle(mapwindow, drawingarea->style->black_gc, TRUE, x * map_image_size, y * map_image_size, map_image_size, map_image_size);
--- 539,545 ----
my = y + pl_pos.y;
/* Don't need to touch this space */
! if (!redraw && !the_map.cells[mx][my].need_update && !map_did_scroll&& !the_map.cells[mx][my].need_resmooth)
continue;
/* First, we need to black out this space. */
gdk_draw_rectangle(mapwindow, drawingarea->style->black_gc, TRUE, x * map_image_size, y * map_image_size, map_image_size, map_image_size);
|