From f17c823d6f91ae535ebcadd8b5b369efea09b772 Mon Sep 17 00:00:00 2001 From: Fate Date: Sat, 30 May 2009 12:18:30 +0000 Subject: Misc. fixes to magic, mostly suggested/pointed out by Kess --- conf/magic.conf.template | 6 ++++-- npc/005-1_Snake_desert/tree.txt | 2 -- npc/009-2_Hurnscald/wyara.txt | 36 +++++++++++++++++++++++++++++------- npc/013-1_Woodland_hills/sagatha.txt | 6 ++++-- npc/items/purification_potion.txt | 8 +++----- 5 files changed, 40 insertions(+), 18 deletions(-) diff --git a/conf/magic.conf.template b/conf/magic.conf.template index 8c5ac05d..fd04a449 100644 --- a/conf/magic.conf.template +++ b/conf/magic.conf.template @@ -771,6 +771,7 @@ SPELL shear : "#N14" = THEN ABORT; status_change(target, SC_SHEARED, 1, 1, 1, 1, 600000); # 10 minutes CALL shear-drop("Fluffy", "Fluffy", "WhiteFur", 300); + CALL shear-drop("EasterFluffy", "Easter Fluffy", "WhiteFur", 300); CALL shear-drop("SpikyMushroom", "Spiky Mushroom", "HardSpike", 250); CALL shear-drop("Mouboo", "Mouboo", "CottonCloth", 175); CALL shear-drop("Cobalt", "CobaltPlant", "CobaltHerb", 700); @@ -799,7 +800,7 @@ SPELL barrier (target : PC) : "#A10" = status_change(target, SC_MBARRIER, 20 + max(30, spellpower / 8), 0, 0, 0, 2000 + (spellpower * 200)); message (target, "You are surrounded by a magical barrier."); CALL gain_xp(3); - ATEND message (target, "Your magical barrier disspiates."); + ATEND message (target, "Your magical barrier dissipates."); sfx(target, SFX_UNBARRIER, 0); @@ -986,7 +987,8 @@ SPELL summon-partner : "#A23" = IN (MANA 30, CASTTIME 2000, REQUIRE skill(caster, MAGIC) > level, REQUIRE skill(caster, school) > level, - REQUIRE is_married(caster)) + REQUIRE is_married(caster), + REQUIRE is_equipped(caster, "WeddingRing")) => EFFECT CALL adjust_spellpower(school); CALL default_effect(); IF (failed (partner (caster))) diff --git a/npc/005-1_Snake_desert/tree.txt b/npc/005-1_Snake_desert/tree.txt index 093cbe1e..11125383 100644 --- a/npc/005-1_Snake_desert/tree.txt +++ b/npc/005-1_Snake_desert/tree.txt @@ -95,8 +95,6 @@ L_both: close; L_givewater: - set @BOTTLE, 540; - if (countitem("BottleOfWater") < 1) goto L_no_water; delitem "BottleOfWater", 1; diff --git a/npc/009-2_Hurnscald/wyara.txt b/npc/009-2_Hurnscald/wyara.txt index f79cb733..a2abec12 100644 --- a/npc/009-2_Hurnscald/wyara.txt +++ b/npc/009-2_Hurnscald/wyara.txt @@ -201,7 +201,7 @@ L_Magic_main: L_Magic_explain: mes "[Wyara the Witch]"; - mes "\"Magic is just a name for the force that lives in all plants and animals and emenates from there into all things, living or dead.\""; + mes "\"Magic is just a name for the force that lives in all plants and animals and emanates from there into all things, living or dead.\""; next; mes "[Wyara the Witch]"; @@ -249,20 +249,42 @@ L_Magic_train: if (getskilllv(SKILL_MAGIC_NATURE) > 1) goto L_Magic_train_no; mes "[Wyara the Witch]"; + + if (@Q_status >= @STATUS_PURIFY_EXPLAINED) + goto L_Magic_train_wb; + mes "\"Train you? No... you should talk to Sagatha.\""; mes "She hesitates."; next; callfunc "SagathaStatus"; - mes "[Wyara the Witch]"; - mes "\"It would be difficult to ask her to accept you unless you understand some of the basics already, though.\""; if (@evil) - mes "\"However, I have heard that you have done something unforgiveable; I doubt that she will train you now, and I refuse to do so, too.\""; + goto L_Magic_train_evil; + + mes "[Wyara the Witch]"; + mes "\"It would be difficult to ask her to accept you unless you understand some of the basics already.\""; + next; + + goto L_Magic_train_dispatch; + +L_Magic_train_evil: + mes "Wyara looks at you sadly."; + mes "\"I have heard that you have done something unforgiveable. No witch in this land will teach you now.\""; next; + goto L_Magic_main; + +L_Magic_train_wb: + callfunc "SagathaStatus"; + if (@evil) - goto L_Magic_main; + goto L_Magic_train_evil; + + mes "\"Ah, yes, your training...\""; + next; + +L_Magic_train_dispatch: if (@Q_status == @STATUS_PURIFY_TWICE) goto L_Magic_purify_done; if (@Q_status == @STATUS_PURIFY_ONCE) @@ -310,7 +332,7 @@ L_Magic_purify_explained: delitem "MaggotSlime", 20; getitem "PurificationPotion", 1; mes "[Wyara the Witch]"; - mes "\"Wyara grinds the leaves and mixes them with the slime, boils them, then speaks a brief incantation over them and hands you the result.\""; + mes "Wyara grinds the leaves and mixes them with the slime, boils them, then speaks a brief incantation over them and hands you the result."; next; L_Magic_purify_doit: @@ -361,7 +383,7 @@ L_Magic_purify_once: delitem "MaggotSlime", 20; getitem "PurificationPotion", 1; mes "[Wyara the Witch]"; - mes "\"Wyara brews another purification potion.\""; + mes "Wyara brews another purification potion."; next; L_Magic_purify_doit2: mes "[Wyara the Witch]"; diff --git a/npc/013-1_Woodland_hills/sagatha.txt b/npc/013-1_Woodland_hills/sagatha.txt index f1429789..5d59b9de 100644 --- a/npc/013-1_Woodland_hills/sagatha.txt +++ b/npc/013-1_Woodland_hills/sagatha.txt @@ -159,12 +159,14 @@ L_main: menu "Can you explain magic to me?", L_explain_magic, "Can you teach me more magic?", L_teach, - "What do you know about...", L_Question; + "What do you know about...", L_Question, + "Goodbye.", L_close; if (!@Q_status) menu "Can you explain magic to me?", L_explain_magic, "Can you teach me magic?", L_teach_initial, - "What do you know about...", L_Question; + "What do you know about...", L_Question, + "Goodbye.", L_close; close; L_teach_initial: diff --git a/npc/items/purification_potion.txt b/npc/items/purification_potion.txt index 85b07010..09a854bd 100644 --- a/npc/items/purification_potion.txt +++ b/npc/items/purification_potion.txt @@ -1,4 +1,4 @@ -// THis is the function to use the PurificationPotion +// This is the function to use the PurificationPotion function script usePurificationPotion { if (isat("011-1.gat", 88,67)) @@ -16,10 +16,8 @@ L_Wyara_Pond: if (@Q_status < 1) goto L_NoUse; - if (@Q_status == 2) - set @Q_status, 3; - if (@Q_status < 2) - set @Q_status, 3; + if (@Q_status <= 2) + set @Q_status, @Q_status + 1; message strcharinfo(0), "You pour the potion into the pond."; -- cgit v1.2.3-70-g09d2