version 1.81 | | version 1.82 |
---|
| | |
/* | | /* |
* static char *rcsid_init_c = | | * static char *rcsid_init_c = |
* "$Id: request.c,v 1.81 2006/01/13 21:26:27 akirschbaum Exp $"; | | * "$Id: request.c,v 1.82 2006/02/07 07:54:46 mwedel Exp $"; |
*/ | | */ |
| | |
/* | | /* |
| | |
New_Face *floor2; | | New_Face *floor2; |
int d, mflags; | | int d, mflags; |
struct Map newmap; | | struct Map newmap; |
mapstruct *m; | | mapstruct *m, *pm; |
| | |
if (pl->type != PLAYER) { | | if (pl->type != PLAYER) { |
LOG(llevError,"draw_client_map called with non player/non eric-server\n"); | | LOG(llevError,"draw_client_map called with non player/non eric-server\n"); |
return; | | return; |
} | | } |
| | |
/* IF player is just joining the game, he isn't here yet, so the map | | if (pl->contr->transport) { |
| | pm = pl->contr->transport->map; |
| | } |
| | else |
| | pm = pl->map; |
| | |
| | /* If player is just joining the game, he isn't here yet, so the map |
* can get swapped out. If so, don't try to send them a map. All will | | * can get swapped out. If so, don't try to send them a map. All will |
* be OK once they really log in. | | * be OK once they really log in. |
*/ | | */ |
if (pl->map==NULL || pl->map->in_memory!=MAP_IN_MEMORY) return; | | if (pm==NULL || pm->in_memory!=MAP_IN_MEMORY) return; |
| | |
memset(&newmap, 0, sizeof(struct Map)); | | memset(&newmap, 0, sizeof(struct Map)); |
| | |
| | |
for(i = (pl->x - pl->contr->socket.mapx/2) ; i < (pl->x + (pl->contr->socket.mapx+1)/2); i++) { | | for(i = (pl->x - pl->contr->socket.mapx/2) ; i < (pl->x + (pl->contr->socket.mapx+1)/2); i++) { |
ax=i; | | ax=i; |
ay=j; | | ay=j; |
m = pl->map; | | m = pm; |
mflags = get_map_flags(m, &m, ax, ay, &ax, &ay); | | mflags = get_map_flags(m, &m, ax, ay, &ax, &ay); |
if (mflags & P_OUT_OF_MAP) | | if (mflags & P_OUT_OF_MAP) |
continue; | | continue; |
| | |
*/ | | */ |
nx = i; | | nx = i; |
ny = j; | | ny = j; |
m = get_map_from_coord(pl->map, &nx, &ny); | | m = get_map_from_coord(pm, &nx, &ny); |
if (m && d<4) { | | if (m && d<4) { |
face = GET_MAP_FACE(m, nx, ny,0); | | face = GET_MAP_FACE(m, nx, ny,0); |
floor2 = GET_MAP_FACE(m, nx, ny,1); | | floor2 = GET_MAP_FACE(m, nx, ny,1); |