diff options
Diffstat (limited to 'src/store_info_type.hpp')
-rw-r--r-- | src/store_info_type.hpp | 29 |
1 files changed, 14 insertions, 15 deletions
diff --git a/src/store_info_type.hpp b/src/store_info_type.hpp index 030afe91..78aa071e 100644 --- a/src/store_info_type.hpp +++ b/src/store_info_type.hpp @@ -1,32 +1,31 @@ #pragma once #include "h-basic.h" +#include "store_flag_set.hpp" +#include "store_item.hpp" -/** - * Number of items to choose stock from - */ -constexpr int STORE_CHOICES = 56; +#include <vector> /** * Store descriptor. */ struct store_info_type { - const char *name; /* Name */ + std::string name; /* Name */ + + std::vector<store_item> items; /* Table -- Legal item kinds */ - s16b table[STORE_CHOICES][2]; /* Table -- Legal item kinds */ - byte table_num; /* Number of items */ - s16b max_obj; /* Number of items this store can hold */ + s16b max_obj = 0; /* Number of items this store can hold */ - u16b owners[4]; /* List of owners(refers to ow_info) */ + std::vector<u16b> owners; /* List of owners; refers to ow_info */ - u16b actions[6]; /* Actions(refers to ba_info) */ + std::vector<u16b> actions; /* Actions; refers to ba_info */ - byte d_attr; /* Default building attribute */ - char d_char; /* Default building character */ + byte d_attr = 0; /* Default building attribute */ + char d_char = '\0'; /* Default building character */ - byte x_attr; /* Desired building attribute */ - char x_char; /* Desired building character */ + byte x_attr = 0; /* Desired building attribute */ + char x_char = '\0'; /* Desired building character */ - u32b flags1; /* Flags */ + store_flag_set flags; /* Flags */ }; |