| version 1.13 | | version 1.14 |
|---|
| | |
| /* | | /* |
| * static char *rcsid_swap_c = | | * static char *rcsid_swap_c = |
| * "$Id: swap.c,v 1.13 2002/11/26 08:57:56 garbled Exp $"; | | * "$Id: swap.c,v 1.14 2003/03/03 05:13:08 mwedel Exp $"; |
| */ | | */ |
| | | |
| /* | | /* |
| | |
| mapstruct *map; | | mapstruct *map; |
| char buf[MAX_BUF],*cp,*cp1; | | char buf[MAX_BUF],*cp,*cp1; |
| int do_los, darkness, lock; | | int do_los, darkness, lock; |
| | | long sec = seconds(); |
| | | |
| | | |
| sprintf(buf,"%s/temp.maps", settings.localdir); | | sprintf(buf,"%s/temp.maps", settings.localdir); |
| if (!(fp=fopen(buf,"r"))) { | | if (!(fp=fopen(buf,"r"))) { |
| | |
| &lock, &map->difficulty, &do_los, | | &lock, &map->difficulty, &do_los, |
| &darkness); | | &darkness); |
| | | |
| | | |
| map->in_memory=MAP_SWAPPED; | | map->in_memory=MAP_SWAPPED; |
| map->darkness=darkness; | | map->darkness=darkness; |
| | | |
| | | /* When the reset time is saved out, it is adjusted so that |
| | | * the current time is subtracted (thus, it is saved as number |
| | | * of seconds from current time that it should reset). We need |
| | | * to add in the current seconds for this to work right. |
| | | * On metalforge, strange behavior was observed with really high |
| | | * reset times - I don't know how they got to that state, |
| | | * but easy enough to do some sanity checking here. |
| | | */ |
| | | map->reset_time += sec; |
| | | if (map->reset_time > (sec + MAP_MAXRESET)) |
| | | map->reset_time = 0; |
| | | |
| } | | } |
| fclose(fp); | | fclose(fp); |
| } | | } |