Original report:
--- 8< --- 8< ---
From: ejg3@cornell.edu (Eric Green)
When you cast heal on a non-blinded person, you get two "Nothing seems to
happen" messages. One is from mag_unaffects(), where it checks
affected_by_spell(victim, SPELL_BLINDNESS). You need a check something
like "if (spellnum != SPELL_HEAL)" before sending the
send_to_char(NOEFFECT, ch);
The other message comes from mag_affects. Since this doesn't have an
affect, it shouldn't be marked as MAG_AFFECTS in spell_parser.c. (Being
flagged as having one gives an entry when you stat a character also).
--- 8< --- 8< ---
I think the special check for heal is ugly, but I added it since this
little bit of ugly code prevents a lot of ugly playtime.
diff -upr stk/magic.c 172/magic.c
--- stk/magic.c Sat Jun 6 16:00:59 1998
+++ 172/magic.c Sat Jun 6 18:40:42 1998
@@ -856,7 +856,7 @@ void mag_unaffects(int level, struct cha
break;
}
- if (!affected_by_spell(victim, spell)) {
+ if (!affected_by_spell(victim, spell) && spellnum != SPELL_HEAL) {
send_to_char(NOEFFECT, ch);
return;
}
diff -upr stk/spell_parser.c 172/spell_parser.c
--- stk/spell_parser.c Sat Jun 6 16:00:59 1998
+++ 172/spell_parser.c Sat Jun 6 18:38:57 1998
@@ -948,7 +948,7 @@ void mag_assign_spells(void)
TAR_CHAR_ROOM | TAR_FIGHT_VICT, TRUE, MAG_DAMAGE);
spello(SPELL_HEAL, 60, 40, 3, POS_FIGHTING,
- TAR_CHAR_ROOM, FALSE, MAG_POINTS | MAG_AFFECTS | MAG_UNAFFECTS);
+ TAR_CHAR_ROOM, FALSE, MAG_POINTS | MAG_UNAFFECTS);
spello(SPELL_INFRAVISION, 25, 10, 1, POS_STANDING,
TAR_CHAR_ROOM | TAR_SELF_ONLY, FALSE, MAG_AFFECTS);
--
George Greer, greerga@circlemud.org | Genius may have its limitations, but
http://patches.van.ml.org/ | stupidity is not thus handicapped.
http://www.van.ml.org/CircleMUD/ | -- Elbert Hubbard
+------------------------------------------------------------+
| Ensure that you have read the CircleMUD Mailing List FAQ: |
| http://democracy.queensu.ca/~fletcher/Circle/list-faq.html |
+------------------------------------------------------------+
This archive was generated by hypermail 2b30 : 12/15/00 PST