diff options
Diffstat (limited to 'world/map/npc/magic/level2-arrow-hail.txt')
-rw-r--r-- | world/map/npc/magic/level2-arrow-hail.txt | 19 |
1 files changed, 17 insertions, 2 deletions
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; |