case TR_COWARDICE:
case TR_LOW_MELEE:
case TR_LOW_AC:
- case TR_LOW_MAGIC:
+ case TR_HARD_SPELL:
case TR_FAST_DIGEST:
case TR_SLOW_REGEN:
return check_equipment_flags(creature_ptr, tr_flag);
if (tmp_rp_ptr->infra > 0)
result |= FLAG_CAUSE_RACE;
- if (creature_ptr->muta3 & MUT3_INFRAVIS)
+ if (creature_ptr->muta.has(MUTA::INFRAVIS))
result |= FLAG_CAUSE_MUTATION;
if (creature_ptr->tim_infra)
result |= FLAG_CAUSE_BATTLE_FORM;
}
- if (creature_ptr->muta3 & MUT3_ESP) {
+ if (creature_ptr->muta.has(MUTA::ESP)) {
result |= FLAG_CAUSE_MUTATION;
}
creature_ptr->no_flowed = FALSE;
- if (has_pass_wall(creature_ptr) && !has_kill_wall(creature_ptr))
+ if (has_pass_wall(creature_ptr) && !has_kill_wall(creature_ptr)) {
creature_ptr->no_flowed = TRUE;
+ return;
+ }
+
+ if (!creature_ptr->realm1) {
+ creature_ptr->no_flowed = FALSE;
+ return;
+ }
for (int i = 0; i < INVEN_PACK; i++) {
if ((creature_ptr->inventory_list[i].tval == TV_NATURE_BOOK) && (creature_ptr->inventory_list[i].sval == 2))
{
BIT_FLAGS result = 0L;
- if (creature_ptr->muta3 & MUT3_FIRE_BODY) {
+ if (creature_ptr->muta.has(MUTA::FIRE_BODY)) {
result |= FLAG_CAUSE_MUTATION;
}
{
BIT_FLAGS result = 0L;
- if (creature_ptr->muta3 & MUT3_ELEC_TOUC)
+ if (creature_ptr->muta.has(MUTA::ELEC_TOUC))
result |= FLAG_CAUSE_MUTATION;
if (hex_spelling(creature_ptr, HEX_SHOCK_CLOAK) || creature_ptr->ult_res) {
{
BIT_FLAGS result = 0L;
- if (creature_ptr->muta3 & MUT3_MOTION)
+ if (creature_ptr->muta.has(MUTA::MOTION))
result |= FLAG_CAUSE_MUTATION;
if (is_specific_player_race(creature_ptr, RACE_GNOME) || is_specific_player_race(creature_ptr, RACE_GOLEM)
{
BIT_FLAGS result = 0L;
- if (creature_ptr->muta3 & MUT3_WINGS) {
+ if (creature_ptr->muta.has(MUTA::WINGS)) {
result |= FLAG_CAUSE_MUTATION;
}
result |= FLAG_CAUSE_RACE;
}
- if (creature_ptr->muta3 & MUT3_REGEN)
+ if (creature_ptr->muta.has(MUTA::REGEN))
result |= FLAG_CAUSE_MUTATION;
if (creature_ptr->special_defense & KATA_MUSOU) {
result |= check_equipment_flags(creature_ptr, TR_REGEN);
- if (creature_ptr->muta3 & MUT3_FLESH_ROT)
+ if (creature_ptr->muta.has(MUTA::FLESH_ROT))
result = 0L;
return result;
creature_ptr->cursed |= TRC_LOW_MELEE;
if (has_flag(flgs, TR_LOW_AC))
creature_ptr->cursed |= TRC_LOW_AC;
- if (has_flag(flgs, TR_LOW_MAGIC))
- creature_ptr->cursed |= TRC_LOW_MAGIC;
+ if (has_flag(flgs, TR_HARD_SPELL))
+ creature_ptr->cursed |= TRC_HARD_SPELL;
if (has_flag(flgs, TR_FAST_DIGEST))
creature_ptr->cursed |= TRC_FAST_DIGEST;
if (has_flag(flgs, TR_SLOW_REGEN))
BIT_FLAGS has_vuln_acid(player_type *creature_ptr)
{
BIT_FLAGS result = 0L;
- if (creature_ptr->muta3 & MUT3_VULN_ELEM) {
+ if (creature_ptr->muta.has(MUTA::VULN_ELEM)) {
result |= FLAG_CAUSE_MUTATION;
}
BIT_FLAGS has_vuln_elec(player_type *creature_ptr)
{
BIT_FLAGS result = 0L;
- if (creature_ptr->muta3 & MUT3_VULN_ELEM) {
+ if (creature_ptr->muta.has(MUTA::VULN_ELEM)) {
result |= FLAG_CAUSE_MUTATION;
}
BIT_FLAGS has_vuln_fire(player_type *creature_ptr)
{
BIT_FLAGS result = 0L;
- if (creature_ptr->muta3 & MUT3_VULN_ELEM) {
+ if (creature_ptr->muta.has(MUTA::VULN_ELEM)) {
result |= FLAG_CAUSE_MUTATION;
}
BIT_FLAGS has_vuln_cold(player_type *creature_ptr)
{
BIT_FLAGS result = 0L;
- if (creature_ptr->muta3 & MUT3_VULN_ELEM) {
+ if (creature_ptr->muta.has(MUTA::VULN_ELEM)) {
result |= FLAG_CAUSE_MUTATION;
}
{
BIT_FLAGS result = 0L;
- if (creature_ptr->muta3 & MUT3_FEARLESS)
+ if (creature_ptr->muta.has(MUTA::FEARLESS))
result |= FLAG_CAUSE_MUTATION;
switch (creature_ptr->pclass) {
bool has_good_luck(player_type *creature_ptr)
{
- return (creature_ptr->pseikaku == PERSONALITY_LUCKY) || (creature_ptr->muta3 & MUT3_GOOD_LUCK);
+ return (creature_ptr->pseikaku == PERSONALITY_LUCKY) || (creature_ptr->muta.has(MUTA::GOOD_LUCK));
}
BIT_FLAGS player_aggravate_state(player_type *creature_ptr)