summaryrefslogtreecommitdiff
path: root/src/store_info_type.hpp
blob: a735fdfc3d7847ff1b1645378dae0fcb337cd0a4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#pragma once

#include "h-basic.h"
#include "store_flag_set.hpp"

/**
 * Number of items to choose stock from
 */
constexpr int STORE_CHOICES = 56;

/**
 * Store descriptor.
 */
struct store_info_type
{
	const char *name = nullptr;              /* Name */

	s16b item_kind[STORE_CHOICES] = { 0 };   /* Table -- Legal item kinds */
	s16b item_chance[STORE_CHOICES] = { 0 };
	byte item_num = 0;                       /* Number of items */

	s16b max_obj = 0;                        /* Number of items this store can hold */

	u16b owners[4] = { 0 };                  /* List of owners(refers to ow_info) */

	u16b actions[6] = { 0 };                 /* Actions(refers to ba_info) */

	byte d_attr = 0;                         /* Default building attribute */
	char d_char = '\0';                      /* Default building character */

	byte x_attr = 0;                         /* Desired building attribute */
	char x_char = '\0';                      /* Desired building character */

	store_flag_set flags;                    /* Flags */
};