B02002 - Monster werechange messages
Change the monster constants to match the current position of the switch statement. Also test canseemon(), since the message isn't needed if you see the change. I didn't make any other change to the message frequency. If it's too frequent, then perhaps the changes themselves are too frequent.
This commit is contained in:
@@ -43,6 +43,7 @@ failed attempt to eat floor gold while polymorphed would lose the gold
|
||||
running that stops for closed doors should stop at mimics mimicking closed doors
|
||||
allow wishing for magenta potions (ignoring the rank name 'mage')
|
||||
fix an uninitialized memory access in non-quick dolookup
|
||||
fix were changing message that wasn't being displayed
|
||||
|
||||
|
||||
Platform- and/or Interface-Specific Fixes
|
||||
|
||||
12
src/were.c
12
src/were.c
@@ -15,16 +15,16 @@ register struct monst *mon;
|
||||
|
||||
if (is_human(mon->data)) {
|
||||
if (!Protection_from_shape_changers &&
|
||||
!rn2(night() ? (flags.moonphase == FULL_MOON ? 3 : 30)
|
||||
: (flags.moonphase == FULL_MOON ? 10 : 50))) {
|
||||
!rn2(night() ? (flags.moonphase == FULL_MOON ? 3 : 30)
|
||||
: (flags.moonphase == FULL_MOON ? 10 : 50))) {
|
||||
new_were(mon); /* change into animal form */
|
||||
if (flags.soundok) {
|
||||
if (flags.soundok && !canseemon(mon)) {
|
||||
const char *howler;
|
||||
|
||||
switch (monsndx(mon->data)) {
|
||||
case PM_HUMAN_WEREWOLF: howler = "wolf"; break;
|
||||
case PM_HUMAN_WEREJACKAL: howler = "jackal"; break;
|
||||
default: howler = (char *)0; break;
|
||||
case PM_WEREWOLF: howler = "wolf"; break;
|
||||
case PM_WEREJACKAL: howler = "jackal"; break;
|
||||
default: howler = (char *)0; break;
|
||||
}
|
||||
if (howler)
|
||||
You_hear("a %s howling at the moon.", howler);
|
||||
|
||||
Reference in New Issue
Block a user