]> granicus.if.org Git - nethack/commitdiff
fix message when were_summoning
authornethack.allison <nethack.allison>
Sun, 7 Dec 2003 09:45:34 +0000 (09:45 +0000)
committernethack.allison <nethack.allison>
Sun, 7 Dec 2003 09:45:34 +0000 (09:45 +0000)
include/extern.h
src/mhitu.c
src/polyself.c
src/were.c

index aaa9f52e6dc23709692a7b155ac384b88b705f01..37846cffd0d1fc82a1988c46467d0b2a18202da4 100644 (file)
@@ -2307,7 +2307,7 @@ E void FDECL(skill_init, (const struct def_skill *));
 
 E void FDECL(were_change, (struct monst *));
 E void FDECL(new_were, (struct monst *));
-E int FDECL(were_summon, (struct permonst *,BOOLEAN_P,int *));
+E int FDECL(were_summon, (struct permonst *,BOOLEAN_P,int *,char *));
 E void NDECL(you_were);
 E void FDECL(you_unwere, (BOOLEAN_P));
 
index 62edfb193ce450631e6649bf39bccb393c6da66d..1d2f43eafcc43603d616bbcb0de09984e0949a6c 100644 (file)
@@ -482,9 +482,10 @@ mattacku(mtmp)
 
            if(!rn2(10) && !mtmp->mcan) {
                int numseen, numhelp;
-               char buf[BUFSZ];
+               char buf[BUFSZ], genericwere[BUFSZ];
 
-               numhelp = were_summon(mdat, FALSE, &numseen);
+               Strcpy(genericwere, "creature");
+               numhelp = were_summon(mdat, FALSE, &numseen, genericwere);
                if (youseeit) {
                        pline("%s summons help!", Monnam(mtmp));
                        if (numhelp > 0) {
@@ -504,10 +505,10 @@ mattacku(mtmp)
                            else {
                                if (numseen == 1)
                                        Sprintf(buf, "%s appears",
-                                                       an(mdat->mname));
+                                                       an(genericwere));
                                else
                                        Sprintf(buf, "%s appear",
-                                                       makeplural(mdat->mname));
+                                                       makeplural(genericwere));
                                pline("%s%s!", upstart(buf), from_nowhere);
                            }
                        } /* else no help came; but you didn't know it tried */
index ce16fa0f8d529e5dc26db8b5433c4948eadc0b08..f7720d046a1899007c513c070f3cf2b60d3d7bf0 100644 (file)
@@ -926,7 +926,7 @@ dosummon()
 
        You("call upon your brethren for help!");
        exercise(A_WIS, TRUE);
-       if (!were_summon(youmonst.data, TRUE, &placeholder))
+       if (!were_summon(youmonst.data, TRUE, &placeholder, (char *)0))
                pline("But none arrive.");
        return(1);
 }
index 0e4ffb503093837c6a443bf80fc91bf0f64f0558..b317d3b3f41e40c695fcd728f64bad31339bc75a 100644 (file)
@@ -82,10 +82,11 @@ register struct monst *mon;
 }
 
 int
-were_summon(ptr,yours,visible) /* were-creature (even you) summons a horde */
+were_summon(ptr,yours,visible,genbuf)  /* were-creature (even you) summons a horde */
 register struct permonst *ptr;
 register boolean yours;
 int *visible;                  /* number of visible helpers created */
+char *genbuf;
 {
        register int i, typ, pm = monsndx(ptr);
        register struct monst *mtmp;
@@ -100,14 +101,17 @@ int *visible;                     /* number of visible helpers created */
                case PM_WERERAT:
                case PM_HUMAN_WERERAT:
                        typ = rn2(3) ? PM_SEWER_RAT : rn2(3) ? PM_GIANT_RAT : PM_RABID_RAT ;
+                       if (genbuf) Strcpy(genbuf, "rat");
                        break;
                case PM_WEREJACKAL:
                case PM_HUMAN_WEREJACKAL:
                        typ = PM_JACKAL;
+                       if (genbuf) Strcpy(genbuf, "jackal");
                        break;
                case PM_WEREWOLF:
                case PM_HUMAN_WEREWOLF:
                        typ = rn2(5) ? PM_WOLF : PM_WINTER_WOLF ;
+                       if (genbuf) Strcpy(genbuf, "wolf");
                        break;
                default:
                        continue;