Eliminate magic numbers from uchangealign()
This commit is contained in:
@@ -60,4 +60,11 @@ typedef struct align { /* alignment & record */
|
|||||||
#define Msa2amask(x) (((x) == 3) ? 4 : (x))
|
#define Msa2amask(x) (((x) == 3) ? 4 : (x))
|
||||||
#define MSA_NONE 0 /* unaligned or multiple alignments */
|
#define MSA_NONE 0 /* unaligned or multiple alignments */
|
||||||
|
|
||||||
|
/* alignment change reasons for uchangealign(attrib.c) */
|
||||||
|
enum uchangealign_reasons {
|
||||||
|
A_CG_CONVERT = 0, /* permanently converted */
|
||||||
|
A_CG_HELM_ON = 1, /* donned helm of opposite alignment */
|
||||||
|
A_CG_HELM_OFF = 2, /* doffed helm of opposite alignment */
|
||||||
|
};
|
||||||
|
|
||||||
#endif /* ALIGN_H */
|
#endif /* ALIGN_H */
|
||||||
|
|||||||
+4
-4
@@ -1237,7 +1237,7 @@ adjalign(int n)
|
|||||||
/* change hero's alignment type, possibly losing use of artifacts */
|
/* change hero's alignment type, possibly losing use of artifacts */
|
||||||
void
|
void
|
||||||
uchangealign(int newalign,
|
uchangealign(int newalign,
|
||||||
int reason) /* 0==conversion, 1==helm-of-OA on, 2==helm-of-OA off */
|
int reason) /* A_CG_CONVERT, A_CG_HELM_ON, or A_CG_HELM_OFF */
|
||||||
{
|
{
|
||||||
aligntyp oldalign = u.ualign.type;
|
aligntyp oldalign = u.ualign.type;
|
||||||
|
|
||||||
@@ -1245,7 +1245,7 @@ uchangealign(int newalign,
|
|||||||
/* You/Your/pline message with call flush_screen(), triggering bot(),
|
/* You/Your/pline message with call flush_screen(), triggering bot(),
|
||||||
so the actual data change needs to come before the message */
|
so the actual data change needs to come before the message */
|
||||||
disp.botl = TRUE; /* status line needs updating */
|
disp.botl = TRUE; /* status line needs updating */
|
||||||
if (reason == 0) {
|
if (reason == A_CG_CONVERT) {
|
||||||
/* conversion via altar */
|
/* conversion via altar */
|
||||||
livelog_printf(LL_ALIGNMENT, "permanently converted to %s",
|
livelog_printf(LL_ALIGNMENT, "permanently converted to %s",
|
||||||
aligns[1 - newalign].adj);
|
aligns[1 - newalign].adj);
|
||||||
@@ -1258,7 +1258,7 @@ uchangealign(int newalign,
|
|||||||
} else {
|
} else {
|
||||||
/* putting on or taking off a helm of opposite alignment */
|
/* putting on or taking off a helm of opposite alignment */
|
||||||
u.ualign.type = (aligntyp) newalign;
|
u.ualign.type = (aligntyp) newalign;
|
||||||
if (reason == 1) {
|
if (reason == A_CG_HELM_ON) {
|
||||||
adjalign(-7); /* for abuse -- record will be cleared shortly */
|
adjalign(-7); /* for abuse -- record will be cleared shortly */
|
||||||
Your("mind oscillates %s.", Hallucination ? "wildly" : "briefly");
|
Your("mind oscillates %s.", Hallucination ? "wildly" : "briefly");
|
||||||
make_confused(rn1(2, 3), FALSE);
|
make_confused(rn1(2, 3), FALSE);
|
||||||
@@ -1267,7 +1267,7 @@ uchangealign(int newalign,
|
|||||||
/* don't livelog taking it back off */
|
/* don't livelog taking it back off */
|
||||||
livelog_printf(LL_ALIGNMENT, "used a helm to turn %s",
|
livelog_printf(LL_ALIGNMENT, "used a helm to turn %s",
|
||||||
aligns[1 - newalign].adj);
|
aligns[1 - newalign].adj);
|
||||||
} else if (reason == 2) {
|
} else if (reason == A_CG_HELM_OFF) {
|
||||||
Your("mind is %s.", Hallucination
|
Your("mind is %s.", Hallucination
|
||||||
? "much of a muchness"
|
? "much of a muchness"
|
||||||
: "back in sync with your body");
|
: "back in sync with your body");
|
||||||
|
|||||||
+2
-2
@@ -440,7 +440,7 @@ Helmet_on(void)
|
|||||||
uchangealign((u.ualign.type != A_NEUTRAL)
|
uchangealign((u.ualign.type != A_NEUTRAL)
|
||||||
? -u.ualign.type
|
? -u.ualign.type
|
||||||
: (uarmh->o_id % 2) ? A_CHAOTIC : A_LAWFUL,
|
: (uarmh->o_id % 2) ? A_CHAOTIC : A_LAWFUL,
|
||||||
1);
|
A_CG_HELM_ON);
|
||||||
/* makeknown(HELM_OF_OPPOSITE_ALIGNMENT); -- below, after Tobjnam() */
|
/* makeknown(HELM_OF_OPPOSITE_ALIGNMENT); -- below, after Tobjnam() */
|
||||||
/*FALLTHRU*/
|
/*FALLTHRU*/
|
||||||
case DUNCE_CAP:
|
case DUNCE_CAP:
|
||||||
@@ -521,7 +521,7 @@ Helmet_off(void)
|
|||||||
/* changing alignment can toggle off active artifact
|
/* changing alignment can toggle off active artifact
|
||||||
properties, including levitation; uarmh could get
|
properties, including levitation; uarmh could get
|
||||||
dropped or destroyed here */
|
dropped or destroyed here */
|
||||||
uchangealign(u.ualignbase[A_CURRENT], 2);
|
uchangealign(u.ualignbase[A_CURRENT], A_CG_HELM_OFF);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
impossible(unknown_type, c_helmet, uarmh->otyp);
|
impossible(unknown_type, c_helmet, uarmh->otyp);
|
||||||
|
|||||||
+1
-1
@@ -1612,7 +1612,7 @@ offer_different_alignment_altar(
|
|||||||
consume_offering(otmp);
|
consume_offering(otmp);
|
||||||
pline("%s accepts your allegiance.", a_gname());
|
pline("%s accepts your allegiance.", a_gname());
|
||||||
|
|
||||||
uchangealign(altaralign, 0);
|
uchangealign(altaralign, A_CG_CONVERT);
|
||||||
/* Beware, Conversion is costly */
|
/* Beware, Conversion is costly */
|
||||||
change_luck(-3);
|
change_luck(-3);
|
||||||
u.ublesscnt += 300;
|
u.ublesscnt += 300;
|
||||||
|
|||||||
Reference in New Issue
Block a user