|
Crossfire Server, Trunk
|
#include "global.h"#include <stdlib.h>#include <string.h>#include "random_map.h"#include "rproto.h"#include "sproto.h"
Include dependency graph for exit.c:Go to the source code of this file.
Functions | |
| void | find_in_layout (int mode, char target, int *fx, int *fy, char **layout, RMParms *RP) |
| void | place_exits (mapstruct *map, char **maze, char *exitstyle, int orientation, RMParms *RP) |
| void | unblock_exits (mapstruct *map, char **maze, RMParms *RP) |
Handle exit placement in map.
Definition in file exit.c.
| void find_in_layout | ( | int | mode, |
| char | target, | ||
| int * | fx, | ||
| int * | fy, | ||
| char ** | layout, | ||
| RMParms * | RP | ||
| ) |
Find a character in the layout.
| mode | how to look:
|
| target | character to search. |
| fx | |
| fy | position of character, or -1 if not found. |
| layout | maze. |
| RP | maze parameters. |
Definition at line 47 of file exit.c.
References RANDOM, RMParms::Xsize, and RMParms::Ysize.
Referenced by place_exits().
Here is the caller graph for this function:Place exits in the map.
| map | map to put exits into. |
| maze | map layout. |
| exitstyle | what style to use. If NULL uses a random one. |
| orientation | how exits should be oriented:
|
| RP | map parameters. |
Definition at line 144 of file exit.c.
References add_string(), archininventory::arch, obj::arch, arch_to_object(), buf, create_archetype(), RMParms::dungeon_depth, RMParms::dungeon_level, EXIT, RMParms::exit_on_final_map, EXIT_PATH, EXIT_X, EXIT_Y, RMParms::final_exit_archetype, RMParms::final_map, find_archetype(), find_in_layout(), find_style(), FOR_MAP_FINISH, FOR_MAP_PREPARE, freearr_x, freearr_y, liv::hp, disinfect::map, MAP_ENTER_X, MAP_ENTER_Y, MOVE_ALL, obj::move_block, object_find_first_free_spot(), object_free_drop_inventory(), object_insert_in_map_at(), object_remove(), object_set_msg(), RMParms::origin_map, RMParms::origin_x, RMParms::origin_y, mapdef::path, pick_random_object(), RANDOM, ready_map_name(), mapdef::reset_group, set_map_timeout(), obj::slaying, liv::sp, obj::stats, stringbuffer_finish(), Ice::tmp, try_find_archetype(), wall_blocked(), write_map_parameters_to_string(), obj::x, RMParms::Xsize, obj::y, and RMParms::Ysize.
Referenced by generate_random_map().
Here is the call graph for this function:
Here is the caller graph for this function:This function unblocks the exits. We blocked them to keep things from being dumped on them during the other phases of random map generation.
| map | map to alter. |
| maze | map layout. |
| RP | map generation parameters. |
Definition at line 401 of file exit.c.
References FOR_MAP_FINISH, FOR_MAP_PREPARE, LOCKED_DOOR, disinfect::map, MOVE_ALL, MOVE_BLOCK_DEFAULT, object_update(), UP_OBJ_CHANGE, RMParms::Xsize, and RMParms::Ysize.
Referenced by generate_random_map().
Here is the call graph for this function:
Here is the caller graph for this function: