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:
cohrs
2003-04-20 18:00:12 +00:00
parent 3d7d2f569e
commit cb56f6fd2d
2 changed files with 7 additions and 6 deletions

View File

@@ -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);