ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/server/random_maps/exit.C
(Generate patch)

Comparing deliantra/server/random_maps/exit.C (file contents):
Revision 1.6 by root, Thu Sep 14 22:34:02 2006 UTC vs.
Revision 1.8 by root, Tue Dec 12 20:53:03 2006 UTC

121 5 means northward 121 5 means northward
122 6 means southward 122 6 means southward
123*/ 123*/
124 124
125void 125void
126place_exits (mapstruct *map, char **maze, char *exitstyle, int orientation, RMParms * RP) 126place_exits (maptile *map, char **maze, char *exitstyle, int orientation, RMParms * RP)
127{ 127{
128 char styledirname[256]; 128 char styledirname[256];
129 mapstruct *style_map_down = 0; /* harder maze */ 129 maptile *style_map_down = 0; /* harder maze */
130 mapstruct *style_map_up = 0; /* easier maze */ 130 maptile *style_map_up = 0; /* easier maze */
131 object *the_exit_down; /* harder maze */ 131 object *the_exit_down; /* harder maze */
132 object *the_exit_up; /* easier maze */ 132 object *the_exit_up; /* easier maze */
133 object *random_sign; /* magic mouth saying this is a random map. */ 133 object *random_sign; /* magic mouth saying this is a random map. */
134 char buf[512]; 134 char buf[512];
135 int cx = -1, cy = -1; /* location of a map center */ 135 int cx = -1, cy = -1; /* location of a map center */
314 write_map_parameters_to_string (buf, RP); 314 write_map_parameters_to_string (buf, RP);
315 the_exit_down->msg = buf; 315 the_exit_down->msg = buf;
316 /* the identifier for making a random map. */ 316 /* the identifier for making a random map. */
317 if (RP->dungeon_level >= RP->dungeon_depth && RP->final_map[0] != 0) 317 if (RP->dungeon_level >= RP->dungeon_depth && RP->final_map[0] != 0)
318 { 318 {
319 mapstruct *new_map; 319 maptile *new_map;
320 object *the_exit_back = arch_to_object (the_exit_up->arch), *tmp; 320 object *the_exit_back = arch_to_object (the_exit_up->arch), *tmp;
321 321
322#if 0 322#if 0
323 /* I'm not sure if there was any reason to change the path to the 323 /* I'm not sure if there was any reason to change the path to the
324 * map other than to maybe make it more descriptive in the 'maps' 324 * map other than to maybe make it more descriptive in the 'maps'
345 * would require keeping a 'next' pointer, ad free_object kills tmp, which 345 * would require keeping a 'next' pointer, ad free_object kills tmp, which
346 * breaks the for loop. 346 * breaks the for loop.
347 */ 347 */
348 if (tmp->type == EXIT && EXIT_PATH (tmp) && !strncmp (EXIT_PATH (tmp), "/random/", 8)) 348 if (tmp->type == EXIT && EXIT_PATH (tmp) && !strncmp (EXIT_PATH (tmp), "/random/", 8))
349 { 349 {
350 remove_ob (tmp); 350 tmp->remove ();
351 free_object (tmp); 351 tmp->destroy (0);
352 break; 352 break;
353 } 353 }
354 354
355 if (final_map_exit == 1) 355 if (final_map_exit == 1)
356 { 356 {
382 382
383/* this function unblocks the exits. We blocked them to 383/* this function unblocks the exits. We blocked them to
384 keep things from being dumped on them during the other 384 keep things from being dumped on them during the other
385 phases of random map generation. */ 385 phases of random map generation. */
386void 386void
387unblock_exits (mapstruct *map, char **maze, RMParms * RP) 387unblock_exits (maptile *map, char **maze, RMParms * RP)
388{ 388{
389 int i = 0, j = 0; 389 int i = 0, j = 0;
390 object *walk; 390 object *walk;
391 391
392 for (i = 0; i < RP->Xsize; i++) 392 for (i = 0; i < RP->Xsize; i++)

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines