OSDN Git Service

34fc4b8f7ca01e567a797cc02a898af602ebd038
[hengbandforosx/hengbandosx.git] / src / room / rooms.h
1 #pragma once
2
3 #include "system/angband.h"
4
5 #define DUN_ROOMS_MAX 40 /*!< 部屋生成処理の最大試行数 / Number of rooms to attempt (was 50) */
6
7 /* Maximum locked/jammed doors */
8 #define MAX_LJ_DOORS 8
9
10 #define MAX_DOOR_TYPES 3
11
12 /* A structure type for doors */
13 typedef struct door_type {
14     FEAT_IDX open;
15     FEAT_IDX broken;
16     FEAT_IDX closed;
17     FEAT_IDX locked[MAX_LJ_DOORS];
18     FEAT_IDX num_locked;
19     FEAT_IDX jammed[MAX_LJ_DOORS];
20     FEAT_IDX num_jammed;
21 } door_type;
22
23 extern door_type feat_door[MAX_DOOR_TYPES];
24
25 void build_lake(player_type *player_ptr, int type);
26 void build_cavern(player_type *player_ptr);
27 void build_small_room(player_type *player_ptr, POSITION x0, POSITION y0);
28 void add_outer_wall(player_type *player_ptr, POSITION x, POSITION y, int light, POSITION x1, POSITION y1, POSITION x2, POSITION y2);
29 POSITION dist2(POSITION x1, POSITION y1, POSITION x2, POSITION y2, POSITION h1, POSITION h2, POSITION h3, POSITION h4);
30 void build_recursive_room(player_type *player_ptr, POSITION x1, POSITION y1, POSITION x2, POSITION y2, int power);
31 void build_room(player_type *player_ptr, POSITION x1, POSITION x2, POSITION y1, POSITION y2);