OSDN Git Service

[fix] #41503 超能力者でゲームを開始しようとするとクラッシュ
[hengband/hengband.git] / src / main / angband-headers.h
1 #pragma once
2
3 #include "system/angband.h"
4
5 /*!
6  * @brief 各初期データ用ヘッダ構造体 / Template file header information (see "init.c").
7  */
8 typedef struct angband_header angband_header;
9 typedef errr (*parse_info_txt_func)(char *buf, angband_header *head);
10
11 struct angband_header {
12     byte v_major; /* Version -- major */
13     byte v_minor; /* Version -- minor */
14     byte v_patch; /* Version -- patch */
15     byte v_extra; /* Version -- extra */
16
17     u16b info_num; /* Number of "info" records */
18     int info_len; /* Size of each "info" record */
19     u16b head_size; /* Size of the "header" in bytes */
20
21     STR_OFFSET info_size; /* Size of the "info" array in bytes */
22     STR_OFFSET name_size; /* Size of the "name" array in bytes */
23     STR_OFFSET text_size; /* Size of the "text" array in bytes */
24     STR_OFFSET tag_size; /* Size of the "tag" array in bytes */
25
26     void *info_ptr;
27     char *name_ptr;
28     char *text_ptr;
29     char *tag_ptr;
30
31     parse_info_txt_func parse_info_txt;
32
33     void (*retouch)(angband_header *head);
34 };
35
36 extern angband_header f_head;
37 extern angband_header v_head;
38 extern angband_header k_head;
39 extern angband_header a_head;
40 extern angband_header e_head;
41 extern angband_header r_head;
42 extern angband_header d_head;
43 extern angband_header s_head;
44 extern angband_header m_head;