intrinsics revamp (trunk only)
Simplify many of the intrinsics macros from
#define xxx_resistance (Hxxx || Exxx || resists_xxx(&youmonst))
down to
#define xxx_resistance (Hxxx || Exxx)
by setting or clearing an extra bit in Hxxx during polymorph so that the
resists_xxx() check becomes implicit.
Unfornately there were lots of places in the code that treat Hxxx
as a timeout number--primarily for Stunned, Confused, and Hallucination;
Stunned happens to be one of the revised macros--rather than as a bit
mask, so this patch needed a lot more changes than originally antipated.
This commit is contained in:
@@ -1446,7 +1446,7 @@ dopois:
|
||||
case AD_STUN:
|
||||
hitmsg(mtmp, mattk);
|
||||
if(!mtmp->mcan && !rn2(4)) {
|
||||
make_stunned(HStun + dmg, TRUE);
|
||||
make_stunned((HStun & TIMEOUT) + (long)dmg, TRUE);
|
||||
dmg /= 2;
|
||||
}
|
||||
break;
|
||||
@@ -2053,7 +2053,7 @@ gazemu(mtmp, mattk) /* monster gazes at you */
|
||||
|
||||
mtmp->mspec_used = mtmp->mspec_used + (stun + rn2(6));
|
||||
pline("%s stares piercingly at you!", Monnam(mtmp));
|
||||
make_stunned(HStun + stun, TRUE);
|
||||
make_stunned((HStun & TIMEOUT) + (long)stun, TRUE);
|
||||
stop_occupation();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user