luck artifact dependencies

Instead of adding a new artifact.h to pray.c, remove the existing
ones from attrib.c, invent.c, and mkobj.c.  This also updates the Unix
and VMS editions of Makefile.src; having stale dependencies in those
for other ports could cause unnecessary recompilation but can't break
anything in this case.
This commit is contained in:
nethack.rankin
2002-10-09 07:06:08 +00:00
parent 5a9550819c
commit a0067f97e2
8 changed files with 32 additions and 32 deletions

View File

@@ -248,6 +248,17 @@ unsigned long abil;
return((boolean)(arti && (arti->spfx & abil)));
}
/* used so that callers don't need to known about SPFX_ codes */
boolean
confers_luck(obj)
struct obj *obj;
{
/* might as well check for this too */
if (obj->otyp == LUCKSTONE) return TRUE;
return (obj->oartifact && spec_ability(obj, SPFX_LUCK));
}
#endif /* OVL0 */
#ifdef OVLB

View File

@@ -1,11 +1,10 @@
/* SCCS Id: @(#)attrib.c 3.4 2002/07/17 */
/* SCCS Id: @(#)attrib.c 3.4 2002/10/07 */
/* Copyright 1988, 1989, 1990, 1992, M. Stephenson */
/* NetHack may be freely redistributed. See license for details. */
/* attribute modification routines. */
#include "hack.h"
#include "artifact.h"
/* #define DEBUG */ /* uncomment for debugging info */
@@ -211,9 +210,8 @@ boolean parameter; /* So I can't think up of a good name. So sue me. --KAA */
register struct obj *otmp;
register long bonchance = 0;
for(otmp = invent; otmp; otmp=otmp->nobj)
if (otmp->otyp == LUCKSTONE
|| (otmp->oartifact && spec_ability(otmp, SPFX_LUCK))) {
for (otmp = invent; otmp; otmp = otmp->nobj)
if (confers_luck(otmp)) {
if (otmp->cursed) bonchance -= otmp->quan;
else if (otmp->blessed) bonchance += otmp->quan;
else if (parameter) bonchance += otmp->quan;

View File

@@ -1,9 +1,8 @@
/* SCCS Id: @(#)invent.c 3.4 2002/09/30 */
/* SCCS Id: @(#)invent.c 3.4 2002/10/07 */
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
/* NetHack may be freely redistributed. See license for details. */
#include "hack.h"
#include "artifact.h"
#define NOINVSYM '#'
#define CONTAINED_SYM '>' /* designator for inside a container */
@@ -287,8 +286,7 @@ void
addinv_core2(obj)
struct obj *obj;
{
if (obj->otyp == LUCKSTONE ||
(obj->oartifact && spec_ability(obj, SPFX_LUCK))) {
if (confers_luck(obj)) {
/* new luckstone must be in inventory by this point
* for correct calculation */
set_moreluck();
@@ -514,8 +512,7 @@ struct obj *obj;
if (obj->otyp == LOADSTONE) {
curse(obj);
} else if (obj->otyp == LUCKSTONE ||
(obj->oartifact && spec_ability(obj, SPFX_LUCK))) {
} else if (confers_luck(obj)) {
set_moreluck();
flags.botl = 1;
} else if (obj->otyp == FIGURINE && obj->timed) {

View File

@@ -1,9 +1,8 @@
/* SCCS Id: @(#)mkobj.c 3.4 2002/09/21 */
/* SCCS Id: @(#)mkobj.c 3.4 2002/10/07 */
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
/* NetHack may be freely redistributed. See license for details. */
#include "hack.h"
#include "artifact.h"
#include "prop.h"
STATIC_DCL void FDECL(mkbox_cnts,(struct obj *));
@@ -684,8 +683,7 @@ register struct obj *otmp;
#endif
otmp->cursed = 0;
otmp->blessed = 1;
if (otmp->otyp == LUCKSTONE
|| (otmp->oartifact && spec_ability(otmp, SPFX_LUCK)))
if (carried(otmp) && confers_luck(otmp))
set_moreluck();
else if (otmp->otyp == BAG_OF_HOLDING)
otmp->owt = weight(otmp);
@@ -699,8 +697,7 @@ unbless(otmp)
register struct obj *otmp;
{
otmp->blessed = 0;
if (otmp->otyp == LUCKSTONE
|| (otmp->oartifact && spec_ability(otmp, SPFX_LUCK)))
if (carried(otmp) && confers_luck(otmp))
set_moreluck();
else if (otmp->otyp == BAG_OF_HOLDING)
otmp->owt = weight(otmp);
@@ -718,8 +715,7 @@ register struct obj *otmp;
/* welded two-handed weapon interferes with some armor removal */
if (otmp == uwep && bimanual(uwep)) reset_remarm();
/* some cursed items need immediate updating */
if (carried(otmp) && (otmp->otyp == LUCKSTONE ||
(otmp->oartifact && spec_ability(otmp, SPFX_LUCK))))
if (carried(otmp) && confers_luck(otmp))
set_moreluck();
else if (otmp->otyp == BAG_OF_HOLDING)
otmp->owt = weight(otmp);
@@ -737,13 +733,12 @@ uncurse(otmp)
register struct obj *otmp;
{
otmp->cursed = 0;
if (otmp->otyp == LUCKSTONE
|| (otmp->oartifact && spec_ability(otmp, SPFX_LUCK)))
if (carried(otmp) && confers_luck(otmp))
set_moreluck();
else if (otmp->otyp == BAG_OF_HOLDING)
otmp->owt = weight(otmp);
otmp->owt = weight(otmp);
else if (otmp->otyp == FIGURINE && otmp->timed)
(void) stop_timer(FIG_TRANSFORM, (genericptr_t) otmp);
(void) stop_timer(FIG_TRANSFORM, (genericptr_t) otmp);
return;
}

View File

@@ -4,7 +4,6 @@
#include "hack.h"
#include "epri.h"
#include "artifact.h"
STATIC_PTR int NDECL(prayer_done);
STATIC_DCL struct obj *NDECL(worst_cursed_item);
@@ -242,8 +241,7 @@ worst_cursed_item()
} else {
for (otmp = invent; otmp; otmp = otmp->nobj) {
if (!otmp->cursed) continue;
if (otmp->otyp == LOADSTONE || otmp->otyp == LUCKSTONE ||
(otmp->oartifact && spec_ability(otmp, SPFX_LUCK)))
if (otmp->otyp == LOADSTONE || confers_luck(otmp))
break;
}
}