ArtifactDefinitions.txt BaseItemDefinitions.txt ClassMagicDefinitions.txt \
ClassSkillDefinitions.txt DungeonDefinitions.txt EgoDefinitions.txt \
GridFeatureDefinitions.txt MonsterRaceDefinitions.txt QuestDefinitionList.txt \
- TownDefinitionList.txt WildernessDefinition.txt \
+ TownDefinitionList.txt VaultDefinitions.txt WildernessDefinition.txt \
misc.txt \
q0000001.txt q0000002.txt q0000003.txt q0000004.txt \
q0000005.txt q0000006.txt q0000007.txt q0000019.txt \
q_pref.txt q_random.txt q_serpen.txt q_warg.txt \
qdarkelf.txt qhaunted.txt \
t0000001.txt t0000002.txt t0000003.txt t0000004.txt t0000005.txt \
- t0000006.txt t_basic.txt t_lite.txt \
- t_pref.txt v_info.txt \
+ t0000006.txt t_basic.txt t_lite.txt t_pref.txt
EXTRA_DIST = \
$(angband_files)
#include "util/string-processor.h"
/*!
- * @brief Vault情報(v_info)のパース関数 /
- * Initialize the "v_info" array, by parsing an ascii "template" file
+ * @brief Vault定義 (VaultDefinitions)のパース関数
* @param buf テキスト列
* @param head ヘッダ構造体
* @return エラーコード
*/
-errr parse_v_info(std::string_view buf, angband_header *)
+errr parse_vaults_info(std::string_view buf, angband_header *)
{
static vault_type *v_ptr = nullptr;
const auto &tokens = str_split(buf, ':', false, 5);
if (i < error_idx) {
return PARSE_ERROR_NON_SEQUENTIAL_RECORDS;
}
- if (i >= static_cast<int>(v_info.size())) {
- v_info.resize(i + 1);
+ if (i >= static_cast<int>(vaults_info.size())) {
+ vaults_info.resize(i + 1);
}
error_idx = i;
- v_ptr = &v_info[i];
+ v_ptr = &vaults_info[i];
v_ptr->idx = static_cast<int16_t>(i);
v_ptr->name = std::string(tokens[2]);
} else if (!v_ptr) {
#include <string_view>
struct angband_header;
-errr parse_v_info(std::string_view buf, angband_header *head);
+errr parse_vaults_info(std::string_view buf, angband_header *head);
{
return format("%02x%02x%02x%02x%02x%02x%02x%02x%02x", terrains_header.checksum, baseitems_header.checksum,
artifacts_header.checksum, egos_header.checksum, monraces_header.checksum, dungeons_header.checksum,
- class_magics_header.checksum, class_skills_header.checksum, v_head.checksum);
+ class_magics_header.checksum, class_skills_header.checksum, vaults_header.checksum);
}
/*!
angband_header egos_header; /*!< アイテムエゴ情報のヘッダ構造体 */
angband_header monraces_header; /*!< モンスター種族情報のヘッダ構造体 */
angband_header terrains_header; /*!< 地形情報のヘッダ構造体 */
-angband_header v_head; /*!< Vault情報のヘッダ構造体 */
+angband_header vaults_header; /*!< Vault情報のヘッダ構造体 */
extern angband_header egos_header;
extern angband_header monraces_header;
extern angband_header terrains_header;
-extern angband_header v_head;
+extern angband_header vaults_header;
init_note(_("[配列を初期化しています... (クエスト)]", "[Initializing arrays... (quests)]"));
QuestList::get_instance().initialize();
- if (init_v_info()) {
+ if (init_vaults_info()) {
quit(_("vault 初期化不能", "Cannot initialize vaults"));
}
}
/*!
- * @brief 基本情報読み込みのメインルーチン /
- * Initialize misc. values
- * @param player_ptr プレイヤーへの参照ポインタ
- * @return エラーコード
- */
-errr init_misc(PlayerType *player_ptr)
-{
- return parse_fixed_map(player_ptr, "misc.txt", 0, 0, 0, 0);
-}
-
-/*!
* @brief ヘッダ構造体の更新
* Initialize the header of an *_info.raw file.
* @param head rawファイルのヘッダ
}
/*!
- * @brief Vault情報読み込みのメインルーチン /
- * Initialize the "v_info" array
+ * @brief Vault情報読み込みのメインルーチン
* @return エラーコード
* @note
* Note that we let each entry have a unique "name" and "text" string,
* even if the string happens to be empty (everyone has a unique '\0').
*/
-errr init_v_info()
+errr init_vaults_info()
{
- init_header(&v_head);
- return init_info("v_info.txt", v_head, v_info, parse_v_info);
+ init_header(&vaults_header);
+ return init_info("VaultDefinitions.txt", vaults_header, vaults_info, parse_vaults_info);
+}
+
+/*!
+ * @brief 基本情報読み込みのメインルーチン
+ * @param player_ptr プレイヤーへの参照ポインタ
+ * @return エラーコード
+ */
+errr init_misc(PlayerType *player_ptr)
+{
+ return parse_fixed_map(player_ptr, "misc.txt", 0, 0, 0, 0);
}
errr init_class_skills_info();
errr init_dungeons_info();
errr init_egos_info();
+errr init_monster_race_definitions();
errr init_terrains_info();
+errr init_vaults_info();
errr init_misc(PlayerType *player_ptr);
-errr init_monster_race_definitions();
-errr init_v_info();
/*
* The vault generation arrays
*/
-std::vector<vault_type> v_info;
+std::vector<vault_type> vaults_info;
/*
* This function creates a random vault that looks like a collection of bubbles.
}
/*!
- * @brief v_info.txtからの部屋生成 / vaults from "v_info.txt"
+ * @brief VaultDefinitions からの部屋生成
*/
bool build_fixed_room(PlayerType *player_ptr, dun_data_type *dd_ptr, int typ, bool more_space)
{
ProbabilityTable<int> prob_table;
/* Pick fixed room */
- for (const auto &v_ref : v_info) {
+ for (const auto &v_ref : vaults_info) {
if (v_ref.typ == typ) {
prob_table.entry_item(v_ref.idx, 1);
}
auto result = prob_table.pick_one_at_random();
- v_ptr = &v_info[result];
+ v_ptr = &vaults_info[result];
/* pick type of transformation (0-7) */
transno = randint0(8);
POSITION wid{}; /* Vault width */
};
-extern std::vector<vault_type> v_info;
+extern std::vector<vault_type> vaults_info;
struct dun_data_type;
class PlayerType;