|
Crossfire Server, Trunk
|
Include dependency graph for room_gen_spiral.c:Go to the source code of this file.
Macros | |
| #define | FINE_SPIRAL 2 |
| #define | FIT_SPIRAL 4 |
| #define | MAX(x, y) (((x) < (y)) ? (y) : (x)) |
| #define | MAX_FINE .454545 |
| #define | MAX_SPIRAL_OPT 8 |
| #define | MIN(x, y) (((x) < (y)) ? (x) : (y)) |
| #define | RANDOM_OPTIONS 0 |
| #define | REGULAR_SPIRAL 1 |
Functions | |
| void | connect_spirals (int xsize, int ysize, int sym, char **layout) |
| char ** | map_gen_spiral (int xsize, int ysize, int option, int _unused_layers) |
| int | surround_check (char **maze, int i, int j, int xsize, int ysize) |
The spiral room generator:
Definition in file room_gen_spiral.c.
| #define FINE_SPIRAL 2 |
uses the min. separation: most coiling
Definition at line 33 of file room_gen_spiral.c.
| #define FIT_SPIRAL 4 |
scale to a rectangular region, not square
Definition at line 34 of file room_gen_spiral.c.
| #define MAX | ( | x, | |
| y | |||
| ) | (((x) < (y)) ? (y) : (x)) |
Definition at line 44 of file room_gen_spiral.c.
| #define MAX_FINE .454545 |
Definition at line 47 of file room_gen_spiral.c.
| #define MAX_SPIRAL_OPT 8 |
this should be 2x the last real option
Definition at line 35 of file room_gen_spiral.c.
| #define MIN | ( | x, | |
| y | |||
| ) | (((x) < (y)) ? (x) : (y)) |
Definition at line 41 of file room_gen_spiral.c.
| #define RANDOM_OPTIONS 0 |
Pick random options below
Definition at line 31 of file room_gen_spiral.c.
| #define REGULAR_SPIRAL 1 |
Regular spiral–distance increases constantly
Definition at line 32 of file room_gen_spiral.c.
| void connect_spirals | ( | int | xsize, |
| int | ysize, | ||
| int | sym, | ||
| char ** | layout | ||
| ) |
Connects disjoint spirals which may result from the symmetrization process.
| xsize | |
| ysize | layout size. |
| sym | one of the SYM_xxx values. |
| layout | layout to alter. |
Definition at line 159 of file room_gen_spiral.c.
References surround_check(), X_SYM, XY_SYM, and Y_SYM.
Referenced by symmetrize_layout().
Here is the call graph for this function:
Here is the caller graph for this function:| char** map_gen_spiral | ( | int | xsize, |
| int | ysize, | ||
| int | option, | ||
| int | _unused_layers | ||
| ) |
Generates a spiral layout.
| xsize | |
| ysize | layout size. |
| option | combination of SPIRAL_xxx values. |
| _unused_layers | unused. |
Definition at line 62 of file room_gen_spiral.c.
References FINE_SPIRAL, FIT_SPIRAL, make_face_from_files::int, MAX_FINE, MAX_SPIRAL_OPT, MIN, CFweardisguise::option, RANDOM, REGULAR_SPIRAL, nlohmann::detail::void(), diamondslots::x, and diamondslots::y.
Referenced by layoutgen().
Here is the call graph for this function:
Here is the caller graph for this function:| int surround_check | ( | char ** | layout, |
| int | i, | ||
| int | j, | ||
| int | Xsize, | ||
| int | Ysize | ||
| ) |
Checks free spots around a spot.
| layout | map layout. |
| i | |
| j | coordinates to check. |
| Xsize | |
| Ysize | size of the layout. |
Definition at line 280 of file rogue_layout.c.
Referenced by connect_spirals(), and roguelike_layout_gen().
Here is the caller graph for this function: