Add is_watch define for watchmen
This commit is contained in:
@@ -134,6 +134,8 @@
|
|||||||
#define is_displacer(ptr) (((ptr)->mflags3 & M3_DISPLACES) != 0L)
|
#define is_displacer(ptr) (((ptr)->mflags3 & M3_DISPLACES) != 0L)
|
||||||
#define is_mplayer(ptr) (((ptr) >= &mons[PM_ARCHEOLOGIST]) && \
|
#define is_mplayer(ptr) (((ptr) >= &mons[PM_ARCHEOLOGIST]) && \
|
||||||
((ptr) <= &mons[PM_WIZARD]))
|
((ptr) <= &mons[PM_WIZARD]))
|
||||||
|
#define is_watch(ptr) ((ptr) == &mons[PM_WATCHMAN] || \
|
||||||
|
(ptr) == &mons[PM_WATCH_CAPTAIN])
|
||||||
#define is_rider(ptr) ((ptr) == &mons[PM_DEATH] || \
|
#define is_rider(ptr) ((ptr) == &mons[PM_DEATH] || \
|
||||||
(ptr) == &mons[PM_FAMINE] || \
|
(ptr) == &mons[PM_FAMINE] || \
|
||||||
(ptr) == &mons[PM_PESTILENCE])
|
(ptr) == &mons[PM_PESTILENCE])
|
||||||
|
|||||||
@@ -1171,8 +1171,7 @@ watch_dig(mtmp, x, y, zap)
|
|||||||
if (!mtmp) {
|
if (!mtmp) {
|
||||||
for(mtmp = fmon; mtmp; mtmp = mtmp->nmon) {
|
for(mtmp = fmon; mtmp; mtmp = mtmp->nmon) {
|
||||||
if (DEADMONSTER(mtmp)) continue;
|
if (DEADMONSTER(mtmp)) continue;
|
||||||
if ((mtmp->data == &mons[PM_WATCHMAN] ||
|
if (is_watch(mtmp->data) &&
|
||||||
mtmp->data == &mons[PM_WATCH_CAPTAIN]) &&
|
|
||||||
mtmp->mcansee && m_canseeu(mtmp) &&
|
mtmp->mcansee && m_canseeu(mtmp) &&
|
||||||
couldsee(mtmp->mx, mtmp->my) && mtmp->mpeaceful)
|
couldsee(mtmp->mx, mtmp->my) && mtmp->mpeaceful)
|
||||||
break;
|
break;
|
||||||
|
|||||||
+2
-4
@@ -1198,8 +1198,7 @@ dumb:
|
|||||||
if (in_town(x, y))
|
if (in_town(x, y))
|
||||||
for(mtmp = fmon; mtmp; mtmp = mtmp->nmon) {
|
for(mtmp = fmon; mtmp; mtmp = mtmp->nmon) {
|
||||||
if (DEADMONSTER(mtmp)) continue;
|
if (DEADMONSTER(mtmp)) continue;
|
||||||
if((mtmp->data == &mons[PM_WATCHMAN] ||
|
if (is_watch(mtmp->data) &&
|
||||||
mtmp->data == &mons[PM_WATCH_CAPTAIN]) &&
|
|
||||||
couldsee(mtmp->mx, mtmp->my) &&
|
couldsee(mtmp->mx, mtmp->my) &&
|
||||||
mtmp->mpeaceful) {
|
mtmp->mpeaceful) {
|
||||||
if (canspotmon(mtmp))
|
if (canspotmon(mtmp))
|
||||||
@@ -1218,8 +1217,7 @@ dumb:
|
|||||||
if (in_town(x, y))
|
if (in_town(x, y))
|
||||||
for (mtmp = fmon; mtmp; mtmp = mtmp->nmon) {
|
for (mtmp = fmon; mtmp; mtmp = mtmp->nmon) {
|
||||||
if (DEADMONSTER(mtmp)) continue;
|
if (DEADMONSTER(mtmp)) continue;
|
||||||
if ((mtmp->data == &mons[PM_WATCHMAN] ||
|
if (is_watch(mtmp->data) &&
|
||||||
mtmp->data == &mons[PM_WATCH_CAPTAIN]) &&
|
|
||||||
mtmp->mpeaceful && couldsee(mtmp->mx, mtmp->my)) {
|
mtmp->mpeaceful && couldsee(mtmp->mx, mtmp->my)) {
|
||||||
if (canspotmon(mtmp))
|
if (canspotmon(mtmp))
|
||||||
pline("%s yells:", Amonnam(mtmp));
|
pline("%s yells:", Amonnam(mtmp));
|
||||||
|
|||||||
+1
-2
@@ -169,8 +169,7 @@ boolean isyou;
|
|||||||
/* Warn about future fountain use. */
|
/* Warn about future fountain use. */
|
||||||
for(mtmp = fmon; mtmp; mtmp = mtmp->nmon) {
|
for(mtmp = fmon; mtmp; mtmp = mtmp->nmon) {
|
||||||
if (DEADMONSTER(mtmp)) continue;
|
if (DEADMONSTER(mtmp)) continue;
|
||||||
if ((mtmp->data == &mons[PM_WATCHMAN] ||
|
if (is_watch(mtmp->data) &&
|
||||||
mtmp->data == &mons[PM_WATCH_CAPTAIN]) &&
|
|
||||||
couldsee(mtmp->mx, mtmp->my) &&
|
couldsee(mtmp->mx, mtmp->my) &&
|
||||||
mtmp->mpeaceful) {
|
mtmp->mpeaceful) {
|
||||||
pline("%s yells:", Amonnam(mtmp));
|
pline("%s yells:", Amonnam(mtmp));
|
||||||
|
|||||||
@@ -3117,9 +3117,7 @@ register boolean silent;
|
|||||||
|
|
||||||
for(mtmp = fmon; mtmp; mtmp = mtmp->nmon) {
|
for(mtmp = fmon; mtmp; mtmp = mtmp->nmon) {
|
||||||
if (DEADMONSTER(mtmp)) continue;
|
if (DEADMONSTER(mtmp)) continue;
|
||||||
if((mtmp->data == &mons[PM_WATCHMAN] ||
|
if (is_watch(mtmp->data) && mtmp->mpeaceful) {
|
||||||
mtmp->data == &mons[PM_WATCH_CAPTAIN])
|
|
||||||
&& mtmp->mpeaceful) {
|
|
||||||
ct++;
|
ct++;
|
||||||
if(cansee(mtmp->mx, mtmp->my) && mtmp->mcanmove) {
|
if(cansee(mtmp->mx, mtmp->my) && mtmp->mcanmove) {
|
||||||
if (distu(mtmp->mx, mtmp->my) == 2) nct++;
|
if (distu(mtmp->mx, mtmp->my) == 2) nct++;
|
||||||
@@ -3157,9 +3155,8 @@ pacify_guards()
|
|||||||
|
|
||||||
for (mtmp = fmon; mtmp; mtmp = mtmp->nmon) {
|
for (mtmp = fmon; mtmp; mtmp = mtmp->nmon) {
|
||||||
if (DEADMONSTER(mtmp)) continue;
|
if (DEADMONSTER(mtmp)) continue;
|
||||||
if (mtmp->data == &mons[PM_WATCHMAN] ||
|
if (is_watch(mtmp->data))
|
||||||
mtmp->data == &mons[PM_WATCH_CAPTAIN])
|
mtmp->mpeaceful = 1;
|
||||||
mtmp->mpeaceful = 1;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -400,7 +400,7 @@ register struct monst *mtmp;
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* the watch will look around and see if you are up to no good :-) */
|
/* the watch will look around and see if you are up to no good :-) */
|
||||||
if (mdat == &mons[PM_WATCHMAN] || mdat == &mons[PM_WATCH_CAPTAIN])
|
if (is_watch(mdat))
|
||||||
watch_on_duty(mtmp);
|
watch_on_duty(mtmp);
|
||||||
|
|
||||||
else if (is_mind_flayer(mdat) && !rn2(20)) {
|
else if (is_mind_flayer(mdat) && !rn2(20)) {
|
||||||
|
|||||||
+1
-2
@@ -516,8 +516,7 @@ int thrown; /* HMON_xxx (0 => hand-to-hand, other => ranged) */
|
|||||||
|
|
||||||
anger_guards = (mon->mpeaceful &&
|
anger_guards = (mon->mpeaceful &&
|
||||||
(mon->ispriest || mon->isshk ||
|
(mon->ispriest || mon->isshk ||
|
||||||
mon->data == &mons[PM_WATCHMAN] ||
|
is_watch(mon->data)));
|
||||||
mon->data == &mons[PM_WATCH_CAPTAIN]));
|
|
||||||
result = hmon_hitmon(mon, obj, thrown);
|
result = hmon_hitmon(mon, obj, thrown);
|
||||||
if (mon->ispriest && !rn2(2)) ghod_hitsu(mon);
|
if (mon->ispriest && !rn2(2)) ghod_hitsu(mon);
|
||||||
if (anger_guards) (void)angry_guards(!!Deaf);
|
if (anger_guards) (void)angry_guards(!!Deaf);
|
||||||
|
|||||||
Reference in New Issue
Block a user