diff --git a/spell.c b/spell.c index 8990b00..d02dead 100644 --- a/spell.c +++ b/spell.c @@ -7805,11 +7805,19 @@ int dospelleffects(lifeform_t *caster, enum OBTYPE spellid, int power, lifeform_ // create vine o = addobfast(targcell->obpile, OT_VINE); + // set power f = hasflag(o->flags, F_RESTRICTMOVEMENT); if (f) { f->val[0] = 100 + (power*10); - f->val[1] = B_FALSE; // struggling doesn't damage the vine + //f->val[1] = B_FALSE; // struggling doesn't damage the vine + f->val[1] = B_TRUE; // struggling doesn't damage the vine + } + // boost hp based on power, up 300% + f = hasflag(o->flags, F_OBHP); + if (f) { + f->val[1] = pctof(100 + (power*20), f->val[1]); + f->val[0] = f->val[1]; } if (caster && (caster->cell->map == targcell->map)) { // if caster is on the same map (ie. not being cast by a god)