OSDN Git Service

15c24793321b92f5a2692ebd80f4e91b0581a31c
[hengbandforosx/hengbandosx.git] / src / lore / lore-util.h
1 #pragma once
2
3 #include "system/angband.h"
4 #include "system/monster-race-definition.h"
5
6 typedef enum monster_sex {
7     MSEX_NONE = 0,
8     MSEX_MALE = 1,
9     MSEX_FEMALE = 2,
10 } monster_sex;
11
12 typedef struct lore_type {
13 #ifdef JP
14     char jverb_buf[64];
15 #else
16     bool sin;
17 #endif
18     bool nightmare;
19     monster_race *r_ptr;
20     SPEED speed;
21     ITEM_NUMBER drop_gold;
22     ITEM_NUMBER drop_item;
23     BIT_FLAGS flags1;
24     BIT_FLAGS flags2;
25     BIT_FLAGS flags3;
26     BIT_FLAGS flags4;
27     BIT_FLAGS a_ability_flags1;
28     BIT_FLAGS a_ability_flags2;
29     BIT_FLAGS flags7;
30     BIT_FLAGS flagsr;
31     bool reinforce;
32     bool know_everything;
33     BIT_FLAGS mode;
34     monster_sex msex;
35     bool old;
36     MONRACE_IDX r_idx;
37     int vn;
38     byte color[96];
39     concptr vp[96];
40     char tmp_msg[96][96];
41     bool breath;
42     bool magic;
43     int drop_quantity;
44     concptr drop_quality;
45     concptr p;
46     concptr q;
47     rbm_type method;
48     int count;
49 } lore_type;
50
51 typedef enum monster_lore_mode { 
52     MONSTER_LORE_NORMAL,
53     MONSTER_LORE_RESEARCH,
54     MONSTER_LORE_DEBUG
55 } monster_lore_mode;
56
57 typedef void (*hook_c_roff_pf)(TERM_COLOR attr, concptr str);
58 extern hook_c_roff_pf hook_c_roff;
59
60 extern concptr wd_he[3];
61 extern concptr wd_his[3];
62
63 lore_type *initialize_lore_type(lore_type *lore_ptr, MONRACE_IDX r_idx, monster_lore_mode mode);
64 void hooked_roff(concptr str);