version 1.38 | | version 1.39 |
---|
| | |
/* | | /* |
* static char *rcsid_move_c = | | * static char *rcsid_move_c = |
* "$Id: move.c,v 1.38 2006/01/11 08:05:36 mwedel Exp $"; | | * "$Id: move.c,v 1.39 2006/02/07 07:54:46 mwedel Exp $"; |
*/ | | */ |
| | |
/* | | /* |
| | |
* on edge of map, +=x, +=y doesn't make correct coordinates. | | * on edge of map, +=x, +=y doesn't make correct coordinates. |
*/ | | */ |
for(tmp = op; tmp != NULL; tmp = tmp->more) { | | for(tmp = op; tmp != NULL; tmp = tmp->more) { |
tmp->x = newx + tmp->arch->clone.x; | | tmp->x += freearr_x[dir]; |
tmp->y = newy + tmp->arch->clone.y; | | tmp->y += freearr_y[dir]; |
tmp->map = m; | | tmp->map = get_map_from_coord(tmp->map, &tmp->x, &tmp->y); |
} | | } |
| | |
/* insert_ob_in_map will deal with any tiling issues */ | | /* insert_ob_in_map will deal with any tiling issues */ |
| | |
op->contr->socket.update_look=1; | | op->contr->socket.update_look=1; |
op->contr->socket.look_position=0; | | op->contr->socket.look_position=0; |
} | | } |
| | else if (op->type == TRANSPORT) { |
| | object *pl; |
| | |
| | for (pl=op->inv; pl; pl=pl->below) { |
| | if (pl->type == PLAYER) { |
| | pl->contr->do_los=1; |
| | pl->map = op->map; |
| | pl->x = op->x; |
| | pl->y = op->y; |
| | esrv_map_scroll(&pl->contr->socket, freearr_x[dir],freearr_y[dir]); |
| | pl->contr->socket.update_look=1; |
| | pl->contr->socket.look_position=0; |
| | } |
| | } |
| | } |
| | |
return 1; /* this shouldn't be reached */ | | return 1; /* this shouldn't be reached */ |
} | | } |