const auto tval = bi_key.tval();
if (PlayerRace(player_ptr).equals(PlayerRaceType::BALROG)) {
const auto r_idx = i2enum<MonsterRaceId>(o_ptr->pval);
- if (o_ptr->is_corpse() && angband_strchr("pht", monraces_info[r_idx].symbol_def.character)) {
+ if (o_ptr->is_corpse() && angband_strchr("pht", monraces_info[r_idx].symbol_definition.character)) {
return false;
}
} else if (pc.equals(PlayerClassType::ARCHER)) {
entry->add(FLG_UNIQUE);
}
- if (tval == ItemKindType::CORPSE && angband_strchr("pht", monraces_info[r_idx].symbol_def.character)) {
+ if (tval == ItemKindType::CORPSE && angband_strchr("pht", monraces_info[r_idx].symbol_definition.character)) {
entry->add(FLG_HUMAN);
}
return false;
}
- if (entry.has(FLG_HUMAN) && (tval != ItemKindType::CORPSE || !angband_strchr("pht", monraces_info[r_idx].symbol_def.character))) {
+ if (entry.has(FLG_HUMAN) && (tval != ItemKindType::CORPSE || !angband_strchr("pht", monraces_info[r_idx].symbol_definition.character))) {
return false;
}
monrace_ids.push_back(monrace_id);
}
- else if (all || (monrace.symbol_def.character == symbol)) {
+ else if (all || (monrace.symbol_definition.character == symbol)) {
monrace_ids.push_back(monrace_id);
}
}
/* Balrogs change humanoid corpses to energy */
const auto corpse_r_idx = i2enum<MonsterRaceId>(o_ptr->pval);
- const auto search = angband_strchr("pht", monraces_info[corpse_r_idx].symbol_def.character);
+ const auto search = angband_strchr("pht", monraces_info[corpse_r_idx].symbol_definition.character);
if (food_type == PlayerRaceFoodType::CORPSE && o_ptr->is_corpse() && (search != nullptr)) {
const auto item_name = describe_flavor(player_ptr, o_ptr, (OD_OMIT_PREFIX | OD_NAME_ONLY));
msg_format(_("%sは燃え上り灰になった。精力を吸収した気がする。", "%s^ is burnt to ashes. You absorb its vitality!"), item_name.data());
while (true) {
auto &monrace = monraces_info[monrace_id];
int c;
- const auto &symbol_def = monrace.symbol_def;
+ const auto &symbol_definition = monrace.symbol_definition;
auto &symbol_config = monrace.symbol_config;
term_putstr(5, 17, -1, TERM_WHITE, format(_("モンスター = %d, 名前 = %-40.40s", "Monster = %d, Name = %-40.40s"), enum2i(monrace_id), monrace.name.data()));
- term_putstr(10, 19, -1, TERM_WHITE, format(_("初期値 色 / 文字 = %3u / %3u", "Default attr/char = %3u / %3u"), symbol_def.color, symbol_def.character));
+ term_putstr(10, 19, -1, TERM_WHITE, format(_("初期値 色 / 文字 = %3u / %3u", "Default attr/char = %3u / %3u"), symbol_definition.color, symbol_definition.character));
term_putstr(40, 19, -1, TERM_WHITE, empty_symbol);
- term_queue_bigchar(43, 19, { symbol_def, {} });
+ term_queue_bigchar(43, 19, { symbol_definition, {} });
term_putstr(10, 20, -1, TERM_WHITE, format(_("現在値 色 / 文字 = %3u / %3u", "Current attr/char = %3u / %3u"), symbol_config.color, symbol_config.character));
term_putstr(40, 20, -1, TERM_WHITE, empty_symbol);
term_queue_bigchar(43, 20, { symbol_config, {} });
while (true) {
auto &baseitem = baseitems.get_baseitem(bi_id);
int c;
- const auto &symbol_def = baseitem.symbol_def;
+ const auto &symbol_definition = baseitem.symbol_definition;
auto &symbol_config = baseitem.symbol_config;
term_putstr(5, 17, -1, TERM_WHITE,
format(
_("アイテム = %d, 名前 = %-40.40s", "Object = %d, Name = %-40.40s"), bi_id, (!baseitem.flavor ? baseitem.name : baseitem.flavor_name).data()));
- term_putstr(10, 19, -1, TERM_WHITE, format(_("初期値 色 / 文字 = %3d / %3d", "Default attr/char = %3d / %3d"), symbol_def.color, symbol_def.character));
+ term_putstr(10, 19, -1, TERM_WHITE, format(_("初期値 色 / 文字 = %3d / %3d", "Default attr/char = %3d / %3d"), symbol_definition.color, symbol_definition.character));
term_putstr(40, 19, -1, TERM_WHITE, empty_symbol);
- term_queue_bigchar(43, 19, { symbol_def, {} });
+ term_queue_bigchar(43, 19, { symbol_definition, {} });
term_putstr(10, 20, -1, TERM_WHITE, format(_("現在値 色 / 文字 = %3d / %3d", "Current attr/char = %3d / %3d"), symbol_config.color, symbol_config.character));
term_putstr(40, 20, -1, TERM_WHITE, empty_symbol);
term_queue_bigchar(43, 20, { symbol_config, {} });
while (true) {
auto &terrain = terrains[terrain_id];
int c;
- const auto &symbol_def = terrain.symbol_defs[lighting_level];
+ const auto &symbol_definition = terrain.symbol_definitions[lighting_level];
const auto &symbol_config = terrain.symbol_configs[lighting_level];
prt("", 17, 5);
term_putstr(5, 17, -1, TERM_WHITE,
format(_("地形 = %d, 名前 = %s, 明度 = %s", "Terrain = %d, Name = %s, Lighting = %s"), terrain_id, (terrain.name.data()),
lighting_level_str[lighting_level]));
- term_putstr(10, 19, -1, TERM_WHITE, format(_("初期値 色 / 文字 = %3d / %3d", "Default attr/char = %3d / %3d"), symbol_def.color, symbol_def.character));
+ term_putstr(10, 19, -1, TERM_WHITE, format(_("初期値 色 / 文字 = %3d / %3d", "Default attr/char = %3d / %3d"), symbol_definition.color, symbol_definition.character));
term_putstr(40, 19, -1, TERM_WHITE, empty_symbol);
- term_queue_bigchar(43, 19, { symbol_def, {} });
+ term_queue_bigchar(43, 19, { symbol_definition, {} });
term_putstr(10, 20, -1, TERM_WHITE, format(_("現在値 色 / 文字 = %3d / %3d", "Current attr/char = %3d / %3d"), symbol_config.color, symbol_config.character));
term_putstr(40, 20, -1, TERM_WHITE, empty_symbol);
term_queue_bigchar(43, 20, { symbol_config, {} });
{
for (auto &terrain : TerrainList::get_instance()) {
for (int j = 0; j < F_LIT_MAX; j++) {
- terrain.symbol_configs[j] = terrain.symbol_defs[j];
+ terrain.symbol_configs[j] = terrain.symbol_definitions[j];
}
}
if (color->second > 127) {
return PARSE_ERROR_GENERIC;
}
- baseitem.symbol_def = DisplaySymbol(color->second, character_obj.get<std::string>().front());
+ baseitem.symbol_definition = DisplaySymbol(color->second, character_obj.get<std::string>().front());
return PARSE_ERROR_NONE;
}
}
auto &terrain = *terrains.rbegin();
- terrain.symbol_defs[F_LIT_STANDARD] = { color, character };
+ terrain.symbol_definitions[F_LIT_STANDARD] = { color, character };
if (tokens.size() == n) {
for (int j = F_LIT_NS_BEGIN; j < F_LIT_MAX; j++) {
- terrain.symbol_defs[j] = { color, character };
+ terrain.symbol_definitions[j] = { color, character };
}
return PARSE_ERROR_NONE;
continue;
}
- terrain.symbol_defs[j].character = tokens[c_idx][0];
+ terrain.symbol_definitions[j].character = tokens[c_idx][0];
if (tokens[a_idx] == "*") {
continue;
}
if (tokens[a_idx] == "-") {
- terrain.symbol_defs[j].color = color;
+ terrain.symbol_definitions[j].color = color;
continue;
}
- terrain.symbol_defs[j].color = color_char_to_attr(tokens[a_idx][0]);
- if (terrain.symbol_defs[j].color > 127) {
+ terrain.symbol_definitions[j].color = color_char_to_attr(tokens[a_idx][0]);
+ if (terrain.symbol_definitions[j].color > 127) {
return PARSE_ERROR_GENERIC;
}
}
return PARSE_ERROR_GENERIC;
}
- monrace.symbol_def = { color->second, character_obj.get<std::string>().front() };
+ monrace.symbol_definition = { color->second, character_obj.get<std::string>().front() };
return PARSE_ERROR_NONE;
}
for (auto &baseitem : BaseitemList::get_instance()) {
if (baseitem.is_valid() && (baseitem.bi_key.tval() == tval)) {
if (n1) {
- baseitem.symbol_def.color = n1;
+ baseitem.symbol_definition.color = n1;
}
if (n2) {
- baseitem.symbol_def.character = n2;
+ baseitem.symbol_definition.character = n2;
}
}
}
continue;
}
} else {
- if (angband_strchr(group_char, monrace.symbol_def.character) == nullptr) {
+ if (angband_strchr(group_char, monrace.symbol_definition.character) == nullptr) {
continue;
}
}
}
#ifdef JP
- const auto number_of_kills = angband_strchr("pt", monrace.symbol_def.character) ? "人" : "体";
+ const auto number_of_kills = angband_strchr("pt", monrace.symbol_definition.character) ? "人" : "体";
fprintf(fff, " %3d %sの %s\n", this_monster, number_of_kills, monrace.name.data());
#else
if (this_monster < 2) {
if (str_find(temp2, monster_name))
#endif
monrace_ids.push_back(monrace_id);
- } else if (all || (monrace.symbol_def.character == sym)) {
+ } else if (all || (monrace.symbol_definition.character == sym)) {
monrace_ids.push_back(monrace_id);
}
}
return;
}
- if (ms_ptr->r_ptr->symbol_def.character == 'B') {
+ if (ms_ptr->r_ptr->symbol_definition.character == 'B') {
if ((player_ptr->pet_extra_flags & (PF_ATTACK_SPELL | PF_TELEPORT)) != (PF_ATTACK_SPELL | PF_TELEPORT)) {
ms_ptr->ability_flags.reset(MonsterAbilityType::SPECIAL);
}
ms_ptr->ability_flags.reset(MonsterAbilityType::BR_LITE);
}
- if (ms_ptr->ability_flags.has(MonsterAbilityType::SPECIAL) && (ms_ptr->m_ptr->r_idx != MonsterRaceId::ROLENTO) && (ms_ptr->r_ptr->symbol_def.character != 'B')) {
+ if (ms_ptr->ability_flags.has(MonsterAbilityType::SPECIAL) && (ms_ptr->m_ptr->r_idx != MonsterRaceId::ROLENTO) && (ms_ptr->r_ptr->symbol_definition.character != 'B')) {
ms_ptr->ability_flags.reset(MonsterAbilityType::SPECIAL);
}
}
else if (pa_ptr->ma_ptr->effect == MA_SLOW) {
- if (!(r_ptr->behavior_flags.has(MonsterBehaviorType::NEVER_MOVE) || angband_strchr("~#{}.UjmeEv$,DdsbBFIJQSXclnw!=?", r_ptr->symbol_def.character))) {
+ if (!(r_ptr->behavior_flags.has(MonsterBehaviorType::NEVER_MOVE) || angband_strchr("~#{}.UjmeEv$,DdsbBFIJQSXclnw!=?", r_ptr->symbol_definition.character))) {
msg_format(_("%sの足首に関節蹴りをくらわした!", "You kick %s in the ankle."), pa_ptr->m_name);
special_effect = MA_SLOW;
} else {
drop_numbers = 0;
}
- if (!drop_item && (md_ptr->r_ptr->symbol_def.character != '$')) {
+ if (!drop_item && (md_ptr->r_ptr->symbol_definition.character != '$')) {
drop_numbers = 0;
}
return false;
}
- if (z_ptr->symbol_def.character != r_ptr->symbol_def.character) {
+ if (z_ptr->symbol_definition.character != r_ptr->symbol_definition.character) {
return false;
}
auto try_become_jural = one_in_(5) || !floor.is_in_underground();
try_become_jural &= monraces_info[r_idx].kind_flags.has_not(MonsterKindType::UNIQUE);
- try_become_jural &= angband_strchr("hkoptuyAHLOPTUVY", monraces_info[r_idx].symbol_def.character) != nullptr;
+ try_become_jural &= angband_strchr("hkoptuyAHLOPTUVY", monraces_info[r_idx].symbol_definition.character) != nullptr;
if (try_become_jural) {
mode |= PM_JURAL;
}
}
const auto &monrace = monentity.mflag2.has(MonsterConstantFlagType::CHAMELEON) ? monentity.get_monrace() : monraces_info[*r_idx];
- msg_format(_("モンスターの大群(%c)", "Monster horde (%c)."), monrace.symbol_def.character);
+ msg_format(_("モンスターの大群(%c)", "Monster horde (%c)."), monrace.symbol_definition.character);
return true;
}
return;
}
- switch (md_ptr->r_ptr->symbol_def.character) {
+ switch (md_ptr->r_ptr->symbol_definition.character) {
case '(':
if (player_ptr->current_floor_ptr->dun_level <= 0) {
return;
get_mon_num_prep(player_ptr, vault_aux_simple, nullptr);
MonsterRaceId r_idx = get_mon_num(player_ptr, 0, player_ptr->current_floor_ptr->dun_level + 10, PM_NONE);
get_mon_num_prep(player_ptr, nullptr, nullptr);
- vault_aux_char = monraces_info[r_idx].symbol_def.character;
+ vault_aux_char = monraces_info[r_idx].symbol_definition.character;
}
/*!
return false;
}
- if (!angband_strchr("ijm,", monrace.symbol_def.character)) {
+ if (!angband_strchr("ijm,", monrace.symbol_definition.character)) {
return false;
}
return false;
}
- if (monrace.symbol_def.character == 'A') {
+ if (monrace.symbol_definition.character == 'A') {
return true;
}
return false;
}
- if (!angband_strchr("CZ", r_ptr->symbol_def.character)) {
+ if (!angband_strchr("CZ", r_ptr->symbol_definition.character)) {
return false;
}
return false;
}
- if (!angband_strchr("!$&(/=?[\\|][`~>+", r_ptr->symbol_def.character)) {
+ if (!angband_strchr("!$&(/=?[\\|][`~>+", r_ptr->symbol_definition.character)) {
return false;
}
return false;
}
- if (monrace.symbol_def.character != vault_aux_char) {
+ if (monrace.symbol_definition.character != vault_aux_char) {
return false;
}
return false;
}
- if (monrace.symbol_def.character != vault_aux_char) {
+ if (monrace.symbol_definition.character != vault_aux_char) {
return false;
}
return false;
}
- if (angband_strchr("pht", monrace.symbol_def.character)) {
+ if (angband_strchr("pht", monrace.symbol_definition.character)) {
return true;
}
const auto &monrace = monraces_info[r_idx];
auto can_fish = monrace.feature_flags.has(MonsterFeatureType::AQUATIC);
can_fish &= monrace.kind_flags.has_not(MonsterKindType::UNIQUE);
- can_fish &= angband_strchr("Jjlw", monrace.symbol_def.character) != nullptr;
+ can_fish &= angband_strchr("Jjlw", monrace.symbol_definition.character) != nullptr;
return can_fish;
}
};
auto result = std::all_of(is_possible.begin(), is_possible.end(), [](const auto &v) { return v; });
- result &= std::all_of(d_ptr->r_chars.begin(), d_ptr->r_chars.end(), [r_ptr](const auto &v) { return v == r_ptr->symbol_def.character; });
+ result &= std::all_of(d_ptr->r_chars.begin(), d_ptr->r_chars.end(), [r_ptr](const auto &v) { return v == r_ptr->symbol_definition.character; });
return d_ptr->mode == DUNGEON_MODE_AND ? result : !result;
}
};
auto result = std::any_of(is_possible.begin(), is_possible.end(), [](const auto &v) { return v; });
- result |= std::any_of(d_ptr->r_chars.begin(), d_ptr->r_chars.end(), [r_ptr](const auto &v) { return v == r_ptr->symbol_def.character; });
+ result |= std::any_of(d_ptr->r_chars.begin(), d_ptr->r_chars.end(), [r_ptr](const auto &v) { return v == r_ptr->symbol_definition.character; });
return d_ptr->mode == DUNGEON_MODE_OR ? result : !result;
}
case MonsterRaceId::ROLENTO:
return spell_RF6_SPECIAL_ROLENTO(player_ptr, y, x, m_idx, t_idx, target_type);
default:
- if (monrace.symbol_def.character == 'B') {
+ if (monrace.symbol_definition.character == 'B') {
return spell_RF6_SPECIAL_B(player_ptr, y, x, m_idx, t_idx, target_type);
}
const auto &monrace = monraces_info[r_idx];
switch (type) {
case SUMMON_ANT:
- return monrace.symbol_def.character == 'a';
+ return monrace.symbol_definition.character == 'a';
case SUMMON_SPIDER:
- return monrace.symbol_def.character == 'S';
+ return monrace.symbol_definition.character == 'S';
case SUMMON_HOUND:
- return (monrace.symbol_def.character == 'C') || (monrace.symbol_def.character == 'Z');
+ return (monrace.symbol_definition.character == 'C') || (monrace.symbol_definition.character == 'Z');
case SUMMON_HYDRA:
- return monrace.symbol_def.character == 'M';
+ return monrace.symbol_definition.character == 'M';
case SUMMON_ANGEL:
- return (monrace.symbol_def.character == 'A') && ((monrace.kind_flags.has(MonsterKindType::EVIL)) || (monrace.kind_flags.has(MonsterKindType::GOOD)));
+ return (monrace.symbol_definition.character == 'A') && ((monrace.kind_flags.has(MonsterKindType::EVIL)) || (monrace.kind_flags.has(MonsterKindType::GOOD)));
case SUMMON_DEMON:
return monrace.kind_flags.has(MonsterKindType::DEMON);
case SUMMON_UNDEAD:
case SUMMON_DRAGON:
return monrace.kind_flags.has(MonsterKindType::DRAGON);
case SUMMON_HI_UNDEAD:
- return (monrace.symbol_def.character == 'L') || (monrace.symbol_def.character == 'V') || (monrace.symbol_def.character == 'W');
+ return (monrace.symbol_definition.character == 'L') || (monrace.symbol_definition.character == 'V') || (monrace.symbol_definition.character == 'W');
case SUMMON_HI_DRAGON:
- return monrace.symbol_def.character == 'D';
+ return monrace.symbol_definition.character == 'D';
case SUMMON_HI_DEMON:
- return ((monrace.symbol_def.character == 'U') || (monrace.symbol_def.character == 'H') || (monrace.symbol_def.character == 'B')) && (monrace.kind_flags.has(MonsterKindType::DEMON));
+ return ((monrace.symbol_definition.character == 'U') || (monrace.symbol_definition.character == 'H') || (monrace.symbol_definition.character == 'B')) && (monrace.kind_flags.has(MonsterKindType::DEMON));
case SUMMON_AMBERITES:
return monrace.kind_flags.has(MonsterKindType::AMBERITE);
case SUMMON_UNIQUE:
return monrace.kind_flags.has(MonsterKindType::UNIQUE);
case SUMMON_MOLD:
- return monrace.symbol_def.character == 'm';
+ return monrace.symbol_definition.character == 'm';
case SUMMON_BAT:
- return monrace.symbol_def.character == 'b';
+ return monrace.symbol_definition.character == 'b';
case SUMMON_QUYLTHULG:
- return monrace.symbol_def.character == 'Q';
+ return monrace.symbol_definition.character == 'Q';
case SUMMON_COIN_MIMIC:
- return monrace.symbol_def.character == '$';
+ return monrace.symbol_definition.character == '$';
case SUMMON_MIMIC:
- return (monrace.symbol_def.character == '!') || (monrace.symbol_def.character == '?') || (monrace.symbol_def.character == '=') || (monrace.symbol_def.character == '$') || (monrace.symbol_def.character == '|');
+ return (monrace.symbol_definition.character == '!') || (monrace.symbol_definition.character == '?') || (monrace.symbol_definition.character == '=') || (monrace.symbol_definition.character == '$') || (monrace.symbol_definition.character == '|');
case SUMMON_GOLEM:
- return (monrace.symbol_def.character == 'g');
+ return (monrace.symbol_definition.character == 'g');
case SUMMON_CYBER:
- return (monrace.symbol_def.character == 'U') && monrace.ability_flags.has(MonsterAbilityType::ROCKET);
+ return (monrace.symbol_definition.character == 'U') && monrace.ability_flags.has(MonsterAbilityType::ROCKET);
case SUMMON_KIN: {
- auto summon_kin_type = MonsterRace(summoner_idx).is_valid() ? monraces_info[summoner_idx].symbol_def.character : PlayerRace(player_ptr).get_summon_symbol();
- return (monrace.symbol_def.character == summon_kin_type) && (r_idx != MonsterRaceId::HAGURE);
+ auto summon_kin_type = MonsterRace(summoner_idx).is_valid() ? monraces_info[summoner_idx].symbol_definition.character : PlayerRace(player_ptr).get_summon_symbol();
+ return (monrace.symbol_definition.character == summon_kin_type) && (r_idx != MonsterRaceId::HAGURE);
}
case SUMMON_DAWN:
return r_idx == MonsterRaceId::DAWN;
return monrace.kind_flags.has(MonsterKindType::ANIMAL);
case SUMMON_ANIMAL_RANGER: {
auto is_match = monrace.kind_flags.has(MonsterKindType::ANIMAL);
- is_match &= angband_strchr("abcflqrwBCHIJKMRS", monrace.symbol_def.character) != nullptr;
+ is_match &= angband_strchr("abcflqrwBCHIJKMRS", monrace.symbol_definition.character) != nullptr;
is_match &= monrace.kind_flags.has_not(MonsterKindType::DRAGON);
is_match &= monrace.kind_flags.has_not(MonsterKindType::EVIL);
is_match &= monrace.kind_flags.has_not(MonsterKindType::UNDEAD);
case SUMMON_SMALL_MOAI:
return r_idx == MonsterRaceId::SMALL_MOAI;
case SUMMON_PYRAMID:
- return one_in_(16) ? monrace.symbol_def.character == 'z' : r_idx == MonsterRaceId::SCARAB;
+ return one_in_(16) ? monrace.symbol_definition.character == 'z' : r_idx == MonsterRaceId::SCARAB;
case SUMMON_PHANTOM:
return (r_idx == MonsterRaceId::PHANTOM_B) || (r_idx == MonsterRaceId::PHANTOM_W);
case SUMMON_BLUE_HORROR:
case SUMMON_LIVING:
return monrace.has_living_flag();
case SUMMON_HI_DRAGON_LIVING:
- return (monrace.symbol_def.character == 'D') && monrace.has_living_flag();
+ return (monrace.symbol_definition.character == 'D') && monrace.has_living_flag();
case SUMMON_ELEMENTAL:
- return monrace.symbol_def.character == 'E';
+ return monrace.symbol_definition.character == 'E';
case SUMMON_VORTEX:
- return monrace.symbol_def.character == 'v';
+ return monrace.symbol_definition.character == 'v';
case SUMMON_HYBRID:
- return monrace.symbol_def.character == 'H';
+ return monrace.symbol_definition.character == 'H';
case SUMMON_BIRD:
- return monrace.symbol_def.character == 'B';
+ return monrace.symbol_definition.character == 'B';
case SUMMON_KAMIKAZE:
return monrace.is_explodable();
case SUMMON_KAMIKAZE_LIVING: {
return is_match;
}
case SUMMON_EAGLES: {
- auto is_match = monrace.symbol_def.character == 'B';
+ auto is_match = monrace.symbol_definition.character == 'B';
is_match &= monrace.wilderness_flags.has(MonsterWildernessType::WILD_MOUNTAIN);
is_match &= monrace.wilderness_flags.has(MonsterWildernessType::WILD_ONLY);
return is_match;
case SUMMON_PIRANHAS:
return r_idx == MonsterRaceId::PIRANHA;
case SUMMON_ARMAGE_GOOD:
- return (monrace.symbol_def.character == 'A') && (monrace.kind_flags.has(MonsterKindType::GOOD));
+ return (monrace.symbol_definition.character == 'A') && (monrace.kind_flags.has(MonsterKindType::GOOD));
case SUMMON_ARMAGE_EVIL:
- return (monrace.kind_flags.has(MonsterKindType::DEMON)) || ((monrace.symbol_def.character == 'A') && (monrace.kind_flags.has(MonsterKindType::EVIL)));
+ return (monrace.kind_flags.has(MonsterKindType::DEMON)) || ((monrace.symbol_definition.character == 'A') && (monrace.kind_flags.has(MonsterKindType::EVIL)));
case SUMMON_APOCRYPHA_FOLLOWERS:
return (r_idx == MonsterRaceId::FOLLOWER_WARRIOR) || (r_idx == MonsterRaceId::FOLLOWER_MAGE);
case SUMMON_APOCRYPHA_DRAGONS:
- return (monrace.symbol_def.character == 'D') && (monrace.level >= 60) && (r_idx != MonsterRaceId::WYRM_COLOURS) && (r_idx != MonsterRaceId::ALDUIN);
+ return (monrace.symbol_definition.character == 'D') && (monrace.level >= 60) && (r_idx != MonsterRaceId::WYRM_COLOURS) && (r_idx != MonsterRaceId::ALDUIN);
case SUMMON_VESPOID:
return r_idx == MonsterRaceId::VESPOID;
case SUMMON_ANTI_TIGERS: {
- auto is_match = one_in_(32) ? (monrace.symbol_def.character == 'P') : false;
- is_match |= one_in_(48) ? (monrace.symbol_def.character == 'd') : false;
- is_match |= one_in_(16) ? (monrace.symbol_def.character == 'l') : false;
+ auto is_match = one_in_(32) ? (monrace.symbol_definition.character == 'P') : false;
+ is_match |= one_in_(48) ? (monrace.symbol_definition.character == 'd') : false;
+ is_match |= one_in_(16) ? (monrace.symbol_definition.character == 'l') : false;
is_match |= (r_idx == MonsterRaceId::STAR_VAMPIRE) || (r_idx == MonsterRaceId::SWALLOW) || (r_idx == MonsterRaceId::HAWK);
is_match |= (r_idx == MonsterRaceId::LION) || (r_idx == MonsterRaceId::BUFFALO) || (r_idx == MonsterRaceId::FIGHTER) || (r_idx == MonsterRaceId::GOLDEN_EAGLE);
is_match |= (r_idx == MonsterRaceId::SHALLOW_PUDDLE) || (r_idx == MonsterRaceId::DEEP_PUDDLE) || (r_idx == MonsterRaceId::SKY_WHALE);
}
} else if (food_type == PlayerRaceFoodType::CORPSE) {
auto corpse_r_idx = i2enum<MonsterRaceId>(o_ptr->pval);
- if (o_ptr->is_corpse() && angband_strchr("pht", monraces_info[corpse_r_idx].symbol_def.character)) {
+ if (o_ptr->is_corpse() && angband_strchr("pht", monraces_info[corpse_r_idx].symbol_definition.character)) {
return true;
}
}
player_attack_type tmp_attack(*player_ptr->current_floor_ptr, y, x, hand, mode, fear, mdeath);
auto pa_ptr = &tmp_attack;
- const auto is_human = (pa_ptr->r_ptr->symbol_def.character == 'p');
+ const auto is_human = (pa_ptr->r_ptr->symbol_definition.character == 'p');
const auto is_lowlevel = (pa_ptr->r_ptr->level < (player_ptr->lev - 15));
attack_classify(player_ptr, pa_ptr);
int chance = calc_attack_quality(player_ptr, pa_ptr);
auto *o_ptr = &player_ptr->inventory_list[enum2i(INVEN_MAIN_HAND) + pa_ptr->hand];
- const auto is_zantetsu_nullified = (o_ptr->is_specific_artifact(FixedArtifactId::ZANTETSU) && (pa_ptr->r_ptr->symbol_def.character == 'j'));
- const auto is_ej_nullified = (o_ptr->is_specific_artifact(FixedArtifactId::EXCALIBUR_J) && (pa_ptr->r_ptr->symbol_def.character == 'S'));
+ const auto is_zantetsu_nullified = (o_ptr->is_specific_artifact(FixedArtifactId::ZANTETSU) && (pa_ptr->r_ptr->symbol_definition.character == 'j'));
+ const auto is_ej_nullified = (o_ptr->is_specific_artifact(FixedArtifactId::EXCALIBUR_J) && (pa_ptr->r_ptr->symbol_definition.character == 'S'));
calc_num_blow(player_ptr, pa_ptr);
/* Attack once for each legal blow */
continue;
}
- if (angband_strchr(Match, monrace.symbol_def.character)) {
+ if (angband_strchr(Match, monrace.symbol_definition.character)) {
if (player_ptr->monster_race_idx == m_ptr->r_idx) {
rfu.set_flag(SubWindowRedrawingFlag::MONSTER_LORE);
}
for (short i = 1; i < floor.m_max; i++) {
const auto &monster = floor.m_list[i];
const auto &monrace = monster.get_monrace();
- if (!monster.is_valid() || (monrace.symbol_def.character != symbol)) {
+ if (!monster.is_valid() || (monrace.symbol_definition.character != symbol)) {
continue;
}
if (monrace.kind_flags.has_not(MonsterKindType::EVIL)) {
auto can_sell = monrace.kind_flags.has(MonsterKindType::GOOD);
can_sell |= monrace.kind_flags.has(MonsterKindType::ANIMAL);
- can_sell |= angband_strchr("?!", monrace.symbol_def.character) != nullptr;
+ can_sell |= angband_strchr("?!", monrace.symbol_definition.character) != nullptr;
if (can_sell) {
return true;
}
BaseitemInfo::BaseitemInfo()
: bi_key(ItemKindType::NONE)
- , symbol_def(DisplaySymbol(0, '\0'))
+ , symbol_definition(DisplaySymbol(0, '\0'))
, symbol_config(DisplaySymbol(0, '\0'))
{
}
void BaseitemList::reset_all_visuals()
{
for (auto &baseitem : this->baseitems) {
- baseitem.symbol_config = baseitem.symbol_def;
+ baseitem.symbol_config = baseitem.symbol_definition;
}
}
};
std::array<alloc_table, 4> alloc_tables{}; /*!< ベースアイテムの生成テーブル */
- DisplaySymbol symbol_def; //!< 定義上のシンボル (色/文字).
+ DisplaySymbol symbol_definition; //!< 定義上のシンボル (色/文字).
bool easy_know{}; /*!< ベースアイテムが初期からベース名を判断可能かどうか / This object is always known (if aware) */
RandomArtActType act_idx{}; /*!< 発動能力のID / Activative ability index */
return false;
}
- return angband_strchr("pht", monraces_info[i2enum<MonsterRaceId>(this->pval)].symbol_def.character) != nullptr;
+ return angband_strchr("pht", monraces_info[i2enum<MonsterRaceId>(this->pval)].symbol_definition.character) != nullptr;
}
/*!
const auto &monrace = this->get_appearance_monrace();
const auto mimic_symbols = "/|\\()[]=$,.!?&`#%<>+~";
- if (angband_strchr(mimic_symbols, monrace.symbol_def.character) == nullptr) {
+ if (angband_strchr(mimic_symbols, monrace.symbol_definition.character) == nullptr) {
return false;
}
std::optional<std::string> MonsterEntity::get_pain_message(std::string_view monster_name, int damage) const
{
auto &monrace = this->get_monrace();
- return MonsterPainDescriber(monrace.idx, monrace.symbol_def.character, monster_name).describe(this->hp, damage, this->ml);
+ return MonsterPainDescriber(monrace.idx, monrace.symbol_definition.character, monster_name).describe(this->hp, damage, this->ml);
}
/*!
void MonraceList::reset_all_visuals()
{
for (auto &[_, monrace] : monraces_info) {
- monrace.symbol_config = monrace.symbol_def;
+ monrace.symbol_config = monrace.symbol_definition;
}
}
EXP next_exp{}; //!< 進化に必要な経験値
DEPTH level{}; //!< レベル / Level of creature
RARITY rarity{}; //!< レアリティ / Rarity of creature
- DisplaySymbol symbol_def{}; //!< 定義上のシンボル (色/文字).
+ DisplaySymbol symbol_definition{}; //!< 定義上のシンボル (色/文字).
DisplaySymbol symbol_config{}; //!< 設定したシンボル (色/文字).
MONSTER_NUMBER max_num{}; //!< 階に最大存在できる数 / Maximum population allowed per level
MONSTER_NUMBER cur_num{}; //!< 階に現在いる数 / Monster population on current level
#include "grid/lighting-colors-table.h"
TerrainType::TerrainType()
- : symbol_defs(DEFAULT_SYMBOLS)
+ : symbol_definitions(DEFAULT_SYMBOLS)
, symbol_configs(DEFAULT_SYMBOLS)
{
}
*/
void TerrainType::reset_lighting(bool is_config)
{
- auto &symbols = is_config ? this->symbol_configs : this->symbol_defs;
+ auto &symbols = is_config ? this->symbol_configs : this->symbol_definitions;
if (is_ascii_graphics(symbols[F_LIT_STANDARD].color)) {
this->reset_lighting_ascii(symbols);
return;
TerrainState state[MAX_FEAT_STATES]{}; /*!< TerrainState テーブル */
FEAT_SUBTYPE subtype{}; /*!< 副特性値 */
FEAT_POWER power{}; /*!< 地形強度 */
- std::map<int, DisplaySymbol> symbol_defs; //!< デフォルトの地形シンボル (色/文字).
+ std::map<int, DisplaySymbol> symbol_definitions; //!< デフォルトの地形シンボル (色/文字).
std::map<int, DisplaySymbol> symbol_configs; //!< 設定変更後の地形シンボル (色/文字).
bool is_permanent_wall() const;
term_addstr(-1, TERM_WHITE, monrace.name);
term_addstr(-1, TERM_WHITE, " ('");
- term_add_bigch(monrace.symbol_def);
+ term_add_bigch(monrace.symbol_definition);
term_addstr(-1, TERM_WHITE, "')");
term_addstr(-1, TERM_WHITE, "/('");
return _("準ランダムな", "S.Rand");
}
- switch (monrace.symbol_def.color) {
+ switch (monrace.symbol_definition.color) {
case TERM_DARK:
return _("黒い", "Dark");
case TERM_WHITE:
hp = format("%dd%d", monrace.hdice, monrace.hside);
}
- const auto symbol = format("%s '%c'", attr_to_text(monrace).data(), monrace.symbol_def.character);
+ const auto symbol = format("%s '%c'", attr_to_text(monrace).data(), monrace.symbol_definition.character);
ofs << format("%-45.45s%4s %4s %4s %7s %7s %19.19s\n",
nam.data(), lev.data(), rar.data(), spd.data(), hp.data(),
ac.data(), symbol.data());
spoil_out(format(_("%s/%s (", "%s%s ("), monrace.name.data(), _(monrace.E_name.data(), ""))); /* ---)--- */
spoil_out(attr_to_text(monrace));
- spoil_out(format(" '%c')\n", monrace.symbol_def.character));
+ spoil_out(format(" '%c')\n", monrace.symbol_definition.character));
spoil_out("=== ");
spoil_out(format("Num:%d ", enum2i(monrace_id)));
spoil_out(format("Lev:%d ", (int)monrace.level));
for (auto monrace_id : get_mon_evol_roots()) {
const auto *r_ptr = &monraces_info[monrace_id];
constexpr auto fmt_before = _("[%d]: %s (レベル%d, '%c')\n", "[%d]: %s (Level %d, '%c')\n");
- fprintf(spoiler_file, fmt_before, enum2i(monrace_id), r_ptr->name.data(), r_ptr->level, r_ptr->symbol_def.character);
+ fprintf(spoiler_file, fmt_before, enum2i(monrace_id), r_ptr->name.data(), r_ptr->level, r_ptr->symbol_definition.character);
for (auto n = 1; MonsterRace(r_ptr->next_r_idx).is_valid(); n++) {
fprintf(spoiler_file, "%*s-(%d)-> ", n * 2, "", r_ptr->next_exp);
fprintf(spoiler_file, "[%d]: ", enum2i(r_ptr->next_r_idx));
r_ptr = &monraces_info[r_ptr->next_r_idx];
constexpr auto fmt_after = _("%s (レベル%d, '%c')\n", "%s (Level %d, '%c')\n");
- fprintf(spoiler_file, fmt_after, r_ptr->name.data(), r_ptr->level, r_ptr->symbol_def.character);
+ fprintf(spoiler_file, fmt_after, r_ptr->name.data(), r_ptr->level, r_ptr->symbol_definition.character);
}
fputc('\n', spoiler_file);