summaryrefslogtreecommitdiff
path: root/conf
diff options
context:
space:
mode:
authorFate <fate-tmw@googlemail.com>2008-12-27 22:22:21 -0700
committerFate <fate-tmw@googlemail.com>2008-12-27 22:22:21 -0700
commitaacf6527a0ae9d440f9271906400825c9722275f (patch)
tree10ec2d33e7d9bd4285227722f9fce410fa2abae6 /conf
parent562a0fdbaa002a49f4763bd07442e2ed32726ab9 (diff)
downloadserverdata-aacf6527a0ae9d440f9271906400825c9722275f.tar.gz
serverdata-aacf6527a0ae9d440f9271906400825c9722275f.tar.bz2
serverdata-aacf6527a0ae9d440f9271906400825c9722275f.tar.xz
serverdata-aacf6527a0ae9d440f9271906400825c9722275f.zip
Magic quests 0, 2, 4
Diffstat (limited to 'conf')
-rw-r--r--conf/magic.conf21
1 files changed, 17 insertions, 4 deletions
diff --git a/conf/magic.conf b/conf/magic.conf
index a0eb7b4a..21a8ddf8 100644
--- a/conf/magic.conf
+++ b/conf/magic.conf
@@ -211,7 +211,10 @@ SPELL lesser-heal (target : STRING) : "#L00" =
=> EFFECT CALL adjust_spellpower(school);
CALL default_effect();
IF failed(pc(target))
- THEN target = caster; # quest handling goes here
+ THEN (IF ((target = "mouboo" || target = "Mouboo")
+ && rdistance(location(caster), location(npc("Mouboo"))) < 2 + (spellpower / 100))
+ THEN { mes "Your spell seems to have no effect on the mouboo."; next; close; }
+ ELSE target = caster);
ELSE target = pc(target);
CALL heal(target, 200);
CALL gain_xp(1);
@@ -372,9 +375,19 @@ SPELL lay-on-hands (target : STRING) : "#L10" =
))
=> EFFECT CALL adjust_spellpower(school);
IF failed(pc(target))
- THEN target = caster; # quest handling goes here
- ELSE target = pc(target);
- needed = max_hp(target) - hp(target);
+ THEN (IF ((target = "mouboo" || target = "Mouboo")
+ && rdistance(location(caster), location(npc("Mouboo"))) < 2 + (spellpower / 100))
+ THEN (needed = 1000;
+ {
+ set @spell, 1;
+ callfunc "QuestMoubooHeal";
+ })
+ ELSE (target = caster;
+ needed = max_hp(target) - hp(target);
+ ));
+ ELSE (target = pc(target);
+ needed = max_hp(target) - hp(target);)
+
pay_fraction = max(80, 200 - (vit(caster) + (spellpower / 10))); # Pay at least 40%
payment = (needed * pay_fraction) / 200;
available = hp(caster) - (max_hp(caster) / 20);