github issue #1201 - Forcefighting webs

Issue reported by Umbire:  suggestion to always destroy adjacent webs
via 'F'<dir> if wielding Sting or Fire Brand.

Sting already did that; this adds Fire Brand.

This also augments the #untrap command when wielding either of those,
or any other blade.  And rephrases successful untrap message
"You remove {the or your} {bear trap or webbing} from Fido." to
"You extract Fido from {the or your} {bear trap or web}." since the
trap remains intact.

Forcefight and #untrap against webs ought to be reconciled to remove
[some of] their differences and/or share code.  But not by me...

Closes #1201
This commit is contained in:
PatR
2024-01-21 11:58:44 -08:00
parent 81b45f92c8
commit 13ff565a67
4 changed files with 54 additions and 22 deletions

View File

@@ -70,7 +70,6 @@ static xint16 artidisco[NROFARTIFACTS];
static const struct arti_info zero_artiexist = {0}; /* all bits zero */
static void hack_artifacts(void);
static boolean attacks(int, struct obj *);
/* handle some special cases; must be called after u_init() */
static void
@@ -536,7 +535,7 @@ restrict_name(struct obj *otmp, const char *name)
return FALSE;
}
static boolean
boolean
attacks(int adtyp, struct obj *otmp)
{
const struct artifact *weap;
@@ -549,7 +548,7 @@ attacks(int adtyp, struct obj *otmp)
boolean
defends(int adtyp, struct obj *otmp)
{
struct artifact *weap;
const struct artifact *weap;
if (!otmp)
return FALSE;