purple worm digestion

Generally modify the AD_DGST damage type so that:
- players and pets get no AD_DGST nutrition from G_NOCORPSE monsters
- undead no longer convey any nutrition, to either monsters or you-as-monster
  I decided on this based on the age typically assigned to undead corpses.
- digestion conveys 50% or normal nutrition, and takes 25% the time to eat.
- all AD_DGST attacks are now subject to gas spore explosions, including player
This commit is contained in:
cohrs
2002-02-18 23:36:46 +00:00
parent 839947d423
commit cad85663de
5 changed files with 68 additions and 12 deletions

View File

@@ -1616,10 +1616,16 @@ register struct attack *mattk;
You("hurriedly regurgitate the sizzling in your %s.",
body_part(STOMACH));
} else {
u.uhunger += mdef->data->cnutrit;
tmp = 1 + (mdef->data->cwt >> 8);
if (corpse_chance(mdef, &youmonst, TRUE) &&
!(mvitals[monsndx(mdef->data)].mvflags &
G_NOCORPSE)) {
/* nutrition only if there can be a corpse */
u.uhunger += (mdef->data->cnutrit+1) / 2;
} else tmp = 0;
Sprintf(msgbuf, "You totally digest %s.",
mon_nam(mdef));
if ((tmp = 3 + (mdef->data->cwt >> 6)) != 0) {
if (tmp != 0) {
/* setting afternmv = end_engulf is tempting,
* but will cause problems if the player is
* attacked (which uses his real location) or