From 3187a84559d9d50e0bb6617165e47db7f32fbb52 Mon Sep 17 00:00:00 2001 From: HoraK-FDF Date: Tue, 11 Oct 2022 09:41:39 +0200 Subject: frillyar fix and heal improvement --- world/map/npc/magic/level1-lesser-heal.txt | 3 ++- world/map/npc/magic/level2-arrow-hail.txt | 19 +++++++++++++++++-- world/map/npc/magic/level2-lay-on-hands.txt | 3 ++- world/map/npc/magic/level2-rain.txt | 5 +++++ 4 files changed, 26 insertions(+), 4 deletions(-) diff --git a/world/map/npc/magic/level1-lesser-heal.txt b/world/map/npc/magic/level1-lesser-heal.txt index dc4f4228..a8ee908f 100644 --- a/world/map/npc/magic/level1-lesser-heal.txt +++ b/world/map/npc/magic/level1-lesser-heal.txt @@ -52,7 +52,8 @@ L_Mouboo: L_SpecialRules6: if ($@KIMARR_EVENT < 1) goto L_Pay; if (@target_id == BL_ID) goto L_Pay; - message strcharinfo(0), "You can't heal others here."; + if ($@Fluffy_FighterID != @target_id) goto L_Pay; + message strcharinfo(0), "You can't heal others hunting here."; end; OnInit: diff --git a/world/map/npc/magic/level2-arrow-hail.txt b/world/map/npc/magic/level2-arrow-hail.txt index 24866b1c..4ebcba85 100644 --- a/world/map/npc/magic/level2-arrow-hail.txt +++ b/world/map/npc/magic/level2-arrow-hail.txt @@ -11,9 +11,18 @@ OnCast: explode .@map_ext[0], getmap(), "-"; if (.@map_ext[1] != 1 && getmap() != "099-5") end; // XXX this is fugly, in the future let's use MF_OUTSIDE to detect if a map is "outside" or "inside" if (getmapflag(getmap(), MF_TOWN)) end; - if (countitem("Arrow") >= 20 && countitem("SulphurPowder") >= 1) delitem "Arrow", 20; - elif (countitem("IronArrow") >= 20 && countitem("SulphurPowder") >= 1) delitem "IronArrow", 20; + if (countitem("Arrow") >= 20 && countitem("SulphurPowder") >= 1) goto L_Continue; + elif (countitem("IronArrow") >= 20 && countitem("SulphurPowder") >= 1) goto L_Continue; else end; + goto L_Continue; + +L_Continue: + if (getmap() == "033-1") goto L_SpecialRules6; + goto L_Pay; + +L_Pay: + if (countitem("Arrow") >= 20) delitem "Arrow", 20; + else delitem "IronArrow", 20; delitem "SulphurPowder", 1; set Sp, Sp - 25; set @_M_BLOCK, 1; // block casting, until the timer clears it @@ -107,6 +116,12 @@ OnHit: set .done, 1; end; +L_SpecialRules6: + if ($@KIMARR_EVENT < 1) goto L_Pay; + if ($@Fluffy_FighterID == BL_ID) goto L_Pay; + message strcharinfo(0), "You can't use this spell here unless hunting fluffies."; + end; + OnInit: set .school, SKILL_MAGIC_WAR; set .range, 7; diff --git a/world/map/npc/magic/level2-lay-on-hands.txt b/world/map/npc/magic/level2-lay-on-hands.txt index b8fe7c22..b6f70f65 100644 --- a/world/map/npc/magic/level2-lay-on-hands.txt +++ b/world/map/npc/magic/level2-lay-on-hands.txt @@ -73,7 +73,8 @@ L_SpecialRules5: goto L_Pay; L_SpecialRules6: if ($@KIMARR_EVENT < 1) goto L_Pay; - message strcharinfo(0), "You can't heal others here."; + if ($@Fluffy_FighterID != @target_id) goto L_Pay; + message strcharinfo(0), "You can't heal others hunting here."; end; OnInit: diff --git a/world/map/npc/magic/level2-rain.txt b/world/map/npc/magic/level2-rain.txt index f9e091f2..ad38ab6a 100644 --- a/world/map/npc/magic/level2-rain.txt +++ b/world/map/npc/magic/level2-rain.txt @@ -12,6 +12,11 @@ OnCast: if (.@map_ext[1] != 1 && getmap() != "099-5") end; // XXX this is fugly, in the future let's use MF_OUTSIDE to detect if a map is "outside" or "inside" if (getmapflag(getmap(), MF_TOWN)) end; if (countitem("BottleOfWater") < 1) end; + if (getskilllv(.school) < 4 && countitem("BottleOfWater") >= 1) goto L_Continue; + elif (getskilllv(.school) < 4) end; + goto L_Continue; + +L_Continue: if (getmap() == "033-1") goto L_SpecialRules6; goto L_Pay; -- cgit v1.2.3-60-g2f50