OSDN Git Service

[Refactor] #37353 autopick.h を作成して関連構造体と変数を移動.
[hengband/hengband.git] / src / autopick.h
1 #pragma once
2
3 /*!
4  * @struct autopick_type
5  * @brief 自動拾い/破壊設定データの構造体 / A structure type for entry of auto-picker/destroyer
6  */
7 typedef struct {
8         concptr name;          /*!< 自動拾い/破壊定義の名称一致基準 / Items which have 'name' as part of its name match */
9         concptr insc;          /*!< 対象となったアイテムに自動で刻む内容 / Items will be auto-inscribed as 'insc' */
10         BIT_FLAGS flag[2];       /*!< キーワードに関する汎用的な条件フラグ / Misc. keyword to be matched */
11         byte action;        /*!< 対象のアイテムを拾う/破壊/放置するかの指定フラグ / Auto-pickup or Destroy or Leave items */
12         byte dice;          /*!< 武器のダイス値基準値 / Weapons which have more than 'dice' dice match */
13         byte bonus;         /*!< アイテムのボーナス基準値 / Items which have more than 'bonus' magical bonus match */
14 } autopick_type;
15
16 /*
17  *  List for auto-picker/destroyer entries
18  */
19 extern int max_autopick;
20 extern int max_max_autopick;
21 extern autopick_type *autopick_list;
22
23 /* autopick.c */
24 extern void autopick_load_pref(bool disp_mes);
25 extern errr process_autopick_file_command(char *buf);
26 extern concptr autopick_line_from_entry(autopick_type *entry);
27 extern int is_autopick(object_type *o_ptr);
28 extern void autopick_alter_item(INVENTORY_IDX item, bool destroy);
29 extern void autopick_delayed_alter(void);
30 extern void autopick_pickup_items(grid_type *g_ptr);
31 extern bool autopick_autoregister(object_type *o_ptr);
32 extern void do_cmd_edit_autopick(void);