OSDN Git Service

[fix] MPの無い職業に設定される定数を定義
[hengband/hengband.git] / src / player / player-class.h
1 #pragma once
2
3 /* 人畜無害なenumヘッダを先に読み込む */
4 #include "player/player-classes-types.h"
5 #include "object/tval-types.h"
6 #include "realm/realm-types.h"
7 #include "system/angband.h"
8 #include "spell/technic-info-table.h"
9
10 /** m_info.txtでMPの無い職業に設定される */
11 #define SPELL_FIRST_NO_SPELL 99
12
13 /*
14  * Information about the player's "magic"
15  *
16  * Note that a player with a "spell_book" of "zero" is illiterate.
17  */
18
19 typedef struct player_magic {
20         tval_type spell_book; /* Tval of spell books (if any) */
21         int spell_xtra;         /* Something for later */
22
23         int spell_stat;         /* Stat for spells (if any)  */
24         int spell_type;         /* Spell type (mage/priest) */
25
26         int spell_first;                /* Level of first spell */
27         int spell_weight;               /* Weight that hurts spells */
28
29         magic_type info[MAX_MAGIC][32];    /* The available spells */
30 } player_magic;
31
32 extern player_magic *m_info;
33 extern const player_magic *mp_ptr;
34
35 /*
36  * Player class info
37  */
38
39 typedef struct player_class player_class;
40
41 struct player_class
42 {
43         concptr title;                  /* Type of class */
44
45 #ifdef JP
46         concptr E_title;                /* 英語職業 */
47 #endif
48         s16b c_adj[6];          /* Class stat modifier */
49
50         s16b c_dis;                     /* class disarming */
51         s16b c_dev;                     /* class magic devices */
52         s16b c_sav;                     /* class saving throws */
53         s16b c_stl;                     /* class stealth */
54         s16b c_srh;                     /* class searching ability */
55         s16b c_fos;                     /* class searching frequency */
56         s16b c_thn;                     /* class to hit (normal) */
57         s16b c_thb;                     /* class to hit (bows) */
58
59         s16b x_dis;                     /* extra disarming */
60         s16b x_dev;                     /* extra magic devices */
61         s16b x_sav;                     /* extra saving throws */
62         s16b x_stl;                     /* extra stealth */
63         s16b x_srh;                     /* extra searching ability */
64         s16b x_fos;                     /* extra searching frequency */
65         s16b x_thn;                     /* extra to hit (normal) */
66         s16b x_thb;                     /* extra to hit (bows) */
67
68         s16b c_mhp;                     /* Class hit-dice adjustment */
69         s16b c_exp;                     /* Class experience factor */
70
71         byte pet_upkeep_div; /* Pet upkeep divider */
72
73     int num;
74     int wgt;
75     int mul;
76 };
77
78 extern const player_class *cp_ptr;
79 extern const player_class class_info[MAX_CLASS];
80
81 extern const concptr player_title[MAX_CLASS][10];