Hengband  2.2.1
dungeon.h
[詳解]
1 #pragma once
2 #include "feature.h"
3 
4 #define DUNGEON_FEAT_PROB_NUM 3
5 
6 #define DUNGEON_ANGBAND 1
7 #define DUNGEON_GALGALS 2
8 #define DUNGEON_ORC 3
9 #define DUNGEON_MAZE 4
10 #define DUNGEON_DRAGON 5
11 #define DUNGEON_GRAVE 6
12 #define DUNGEON_WOOD 7
13 #define DUNGEON_VOLCANO 8
14 #define DUNGEON_HELL 9
15 #define DUNGEON_HEAVEN 10
16 #define DUNGEON_OCEAN 11
17 #define DUNGEON_CASTLE 12
18 #define DUNGEON_CTH 13
19 #define DUNGEON_MOUNTAIN 14
20 #define DUNGEON_GOLD 15
21 #define DUNGEON_NO_MAGIC 16
22 #define DUNGEON_NO_MELEE 17
23 #define DUNGEON_CHAMELEON 18
24 #define DUNGEON_DARKNESS 19
25 
26 /* A structure for the != dungeon types */
27 typedef struct dungeon_type dungeon_type;
28 struct dungeon_type {
29 
30  STR_OFFSET name; /* Name */
31  STR_OFFSET text; /* Description */
32 
35 
36  feat_prob floor[DUNGEON_FEAT_PROB_NUM]; /* Floor probability */
37  feat_prob fill[DUNGEON_FEAT_PROB_NUM]; /* Cave wall probability */
38  FEAT_IDX outer_wall; /* Outer wall tile */
39  FEAT_IDX inner_wall; /* Inner wall tile */
40  FEAT_IDX stream1; /* stream tile */
41  FEAT_IDX stream2; /* stream tile */
42 
43  DEPTH mindepth; /* Minimal depth */
44  DEPTH maxdepth; /* Maximal depth */
45  PLAYER_LEVEL min_plev; /* Minimal plev needed to enter -- it's an anti-cheating mesure */
48  BIT_FLAGS8 mode; /* Mode of combinaison of the monster flags */
49 
50  int min_m_alloc_level; /* Minimal number of monsters per level */
51  int max_m_alloc_chance; /* There is a 1/max_m_alloc_chance chance per round of creating a new monster */
52 
53  BIT_FLAGS flags1; /* Flags 1 */
54 
55  BIT_FLAGS mflags1; /* The monster flags that are allowed */
63 
68 
69  char r_char[5]; /* Monster race allowed */
70  KIND_OBJECT_IDX final_object; /* The object you'll find at the bottom */
71  ARTIFACT_IDX final_artifact; /* The artifact you'll find at the bottom */
72  MONRACE_IDX final_guardian; /* The artifact's guardian. If an artifact is specified, then it's NEEDED */
73 
74  PROB special_div; /* % of monsters affected by the flags/races allowed, to add some variety */
76  int obj_great;
77  int obj_good;
78 };
79 
80 extern DEPTH *max_dlv;
81 extern dungeon_type *d_info;
82 extern char *d_name;
83 extern char *d_text;
84 
DEPTH mindepth
Definition: dungeon.h:43
FEAT_IDX stream1
Definition: dungeon.h:40
BIT_FLAGS m_a_ability_flags2
Definition: dungeon.h:65
const char * concptr
文字列定数用ポインタ定義 / A simple pointer (to unmodifiable strings)
Definition: h-type.h:47
#define DUNGEON_FEAT_PROB_NUM
Definition: dungeon.h:4
char r_char[5]
Definition: dungeon.h:69
PLAYER_LEVEL min_plev
Definition: dungeon.h:45
BIT_FLAGS m_a_ability_flags1
Definition: dungeon.h:64
BIT_FLAGS m_a_ability_flags4
Definition: dungeon.h:67
s16b PROB
確率の重みの型定義
Definition: h-type.h:244
feat_prob fill[DUNGEON_FEAT_PROB_NUM]
Definition: dungeon.h:37
int tunnel_percent
Definition: dungeon.h:75
BIT_FLAGS m_a_ability_flags3
Definition: dungeon.h:66
BIT_FLAGS mflags4
Definition: dungeon.h:58
FEAT_IDX stream2
Definition: dungeon.h:41
KIND_OBJECT_IDX final_object
Definition: dungeon.h:70
STR_OFFSET name
Definition: dungeon.h:30
POSITION dx
Definition: dungeon.h:34
STR_OFFSET text
Definition: dungeon.h:31
s32b DEPTH
ゲーム中の階層レベルの型定義
Definition: h-type.h:216
BIT_FLAGS mflags8
Definition: dungeon.h:60
s16b MONRACE_IDX
ゲーム中のモンスター種族ID型を定義
Definition: h-type.h:128
POSITION dy
Definition: dungeon.h:33
BIT_FLAGS flags1
Definition: dungeon.h:53
u32b BIT_FLAGS
32ビットのフラグ配列の型定義
Definition: h-type.h:225
BIT_FLAGS mflagsr
Definition: dungeon.h:62
s32b POSITION
ゲーム中の座標型を定義
Definition: h-type.h:146
Definition: dungeon.h:28
MONRACE_IDX final_guardian
Definition: dungeon.h:72
BIT_FLAGS mflags7
Definition: dungeon.h:59
s16b PLAYER_LEVEL
ゲーム中のプレイヤーレベルの型を定義
Definition: h-type.h:197
int max_m_alloc_chance
Definition: dungeon.h:51
u16b BIT_FLAGS16
16ビットのフラグ配列の型定義
Definition: h-type.h:226
dungeon_type * d_info
Definition: dungeon.c:8
Definition: feature.h:154
byte BIT_FLAGS8
8ビットのフラグ配列の型定義
Definition: h-type.h:227
u32b STR_OFFSET
テキストオフセットの型定義
Definition: h-type.h:212
s16b DUNGEON_IDX
ゲーム中のダンジョンID型を定義
Definition: h-type.h:130
s16b KIND_OBJECT_IDX
ゲーム中のベースアイテムID型を定義
Definition: h-type.h:142
char * d_text
Definition: dungeon.c:10
DEPTH maxdepth
Definition: dungeon.h:44
int obj_great
Definition: dungeon.h:76
BIT_FLAGS8 mode
Definition: dungeon.h:48
DEPTH * max_dlv
Definition: dungeon.c:15
feat_prob floor[DUNGEON_FEAT_PROB_NUM]
Definition: dungeon.h:36
BIT_FLAGS16 pit
Definition: dungeon.h:46
FEAT_IDX inner_wall
Definition: dungeon.h:39
PROB special_div
Definition: dungeon.h:74
BIT_FLAGS mflags9
Definition: dungeon.h:61
char * d_name
Definition: dungeon.c:9
s16b ARTIFACT_IDX
ゲーム中のアーティファクトID型を定義
Definition: h-type.h:132
DUNGEON_IDX choose_dungeon(concptr note, POSITION y, POSITION x)
これまでに入ったダンジョンの一覧を表示し、選択させる。
Definition: dungeon.c:25
static void note(concptr str)
画面左下にシステムメッセージを表示する / Hack – take notes on line 23
Definition: init.c:1607
ARTIFACT_IDX final_artifact
Definition: dungeon.h:71
FEAT_IDX outer_wall
Definition: dungeon.h:38
int obj_good
Definition: dungeon.h:77
BIT_FLAGS mflags2
Definition: dungeon.h:56
BIT_FLAGS mflags1
Definition: dungeon.h:55
BIT_FLAGS mflags3
Definition: dungeon.h:57
int min_m_alloc_level
Definition: dungeon.h:50
BIT_FLAGS16 nest
Definition: dungeon.h:47
s16b FEAT_IDX
ゲーム中の地形ID型を定義
Definition: h-type.h:115