summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
m---------client-data0
m---------tools0
-rw-r--r--world/map/conf/magic-level1.sex2
-rw-r--r--world/map/conf/magic-procedures.sex21
-rw-r--r--world/map/data/009-2.wlkbin24004 -> 24004 bytes
-rw-r--r--world/map/data/022-1.wlkbin19354 -> 19354 bytes
-rw-r--r--world/map/data/023-1.wlkbin27204 -> 27204 bytes
-rw-r--r--world/map/data/023-3.wlkbin27204 -> 27204 bytes
-rw-r--r--world/map/db/chest_item_db.txt3
-rw-r--r--world/map/db/generic_item_db.txt1
-rw-r--r--world/map/db/head_item_db.txt1
-rw-r--r--world/map/db/leg_item_db.txt2
-rw-r--r--world/map/db/trinket_item_db.txt3
-rw-r--r--world/map/db/use_item_db.txt22
-rw-r--r--world/map/news.d/37-v2014.7.29.txt19
-rw-r--r--world/map/news.d/38-v2014.9.1.txt22
-rw-r--r--world/map/npc/007-1/witch.txt98
-rw-r--r--world/map/npc/009-1/jack.txt6
-rw-r--r--world/map/npc/009-2/_warps.txt2
-rw-r--r--world/map/npc/009-4/barriers.txt10
-rw-r--r--world/map/npc/009-4/waric.txt2
-rw-r--r--world/map/npc/015-1/barrier.txt2
-rw-r--r--world/map/npc/024-2/barrier.txt2
-rw-r--r--world/map/npc/024-2/tyer_trigger.txt2
-rw-r--r--world/map/npc/035-2/_import.txt1
-rw-r--r--world/map/npc/035-2/emblems.txt43
-rw-r--r--world/map/npc/036-2/_import.txt1
-rw-r--r--world/map/npc/036-2/emblems.txt31
-rw-r--r--world/map/npc/043-4/_mobs.txt2
-rw-r--r--world/map/npc/052-1/channelling.txt6
-rw-r--r--world/map/npc/052-2/lobby.txt3
-rw-r--r--world/map/npc/052-2/partyroom.txt6
-rw-r--r--world/map/npc/functions/ferry.txt47
-rw-r--r--world/map/npc/functions/travelers.txt14
-rw-r--r--world/map/npc/items/check_wand.txt2
35 files changed, 291 insertions, 85 deletions
diff --git a/client-data b/client-data
-Subproject f80943a652886c211d1e24312fb9b09a73b2b7b
+Subproject 113895f8414bb7d70751678d73040c3e9710130
diff --git a/tools b/tools
-Subproject 5949e1c21c1db7f514f27c142c19383d3f86654
+Subproject 6b91c6d0b3e31a8c0560193ae2df0f1894b59c1
diff --git a/world/map/conf/magic-level1.sex b/world/map/conf/magic-level1.sex
index 88478c82..3e673170 100644
--- a/world/map/conf/magic-level1.sex
+++ b/world/map/conf/magic-level1.sex
@@ -19,7 +19,7 @@
(/ spellpower 10))
1200
3
- 33)
+ (script_int caster "@WandID"))
(CALL gain_xp 1 3)
(ATTRIGGER
(CALL attack_check target)
diff --git a/world/map/conf/magic-procedures.sex b/world/map/conf/magic-procedures.sex
index 2a8258cb..6f9c3246 100644
--- a/world/map/conf/magic-procedures.sex
+++ b/world/map/conf/magic-procedures.sex
@@ -335,3 +335,24 @@
(BLOCK "1 is Tulimshar, 9 is Hurnscald and 20 is Nivalis"
(message caster "A powerful magic drains your spell just as it is beginning to take shape!")
(ABORT))))
+
+(PROCEDURE script_split_str (d str v m)
+ (FOR a 0 m
+ (BLOCK
+ (IF (< (strlen str) 1) (BREAK))
+ (SET arglen (strlen str))
+ (SET argoffset
+ (if_then_else
+ (contains_string str d)
+ (strstr str d)
+ arglen))
+ (SET arg
+ (if_then_else (== arglen argoffset)
+ str
+ (substr str 0 argoffset)))
+ (set_script_str caster (+ (+ "@" v) (+ a "$")) arg)
+ (SET str
+ (if_then_else
+ (> arglen (- argoffset 1))
+ (substr str (+ argoffset 1) arglen)
+ "")))))
diff --git a/world/map/data/009-2.wlk b/world/map/data/009-2.wlk
index c6cd8d70..13657806 100644
--- a/world/map/data/009-2.wlk
+++ b/world/map/data/009-2.wlk
Binary files differ
diff --git a/world/map/data/022-1.wlk b/world/map/data/022-1.wlk
index 0ad7c21c..f84df1d7 100644
--- a/world/map/data/022-1.wlk
+++ b/world/map/data/022-1.wlk
Binary files differ
diff --git a/world/map/data/023-1.wlk b/world/map/data/023-1.wlk
index ba88328c..e6e8cc22 100644
--- a/world/map/data/023-1.wlk
+++ b/world/map/data/023-1.wlk
Binary files differ
diff --git a/world/map/data/023-3.wlk b/world/map/data/023-3.wlk
index 805a8bfc..b18db04b 100644
--- a/world/map/data/023-3.wlk
+++ b/world/map/data/023-3.wlk
Binary files differ
diff --git a/world/map/db/chest_item_db.txt b/world/map/db/chest_item_db.txt
index fc403a84..06d25276 100644
--- a/world/map/db/chest_item_db.txt
+++ b/world/map/db/chest_item_db.txt
@@ -3,7 +3,6 @@
523, LeatherShirt, Leather Shirt, 5, 2000, 1000, 20, 0, 4, 0, -12, 0, 2, 512, 0, 0, 0, {}, {}
546, DesertShirt, Desert Shirt, 5, 2000, 1000, 20, 0, 6, 0, -18, 0, 2, 512, 0, 0, 0, {}, {}
564, TurtleneckSweater, Turtleneck Sweater, 5, 2000, 1000, 30, 0, 6, 0, -18, 0, 2, 512, 0, 0, 0, {}, {}
-622, Bandana, Bandana, 5, 1000, 500, 20, 0, 3, 0, 0, 0, 2, 256, 0, 0, 0, {}, {}
624, VNeckSweater, V-Neck Sweater, 5, 6000, 3000, 35, 0, 8, 0, -24, 0, 2, 512, 0, 0, 0, {}, {}
625, ChainmailShirt, Chainmail Shirt, 5, 15000, 1500, 800, 0, 20, 0, -120, 0, 2, 512, 0, 0, 0, {}, {}
626, LightPlatemail, Light Platemail, 5, 50000, 2500, 1200, 0, 25, 0, -150, 0, 2, 512, 0, 0, 0, {}, {}
@@ -95,8 +94,6 @@
2097, OrangeTankTop, Orange Tank Top, 5, 800, 400, 12, 0, 2, 0, -4, 0, 2, 512, 0, 0, 0, {}, {}
2098, PurpleTankTop, Purple Tank Top, 5, 800, 400, 12, 0, 2, 0, -4, 0, 2, 512, 0, 0, 0, {}, {}
2099, DarkGreenTankTop, Dark Green Tank Top, 5, 800, 400, 12, 0, 2, 0, -4, 0, 2, 512, 0, 0, 0, {}, {}
-2100, RedCottonSkirt, Red Cotton Skirt, 5, 1000, 500, 20, 0, 4, 0, -8, 0, 2, 1, 0, 1, 0, {}, {}
-2101, GreenCottonSkirt, Green Cotton Skirt, 5, 1000, 500, 20, 0, 4, 0, -8, 0, 2, 1, 0, 1, 0, {}, {}
//ID, Name___________________, Label__________________, Type, Price, Sell, Weight, ATK, DEF, Range, Mbonus, Slot, Gender, Loc, wLV, eLV, View, {UseScript}, {EquipScript}
2120, RedShortTankTop, Red Short Tank Top, 5, 600, 300, 8, 0, 2, 0, -4, 0, 2, 512, 0, 0, 0, {}, {}
2121, GreenShortTankTop, Green Short Tank Top, 5, 600, 300, 8, 0, 2, 0, -4, 0, 2, 512, 0, 0, 0, {}, {}
diff --git a/world/map/db/generic_item_db.txt b/world/map/db/generic_item_db.txt
index 74650721..5b17fa3e 100644
--- a/world/map/db/generic_item_db.txt
+++ b/world/map/db/generic_item_db.txt
@@ -25,6 +25,7 @@
//ID, Name___________________, Label__________________, Type, Price, Sell, Weight, ATK, DEF, Range, Mbonus, Slot, Gender, Loc, wLV, eLV, View, {UseScript}, {EquipScript}
560, GrayHint, Gray Hint, 3, 20, 0, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, {}, {}
569, RawLog, Raw Log, 3, 20, 10, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, {}, {}
+589, Toothbrush, Toothbrush, 3, 20, 10, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, {}, {}
611, WhiteFur, White Fur, 3, 8, 4, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, {}, {}
612, CaveSnakeLamp, Cave Snake Lamp, 3, 80, 40, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, {}, {}
613, HardSpike, Hard Spike, 3, 40, 10, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, {}, {}
diff --git a/world/map/db/head_item_db.txt b/world/map/db/head_item_db.txt
index d7fc43f7..922ea4b3 100644
--- a/world/map/db/head_item_db.txt
+++ b/world/map/db/head_item_db.txt
@@ -38,7 +38,6 @@
723, DesertHat, Desert Hat, 5, 2400, 600, 20, 0, 3, 0, -1, 0, 2, 256, 0, 0, 0, {}, {}
724, CottonHeadband, Cotton Headband, 5, 3000, 500, 5, 0, 2, 0, 0, 0, 2, 256, 0, 0, 0, {}, {}
725, GMCap, GM Cap, 5, 2000, 500, 20, 0, 5, 0, 5, 0, 2, 256, 0, 0, 0, {}, {callfunc "RestrictedItem";}
-726, GMRobe, GM Robe, 5, 8000, 4000, 40, 0, 5, 0, 0, 0, 2, 512, 0, 0, 0, {}, {callfunc "RestrictedItem";}
751, PinkieHat, Pinkie Hat, 5, 5000, 1000, 5, 0, 1, 0, 1, 0, 2, 256, 0, 0, 0, {}, {}
752, FluffyHat, Fluffy Hat, 5, 7000, 2000, 10, 0, 2, 0, -5, 0, 2, 256, 0, 0, 0, {}, {}
759, PaladinsHelmet, Paladin's Helmet, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, {}, {}
diff --git a/world/map/db/leg_item_db.txt b/world/map/db/leg_item_db.txt
index 85fb929d..caa37385 100644
--- a/world/map/db/leg_item_db.txt
+++ b/world/map/db/leg_item_db.txt
@@ -12,8 +12,6 @@
857, LeatherTrousers, Leather Trousers, 5, 1000, 500, 25, 0, 5, 0, -4, 0, 2, 1, 0, 0, 0, {}, {bonus bHit, 2;}
881, RaggedShorts, Ragged Shorts, 5, 60, 1, 7, 0, 0, 0, -2, 0, 2, 1, 0, 1, 0, {}, {}
1172, SilkPants, Silk Pants, 5, 1500, 750, 10, 0, 2, 0, 0, 0, 2, 1, 0, 1, 0, {}, {}
-1188, RedStockings, Red Stockings, 5, 7000, 2000, 10, 0, 1, 0, 2, 0, 2, 64, 0, 0, 0, {}, {}
-1207, RedChristmasStocking, Red Christmas Stocking, 3, 80, 40, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, {}, {}
//ID, Name___________________, Label__________________, Type, Price, Sell, Weight, ATK, DEF, Range, Mbonus, Slot, Gender, Loc, wLV, eLV, View, {UseScript}, {EquipScript}
2100, RedCottonSkirt, Red Cotton Skirt, 5, 1000, 500, 20, 0, 4, 0, -8, 0, 2, 1, 0, 1, 0, {}, {}
2101, GreenCottonSkirt, Green Cotton Skirt, 5, 1000, 500, 20, 0, 4, 0, -8, 0, 2, 1, 0, 1, 0, {}, {}
diff --git a/world/map/db/trinket_item_db.txt b/world/map/db/trinket_item_db.txt
index 7eff3dcd..81c2863d 100644
--- a/world/map/db/trinket_item_db.txt
+++ b/world/map/db/trinket_item_db.txt
@@ -11,8 +11,7 @@
865, Grimoire, Grimoire, 5, 5000, 2500, 100, 0, 0, 0, 5, 0, 2, 8, 0, 0, 0, {}, {bonus bMaxSP, 30;}
879, HeartOfIsis, Heart of Isis, 5, 70000, 35000, 40, 0, 0, 0, 0, 0, 2, 8, 0, 85, 0, {}, {bonus bMaxHPrate, 15; bonus bHPrecovRate, 65;}
1197, SkeletonCharm, Skeleton Charm, 5, 0, 0, 10, 0, 0, 0, 0, 0, 2, 8, 0, 0, 0, {}, { callfunc "CheckMunro"; }
-1221, SkullMask, Skull Mask, 5, 10000, 5000, 150, 0, 3, 0, 5, 0, 2, 256, 0, 0, 0, {}, {}
-1244, DarkTalisman, Dark Talisman, 5, 0, 0, 0, 0, 30, 0, 100, 0, 2, 512, 0, 0, 0, {}, {set@minLvl, 1;callfunc "RestrictedItem"; set @val, getopt2; if(!(@val&1024))setopt2 getopt2 | 1024; bonus bMaxHp, 30000; bonus bFlee, -150;}
+1244, DarkTalisman, Dark Talisman, 5, 0, 0, 0, 0, 30, 0, 100, 0, 2, 8, 0, 0, 0, {}, {set@minLvl, 1;callfunc "RestrictedItem"; set @val, getopt2; if(!(@val&1024))setopt2 getopt2 | 1024; bonus bMaxHp, 30000; bonus bFlee, -150;}
4008, DiamondRing, Diamond Ring, 5, 5000, 2500, 1, 0, 0, 0, 0, 0, 2, 128, 0, 0, 0, {}, {bonus bVit, 1;}
4009, RubyRing, Ruby Ring, 5, 5000, 2500, 1, 0, 0, 0, 0, 0, 2, 128, 0, 0, 0, {}, {bonus bStr, 1;}
4010, EmeraldRing, Emerald Ring, 5, 5000, 2500, 1, 0, 0, 0, 0, 0, 2, 128, 0, 0, 0, {}, {bonus bLuk, 1;}
diff --git a/world/map/db/use_item_db.txt b/world/map/db/use_item_db.txt
index 072b3428..fa8283d9 100644
--- a/world/map/db/use_item_db.txt
+++ b/world/map/db/use_item_db.txt
@@ -54,17 +54,17 @@
788, BeetleJuice, Beetle Juice, 0, 80, 30, 5, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, {itemheal 50, 0;}, {}
789, GutBuster, Gut Buster Ale, 0, 100, 30, 5, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, {itemheal 60, 0;}, {}
790, BloodWine, Blood Wine, 0, 150, 50, 5, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, {itemheal 100, 0;}, {}
-808, HitchhikersTowel, Hitchhiker's Towel, 0, 10, 1, 30, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, {set @warpTowelName$, "HitchhikersTowel"; callfunc "WarpTowel";}, {}
-809, WhiteHitchhikersTowel, White Hitchhiker's Towe, 0, 10, 1, 30, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, {set @warpTowelName$, "WhiteHitchhikersTowel"; callfunc "WarpTowel";}, {}
-810, RedHitchhikersTowel, Red Hitchhiker's Towel, 0, 10, 1, 30, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, {set @warpTowelName$, "RedHitchhikersTowel"; callfunc "WarpTowel";}, {}
-811, GreenHitchhikersTowel, Green Hitchhiker's Towe, 0, 10, 1, 30, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, {set @warpTowelName$, "GreenHitchhikersTowel"; callfunc "WarpTowel";}, {}
-812, BlueHitchhikersTowel, Blue Hitchhiker's Towel, 0, 10, 1, 30, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, {set @warpTowelName$, "BlueHitchhikersTowel"; callfunc "WarpTowel";}, {}
-813, YellowHitchhikersTowel, Yellow Hitchhiker's Tow, 0, 10, 1, 30, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, {set @warpTowelName$, "YellowHitchhikersTowel"; callfunc "WarpTowel";}, {}
-814, PurpleHitchhikersTowel, Purple Hitchhiker's Tow, 0, 10, 1, 30, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, {set @warpTowelName$, "PurpleHitchhikersTowel"; callfunc "WarpTowel";}, {}
-815, OrangeHitchhikersTowel, Orange Hitchhiker's Tow, 0, 10, 1, 30, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, {set @warpTowelName$, "OrangeHitchhikersTowel"; callfunc "WarpTowel";}, {}
-816, PinkHitchhikersTowel, Pink Hitchhiker's Towel, 0, 10, 1, 30, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, {set @warpTowelName$, "PinkHitchhikersTowel"; callfunc "WarpTowel";}, {}
-817, TealHitchhikersTowel, Teal Hitchhiker's Towel, 0, 10, 1, 30, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, {set @warpTowelName$, "TealHitchhikersTowel"; callfunc "WarpTowel";}, {}
-818, LimeHitchhikersTowel, Lime Hitchhiker's Towel, 0, 10, 1, 30, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, {set @warpTowelName$, "LimeHitchhikersTowel"; callfunc "WarpTowel";}, {}
+808, HitchhikersTowel, Hitchhiker's Towel, 0, 0, 0, 30, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, {set @warpTowelName$, "HitchhikersTowel"; callfunc "WarpTowel";}, {}
+809, WhiteHitchhikersTowel, White Hitchhiker's Towe, 0, 0, 0, 30, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, {set @warpTowelName$, "WhiteHitchhikersTowel"; callfunc "WarpTowel";}, {}
+810, RedHitchhikersTowel, Red Hitchhiker's Towel, 0, 0, 0, 30, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, {set @warpTowelName$, "RedHitchhikersTowel"; callfunc "WarpTowel";}, {}
+811, GreenHitchhikersTowel, Green Hitchhiker's Towe, 0, 0, 0, 30, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, {set @warpTowelName$, "GreenHitchhikersTowel"; callfunc "WarpTowel";}, {}
+812, BlueHitchhikersTowel, Blue Hitchhiker's Towel, 0, 0, 0, 30, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, {set @warpTowelName$, "BlueHitchhikersTowel"; callfunc "WarpTowel";}, {}
+813, YellowHitchhikersTowel, Yellow Hitchhiker's Tow, 0, 0, 0, 30, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, {set @warpTowelName$, "YellowHitchhikersTowel"; callfunc "WarpTowel";}, {}
+814, PurpleHitchhikersTowel, Purple Hitchhiker's Tow, 0, 0, 0, 30, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, {set @warpTowelName$, "PurpleHitchhikersTowel"; callfunc "WarpTowel";}, {}
+815, OrangeHitchhikersTowel, Orange Hitchhiker's Tow, 0, 0, 0, 30, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, {set @warpTowelName$, "OrangeHitchhikersTowel"; callfunc "WarpTowel";}, {}
+816, PinkHitchhikersTowel, Pink Hitchhiker's Towel, 0, 0, 0, 30, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, {set @warpTowelName$, "PinkHitchhikersTowel"; callfunc "WarpTowel";}, {}
+817, TealHitchhikersTowel, Teal Hitchhiker's Towel, 0, 0, 0, 30, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, {set @warpTowelName$, "TealHitchhikersTowel"; callfunc "WarpTowel";}, {}
+818, LimeHitchhikersTowel, Lime Hitchhiker's Towel, 0, 0, 0, 30, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, {set @warpTowelName$, "LimeHitchhikersTowel"; callfunc "WarpTowel";}, {}
825, TinyManaElixir, Tiny Mana Elixir, 0, 100, 10, 5, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, {itemheal 0, 25;}, {}
826, SmallManaElixir, Small Mana Elixir, 0, 200, 20, 10, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, {itemheal 0, 50;}, {}
827, MediumManaElixir, Medium Mana Elixir, 0, 400, 40, 15, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, {itemheal 0, 100;}, {}
diff --git a/world/map/news.d/37-v2014.7.29.txt b/world/map/news.d/37-v2014.7.29.txt
new file mode 100644
index 00000000..2061d89f
--- /dev/null
+++ b/world/map/news.d/37-v2014.7.29.txt
@@ -0,0 +1,19 @@
+{title:Sanity Check}
+{date:2014-07-29}
+
+Sanity checks added to client data to
+reflect what manaplus really sees.
+
+make checks in client-data now looks
+through all the xmls to check for
+proper format.
+
+{ul}
+{li}Fixed Sunglasses{/li}
+{li}Tonori Terranites respawn increased{/li}
+{li}Added "toothbrush" for GM events{/li}
+{li}General Code Clean up{/li}
+{li}Fixed item duplication in database{/li}
+{/ul}
+
+{author:The Mana World Dev Team}
diff --git a/world/map/news.d/38-v2014.9.1.txt b/world/map/news.d/38-v2014.9.1.txt
new file mode 100644
index 00000000..fa63e6ae
--- /dev/null
+++ b/world/map/news.d/38-v2014.9.1.txt
@@ -0,0 +1,22 @@
+{title:Now with less spam}
+{date:2014-09-01}
+
+Heya Manakins. Valia should be back in action
+and ready for you to save the day again.
+Be warned she has less patience for fools now.
+
+The Ferry now uses a set of emblems to denote
+where it current is docked along with an audio
+cue.
+
+{ul}
+{li}Valia camper "fixed" & Illia quest
+works again.{/li}
+{li}Ferry uses a Visual and Audio Cue
+instead of annoucements.{/li}
+{li}More beds were made "sleepable"{/li}
+{li}Travelers refer to proper continenets{/li}
+{li}Towels are Worthless{/li}
+{/ul}
+
+{author:The Mana World Dev Team}
diff --git a/world/map/npc/007-1/witch.txt b/world/map/npc/007-1/witch.txt
index cc009018..7e8cb8ab 100644
--- a/world/map/npc/007-1/witch.txt
+++ b/world/map/npc/007-1/witch.txt
@@ -26,7 +26,7 @@
if (getgmlevel() >= 40 && getequipid(equip_head) == 647)
goto L_DeveloperBoard;
- if (BaseLevel < @illia_min_level) goto L_Unexperienced;
+ if (BaseLevel < $@illia_min_level) goto L_Unexperienced;
if ($@ILLIA_STATUS == 0) goto L_Introduce;
if ($@ILLIA_STATUS == 1) goto L_PreparingSpell;
if ($@ILLIA_STATUS == 2) goto L_ReadyToTeleport;
@@ -193,11 +193,6 @@ L_CheckTeleportSpellItems:
set $@ILLIA_STATUS, 1;
initnpctimer;
set @illia_go_find_items, 0;
- delitem "SapphirePowder", @illia_sapphire_powder;
- delitem "AmethystPowder", @illia_amethyst_powder;
- delitem "IronPowder", @illia_iron_powder;
- delitem "FrozenYetiTear", @illia_yeti_tear;
- delitem "IcedWater", @illia_iced_water;
mes "[Valia]";
mes "\"Very well! I can prepare the spell now!\"";
@@ -248,29 +243,30 @@ L_ChooseHelper1:
goto L_WrongHelper1;
if (isloggedin(getcharid(3, $@ILLIA_HELPER1$)) == 0)
goto L_HelperDoesNotExist1;
- attachrid(getcharid(3, $@ILLIA_HELPER1$));
+ if (!(attachrid(getcharid(3, $@ILLIA_HELPER1$))))
+ goto L_Exit;
if (BaseLevel < $@illia_min_level)
goto L_HelperTooWeak1;
set $@ILLIA_HELPER1$, strcharinfo(0);
detachrid;
- if (isloggedin($@ILLIA_HERO_ID) == 0)
- goto L_Exit;
- attachrid($@ILLIA_HERO_ID);
- goto L_ChooseHelper2;
+ if (attachrid($@ILLIA_HERO_ID))
+ goto L_ChooseHelper2;
+ goto L_Exit;
L_HelperTooWeak1:
detachrid;
- if (isloggedin($@ILLIA_HERO_ID) == 0)
+ if (!(attachrid($@ILLIA_HERO_ID)))
goto L_Exit;
- attachrid($@ILLIA_HERO_ID);
mes "[Team Selector]";
mes "The player " + $@ILLIA_HELPER1$ + " is too weak to help you.";
+ set $@ILLIA_HELPER1$, "";
next;
goto L_ChooseHelperConfirm1;
L_HelperDoesNotExist1:
mes "[Team Selector]";
mes "This player " + $@ILLIA_HELPER1$ + " seems offline or does not exist.";
+ set $@ILLIA_HELPER1$, "";
next;
goto L_ChooseHelperConfirm1;
@@ -298,29 +294,30 @@ L_ChooseHelper2:
goto L_WrongHelper2;
if (isloggedin(getcharid(3, $@ILLIA_HELPER2$)) == 0)
goto L_HelperDoesNotExist2;
- attachrid(getcharid(3, $@ILLIA_HELPER2$));
+ if (!(attachrid(getcharid(3, $@ILLIA_HELPER2$))))
+ goto L_Exit;
if (BaseLevel < $@illia_min_level)
goto L_HelperTooWeak2;
set $@ILLIA_HELPER2$, strcharinfo(0);
detachrid;
- if (isloggedin($@ILLIA_HERO_ID) == 0)
- goto L_Exit;
- attachrid($@ILLIA_HERO_ID);
- goto L_ChooseHelper3;
+ if (attachrid($@ILLIA_HERO_ID))
+ goto L_ChooseHelper3;
+ goto L_Exit;
L_HelperTooWeak2:
detachrid;
- if (isloggedin($@ILLIA_HERO_ID) == 0)
- goto L_Exit;
- attachrid($@ILLIA_HERO_ID);
+ if (!(attachrid($@ILLIA_HERO_ID)))
+ goto_Exit;
mes "[Team Selector]";
mes "The player " + $@ILLIA_HELPER2$ + " is too weak to help you.";
+ set $@ILLIA_HELPER2$, "";
next;
goto L_ChooseHelperConfirm2;
L_HelperDoesNotExist2:
mes "[Team Selector]";
mes "This player " + $@ILLIA_HELPER2$ + " seems offline or does not exist.";
+ set $@ILLIA_HELPER2$, "";
next;
goto L_ChooseHelperConfirm2;
@@ -349,24 +346,24 @@ L_ChooseHelper3:
goto L_WrongHelper3;
if (isloggedin(getcharid(3, $@ILLIA_HELPER3$)) == 0)
goto L_HelperDoesNotExist3;
- attachrid(getcharid(3, $@ILLIA_HELPER3$));
+ if (!(attachrid(getcharid(3, $@ILLIA_HELPER3$))))
+ goto L_Exit;
if (BaseLevel < $@illia_min_level)
goto L_HelperTooWeak3;
set $@ILLIA_HELPER3$, strcharinfo(0);
detachrid;
- if (isloggedin($@ILLIA_HERO_ID) == 0)
- goto L_Exit;
- attachrid($@ILLIA_HERO_ID);
+ if (!(attachrid($@ILLIA_HERO_ID)))
+ goto_Exit;
mes $@ILLIA_HELPER1$ + ", " + $@ILLIA_HELPER2$ + " and " + $@ILLIA_HELPER3$ + " will be your three comrades.";
close;
L_HelperTooWeak3:
detachrid;
- if (isloggedin($@ILLIA_HERO_ID) == 0)
- goto L_Exit;
- attachrid($@ILLIA_HERO_ID);
+ if (!(attachrid($@ILLIA_HERO_ID)))
+ goto_Exit;
mes "[Team Selector]";
mes "The player " + $@ILLIA_HELPER3$ + " is too weak to help you.";
+ set $@ILLIA_HELPER3$, "";
next;
goto L_ChooseHelperConfirm3;
@@ -374,6 +371,7 @@ L_HelperTooWeak3:
L_HelperDoesNotExist3:
mes "[Team Selector]";
mes "This player " + $@ILLIA_HELPER3$ + " seems offline or does not exist.";
+ set $@ILLIA_HELPER3$, "";
next;
goto L_ChooseHelperConfirm3;
@@ -389,6 +387,8 @@ L_PreparingSpell:
close;
L_ReadyToTeleport:
+ if ($@ILLIA_HELPER1$ == "" || $@ILLIA_HELPER2$ == "" || $@ILLIA_HELPER3$ == "")
+ goto L_PlayerGaveUp;
if (strcharinfo(0) == $@ILLIA_HERO$)
goto L_AskToTeleport;
if (strcharinfo(0) == $@ILLIA_HELPER1$ || strcharinfo(0) == $@ILLIA_HELPER2$ || strcharinfo(0) == $@ILLIA_HELPER3$)
@@ -398,9 +398,26 @@ L_ReadyToTeleport:
close;
L_AskToTeleport:
- // Check area users just to give a hint if there are players around,
- // but do not actually check if the real helpers are here
- if (getareausers("007-1.gat", 66, 73, 92, 88) < 4)
+ // Check area users just to give a hint if there are players around
+ // $@ILLIA_HERO$ $@ILLIA_HELPER1$ $@ILLIA_HELPER2$ $@ILLIA_HELPER3$
+ if (!(attachrid(getcharid(3,$@ILLIA_HELPER1$))))
+ goto L_NotEveryoneHere;
+ if (!(isin("007-1.gat", 66, 73, 92, 88)))
+ goto L_NotEveryoneHere;
+ detachrid;
+ if (!(attachrid(getcharid(3,$@ILLIA_HELPER2$))))
+ goto L_NotEveryoneHere;
+ if (!(isin("007-1.gat", 66, 73, 92, 88)))
+ goto L_NotEveryoneHere;
+ detachrid;
+ if (!(attachrid(getcharid(3,$@ILLIA_HELPER3$))))
+ goto L_NotEveryoneHere;
+ if (!(isin("007-1.gat", 66, 73, 92, 88)))
+ goto L_NotEveryoneHere;
+ detachrid;
+ if (!(attachrid(getcharid(3,$@ILLIA_HERO$))))
+ goto L_NotEveryoneHere;
+ if (!(isin("007-1.gat", 66, 73, 92, 88)))
goto L_NotEveryoneHere;
mes "[Valia]";
mes "\"Everyone seems to be here. Make sure to stay close to me.\"";
@@ -409,6 +426,19 @@ L_AskToTeleport:
"Wait a minute.", L_Exit;
L_Next5:
+ if (
+ (countitem ("SapphirePowder") < @illia_sapphire_powder) ||
+ (countitem ("AmethystPowder") < @illia_amethyst_powder) ||
+ (countitem ("IronPowder") < @illia_iron_powder) ||
+ (countitem ("FrozenYetiTear") < @illia_yeti_tear) ||
+ (countitem ("IcedWater") < @illia_iced_water)
+ ) goto L_MissingTeleportSpellItems;
+ delitem "SapphirePowder", @illia_sapphire_powder;
+ delitem "AmethystPowder", @illia_amethyst_powder;
+ delitem "IronPowder", @illia_iron_powder;
+ delitem "FrozenYetiTear", @illia_yeti_tear;
+ delitem "IcedWater", @illia_iced_water;
+
// Stop the 5mins timer and start it again.
set $@ILLIA_STATUS, 3;
initnpctimer;
@@ -646,6 +676,12 @@ OnTimer300000:
end;
npctalk $@ILLIA_HERO$ + ", you and your missing comrades made me lose a precious time! Out of my sight!";
emotion EMOTE_UPSET;
+ if (attachrid($@ILLIA_HERO_ID))
+ goto L_KillHero;
+ goto L_EndQuest;
+
+L_KillHero:
+ percentheal -100, 0;
goto L_EndQuest;
}
diff --git a/world/map/npc/009-1/jack.txt b/world/map/npc/009-1/jack.txt
index b5244244..c25624cc 100644
--- a/world/map/npc/009-1/jack.txt
+++ b/world/map/npc/009-1/jack.txt
@@ -48,8 +48,9 @@ L_NotInspector:
next;
if (@Q_Forestbow < 1)
goto L_Close;
- menu
- "I heard you aren't delivering any more living wood. Why not?", L_Next;
+ mes "I heard you aren't delivering any more living wood. Why not?";
+ next;
+ goto L_Next;
L_Next:
mes "[Jack Lumber]";
@@ -249,6 +250,7 @@ L_Shield_state_3:
L_NohMask_Ask:
menu
"I'll keep that in mind.", L_Close,
+ "I heard you aren't delivering any more living wood. Why not?", L_Next,
"Have you seen anything that might be connected to the recent robberies in town?", L_NohMask_Answer;
L_NohMask_Answer:
diff --git a/world/map/npc/009-2/_warps.txt b/world/map/npc/009-2/_warps.txt
index 0b8abbf3..4d2024f6 100644
--- a/world/map/npc/009-2/_warps.txt
+++ b/world/map/npc/009-2/_warps.txt
@@ -6,7 +6,7 @@
009-2.gat,130,26|warp|To Outside|-1,-1,009-1.gat,71,31
009-2.gat,144,26|warp|To Second Floor|0,-1,009-2.gat,144,43
009-2.gat,144,42|warp|To Third Floor|0,-1,009-2.gat,144,25
-009-2.gat,155,47|warp|To First Floor|0,-1,009-2.gat,155,63
+009-2.gat,155,48|warp|To First Floor|0,-1,009-2.gat,155,63
009-2.gat,114,46|warp|To First Floor|0,-1,009-2.gat,114,70
009-2.gat,50,55|warp|To Outside|-1,-1,009-1.gat,35,31
009-2.gat,74,53|warp|To Cellar|-1,-1,009-2.gat,143,78
diff --git a/world/map/npc/009-4/barriers.txt b/world/map/npc/009-4/barriers.txt
index 939f4ae2..f3f2e085 100644
--- a/world/map/npc/009-4/barriers.txt
+++ b/world/map/npc/009-4/barriers.txt
@@ -35,7 +35,7 @@ L_Error2:
// Starting Barrier / Quest Entrance
-009-4.gat,37,120,0|script|#OrumCaveStartBarrier|0,1,0,
+009-4.gat,37,120,0|script|#OrumCaveStartBarrier|127,1,0,
{
if (OrumQuest >= 3) close;
if (OrumQuest == 2) goto L_Started;
@@ -51,7 +51,7 @@ L_Started:
}
// First Barrier
-009-4.gat,57,29,0|script|#OrumCaveFirstBarrier|0,1,0,
+009-4.gat,57,29,0|script|#OrumCaveFirstBarrier|127,1,0,
{
if (OrumQuest >= 5) close;
@@ -61,7 +61,7 @@ L_Started:
}
// Second Barrier
-009-4.gat,61,54,0|script|#OrumCaveSecondBarrier|0,1,0,
+009-4.gat,61,54,0|script|#OrumCaveSecondBarrier|127,1,0,
{
if (OrumQuest == 3) set OrumQuest, 4;
@@ -90,7 +90,7 @@ L_Advance_Quest:
}
// Third Barrier
-009-4.gat,24,66,0|script|#OrumCaveThirdBarrier|0,1,0,
+009-4.gat,24,66,0|script|#OrumCaveThirdBarrier|127,1,0,
{
if (OrumQuest == 3) set OrumQuest, 4;
@@ -134,7 +134,7 @@ L_Advance_Quest:
}
// Ending Barrier
-009-4.gat,48,38,0|script|#OrumCaveEndBarrier|0,1,0,
+009-4.gat,48,38,0|script|#OrumCaveEndBarrier|127,1,0,
{
if (OrumQuest >= 11) close;
if (OrumQuest == 3) set OrumQuest, 4;
diff --git a/world/map/npc/009-4/waric.txt b/world/map/npc/009-4/waric.txt
index 778c5111..ca28d2f7 100644
--- a/world/map/npc/009-4/waric.txt
+++ b/world/map/npc/009-4/waric.txt
@@ -1,6 +1,6 @@
//# see detailed description at orum.txt
-009-4.gat,99,33,0|script|#WizardTrap|0,2,1,
+009-4.gat,99,33,0|script|#WizardTrap|127,2,1,
{
set @gender$, "They're";
if (Sex == 0)
diff --git a/world/map/npc/015-1/barrier.txt b/world/map/npc/015-1/barrier.txt
index 0bf5d7e1..6b451f42 100644
--- a/world/map/npc/015-1/barrier.txt
+++ b/world/map/npc/015-1/barrier.txt
@@ -1,7 +1,7 @@
// This barrier is for checking whether the player went outside after
// progressing with the cat quest.
-015-1.gat,59,32,0|script|#CatOutsideBarrier|0,1,1,
+015-1.gat,59,32,0|script|#CatOutsideBarrier|127,1,1,
{
set @catNeedsAlone, 0;
end;
diff --git a/world/map/npc/024-2/barrier.txt b/world/map/npc/024-2/barrier.txt
index 4894dad8..aef0b938 100644
--- a/world/map/npc/024-2/barrier.txt
+++ b/world/map/npc/024-2/barrier.txt
@@ -1,6 +1,6 @@
// A barrier in the magic school to keep less experienced players out of the canyon
-024-2.gat,31,24,0|script|#MagicSchoolBarrier1#M|0,1,1,
+024-2.gat,31,24,0|script|#MagicSchoolBarrier1#M|127,1,1,
{
callfunc "MorganState";
if (@morgan >= 4)
diff --git a/world/map/npc/024-2/tyer_trigger.txt b/world/map/npc/024-2/tyer_trigger.txt
index 45218430..0feafd99 100644
--- a/world/map/npc/024-2/tyer_trigger.txt
+++ b/world/map/npc/024-2/tyer_trigger.txt
@@ -1,6 +1,6 @@
// A man in the magic school
-024-2.gat,33,24,0|script|#Tyer_Trigger|0,0,1,
+024-2.gat,33,24,0|script|#Tyer_Trigger|127,0,1,
{
callfunc "MorganState";
if (@morgan >= 4)
diff --git a/world/map/npc/035-2/_import.txt b/world/map/npc/035-2/_import.txt
index 5e207a35..2fff6976 100644
--- a/world/map/npc/035-2/_import.txt
+++ b/world/map/npc/035-2/_import.txt
@@ -4,6 +4,7 @@ map: 035-2.gat
npc: npc/035-2/_mobs.txt
npc: npc/035-2/_warps.txt
npc: npc/035-2/casino.txt
+npc: npc/035-2/emblems.txt
npc: npc/035-2/koga.txt
npc: npc/035-2/mapflags.txt
npc: npc/035-2/shops.txt
diff --git a/world/map/npc/035-2/emblems.txt b/world/map/npc/035-2/emblems.txt
new file mode 100644
index 00000000..895909a3
--- /dev/null
+++ b/world/map/npc/035-2/emblems.txt
@@ -0,0 +1,43 @@
+035-2.gat,28,27,0|script|#k1city1e|410,
+{
+ end;
+ OnInit:
+ disablenpc "#k1city1e";
+ end;
+}
+035-2.gat,28,27,0|script|#k1city1d|411,
+{
+ end;
+}
+
+035-2.gat,30,27,0|script|#k1city2e|412,
+{
+ end;
+ OnInit:
+ disablenpc "#k1city2e";
+ end;
+}
+035-2.gat,30,27,0|script|#k1city2d|413,
+{
+ end;
+}
+
+035-2.gat,32,27,0|script|#k1city3e|414,
+{
+ end;
+ OnInit:
+ disablenpc "#k1city3e";
+ end;
+}
+035-2.gat,32,27,0|script|#k1city3d|415,
+{
+ end;
+}
+
+035-2.gat,32,27,0|script|#k1sound|127,
+{
+ end;
+ OnCommandDing:
+ misceffect 402;
+ end;
+}
diff --git a/world/map/npc/036-2/_import.txt b/world/map/npc/036-2/_import.txt
index b151f381..e7e92a0e 100644
--- a/world/map/npc/036-2/_import.txt
+++ b/world/map/npc/036-2/_import.txt
@@ -4,6 +4,7 @@ map: 036-2.gat
npc: npc/036-2/_mobs.txt
npc: npc/036-2/_warps.txt
npc: npc/036-2/casino.txt
+npc: npc/036-2/emblems.txt
npc: npc/036-2/koga-candor.txt
npc: npc/036-2/mapflags.txt
npc: npc/036-2/shops.txt
diff --git a/world/map/npc/036-2/emblems.txt b/world/map/npc/036-2/emblems.txt
new file mode 100644
index 00000000..c3fbc18a
--- /dev/null
+++ b/world/map/npc/036-2/emblems.txt
@@ -0,0 +1,31 @@
+036-2.gat,29,27,0|script|#k2city1e|410,
+{
+ end;
+ OnInit:
+ disablenpc "#k2city1e";
+ end;
+}
+036-2.gat,29,27,0|script|#k2city1d|411,
+{
+ end;
+}
+
+036-2.gat,31,27,0|script|#k2city2e|416,
+{
+ end;
+ OnInit:
+ disablenpc "#k2city2e";
+ end;
+}
+036-2.gat,31,27,0|script|#k2city2d|417,
+{
+ end;
+}
+
+036-2.gat,32,27,0|script|#k2sound|127,
+{
+ end;
+ OnCommandDing:
+ misceffect 402;
+ end;
+}
diff --git a/world/map/npc/043-4/_mobs.txt b/world/map/npc/043-4/_mobs.txt
index c41ee0bd..97a3ea63 100644
--- a/world/map/npc/043-4/_mobs.txt
+++ b/world/map/npc/043-4/_mobs.txt
@@ -1,7 +1,7 @@
// This file is generated automatically. All manually changes will be removed when running the Converter.
// Sandy Dungeon Level 2 mobs
-043-4.gat,139,163,7,6|monster|Terranite|1062,2,200000,100000,Mob043-4::On1062
+043-4.gat,139,163,7,6|monster|Terranite|1062,2,240000,120000,Mob043-4::On1062
043-4.gat,133,45,14,16|monster|UndeadTroll|1117,4,100000,50000,Mob043-4::On1117
043-4.gat,91,139,11,10|monster|UndeadTroll|1117,2,100000,50000,Mob043-4::On1117
043-4.gat,35,120,10,11|monster|UndeadTroll|1117,2,100000,50000,Mob043-4::On1117
diff --git a/world/map/npc/052-1/channelling.txt b/world/map/npc/052-1/channelling.txt
index 6348840a..34633ac5 100644
--- a/world/map/npc/052-1/channelling.txt
+++ b/world/map/npc/052-1/channelling.txt
@@ -178,9 +178,8 @@ OnTimer11000:
end;
S_ItemSpawn:
- if (isloggedin(getcharid(3, $@illia_char_channelling$)) == 0)
+ if (!(attachrid(getcharid(3, $@illia_char_channelling$))))
goto L_Return;
- attachrid(getcharid(3, $@illia_char_channelling$));
// spawn items at random
set $@illia_item_spawn_i, rand(getarraysize($@illia_small_lazurites)/2);
set $@illia_item_spawn_x, $@illia_small_lazurites[$@illia_item_spawn_i*2];
@@ -228,9 +227,8 @@ S_CheckChannelling:
set $@illia_magic_power_status, 2;
// Player loses a part of his health while channelling
- if (isloggedin(getcharid(3, $@illia_char_channelling$)) == 0)
+ if (!(attachrid(getcharid(3, $@illia_char_channelling$))))
goto L_ChannellingFail;
- attachrid(getcharid(3, $@illia_char_channelling$));
// Display an effect showing the drain
misceffect FX_CHANNELLING_RAISE;
percentheal -4, 0;
diff --git a/world/map/npc/052-2/lobby.txt b/world/map/npc/052-2/lobby.txt
index a32ab830..c707c76f 100644
--- a/world/map/npc/052-2/lobby.txt
+++ b/world/map/npc/052-2/lobby.txt
@@ -341,9 +341,8 @@ L_ChaseLuvia:
end;
S_GetHeroRect:
- if (isloggedin($@ILLIA_HERO_ID) == 0)
+ if (!(attachrid($@ILLIA_HERO_ID)))
goto L_Clear;
- attachrid($@ILLIA_HERO_ID);
set $@illia_lobby_x, getx();
set $@illia_lobby_y, gety();
diff --git a/world/map/npc/052-2/partyroom.txt b/world/map/npc/052-2/partyroom.txt
index 663c2dec..ef04a667 100644
--- a/world/map/npc/052-2/partyroom.txt
+++ b/world/map/npc/052-2/partyroom.txt
@@ -123,9 +123,8 @@ OnTimer5000:
if ($@illia_level_7_progress != 1)
end;
// Warp to the place to spawn luvia once the teleport sequence is finished
- if (isloggedin($@ILLIA_HERO_ID) == 0)
+ if (!(attachrid($@ILLIA_HERO_ID)))
end;
- attachrid($@ILLIA_HERO_ID);
set $@illia_luvia_x, getx();
set $@illia_luvia_y, gety();
npcwarp $@illia_luvia_x, $@illia_luvia_y, "#LuviaDaemon";
@@ -176,9 +175,8 @@ OnTimer26000:
end;
S_SpawnWitchGuard:
- if (isloggedin($@ILLIA_HERO_ID) == 0)
+ if (!(attachrid($@ILLIA_HERO_ID)))
end;
- attachrid($@ILLIA_HERO_ID);
npcwarp getx(), gety(), "#LuviaDaemon";
misceffect FX_EVIL_SUMMON;
misceffect FX_GROUND_SPAWN;
diff --git a/world/map/npc/functions/ferry.txt b/world/map/npc/functions/ferry.txt
index c2e92271..8d530d1f 100644
--- a/world/map/npc/functions/ferry.txt
+++ b/world/map/npc/functions/ferry.txt
@@ -35,20 +35,59 @@ L_NextDock:
cmdothernpc "#"+$@MainDocks$[$@MainCurrentDock]+"Dock", "Arrive";
cmdothernpc "#"+$@CandorDocks$[$@CandorLastDock]+"Dock", "Warp";
cmdothernpc "#"+$@CandorDocks$[$@CandorCurrentDock]+"Dock", "Arrive";
- mapannounce "035-2.tmx", " Koga - Main : Now arriving in "+$@MainDocks$[$@MainCurrentDock]+".", 0;
- mapannounce "036-2.tmx", " Koga - Candor : Now arriving in "+$@CandorDocks$[$@CandorCurrentDock]+".", 0;
+
+ cmdothernpc "#k1sound", "Ding";
+ cmdothernpc "#k2sound", "Ding";
+
+ //mapannounce "035-2.tmx", " Koga - Main : Now arriving in "+$@MainDocks$[$@MainCurrentDock]+".", 0;
+ //mapannounce "036-2.tmx", " Koga - Candor : Now arriving in "+$@CandorDocks$[$@CandorCurrentDock]+".", 0;
initnpctimer;
+
+ if($@MainCurrentDock == 2) goto L_k1city1;
+ if($@MainCurrentDock == 0) goto L_k1city2;
+ if($@MainCurrentDock == 1) goto L_k1city3;
end;
OnTimer10000:
if ($@DockTickCount > $@DockLeaveCount)
goto L_NextDock;
- mapannounce "035-2.tmx", "Koga - Main : Now docked in "+$@MainDocks$[$@MainCurrentDock]+", Departing soon", 0;
- mapannounce "036-2.tmx", "Koga - Candor : Now docked in "+$@CandorDocks$[$@CandorCurrentDock]+", Departing soon", 0;
+ //mapannounce "035-2.tmx", "Koga - Main : Now docked in "+$@MainDocks$[$@MainCurrentDock]+", Departing soon", 0;
+ //mapannounce "036-2.tmx", "Koga - Candor : Now docked in "+$@CandorDocks$[$@CandorCurrentDock]+", Departing soon", 0;
set $@DockTickCount, $@DockTickCount + 1;
initnpctimer;
end;
+
+L_k1city1:
+ enablenpc "#k1city1e"; disablenpc "#k1city2e"; disablenpc "#k1city3e";
+ disablenpc "#k1city1d"; enablenpc "#k1city2d"; enablenpc "#k1city3d";
+ if($@CandorCurrentDock == 1) goto L_k2city1;
+ if($@CandorCurrentDock == 0) goto L_k2city2;
+end;
+
+L_k1city2:
+ disablenpc "#k1city1e"; enablenpc "#k1city2e"; disablenpc "#k1city3e";
+ enablenpc "#k1city1d"; disablenpc "#k1city2d"; enablenpc "#k1city3d";
+ if($@CandorCurrentDock == 1) goto L_k2city1;
+ if($@CandorCurrentDock == 0) goto L_k2city2;
+end;
+
+L_k1city3:
+ disablenpc "#k1city1e"; disablenpc "#k1city2e"; enablenpc "#k1city3e";
+ enablenpc "#k1city1d"; enablenpc "#k1city2d"; disablenpc "#k1city3d";
+ if($@CandorCurrentDock == 1) goto L_k2city1;
+ if($@CandorCurrentDock == 0) goto L_k2city2;
+end;
+
+L_k2city1:
+ enablenpc "#k2city1e"; disablenpc "#k2city2e";
+ disablenpc "#k2city1d"; enablenpc "#k2city2d";
+end;
+
+L_k2city2:
+ disablenpc "#k2city1e"; enablenpc "#k2city2e";
+ enablenpc "#k2city1d"; disablenpc "#k2city2d";
+end;
}
function|script|FerryManifest|,
diff --git a/world/map/npc/functions/travelers.txt b/world/map/npc/functions/travelers.txt
index e455eb74..60db8375 100644
--- a/world/map/npc/functions/travelers.txt
+++ b/world/map/npc/functions/travelers.txt
@@ -98,20 +98,20 @@ L_SetTravelBit:
L_Start:
mes "\"Where would you like to go?\"";
menu
- "Tulimshar (" + (@Cost * $@tulimshar_cost) + " GP)", L_TravelTulimshar,
- "Hurnscald (" + (@Cost * $@hurnscald_cost) + " GP)", L_TravelHurnscald,
- "Nivalis (" + (@Cost * $@nivalis_cost) + " GP)", L_TravelNivalis,
- "Candor (" + (@Cost * $@candor_cost) + " GP)", L_TravelCandor,
+ "Tonori - Tulimshar (" + (@Cost * $@tulimshar_cost) + " GP)", L_TravelTulimshar,
+ "Argeas - Hurnscald (" + (@Cost * $@hurnscald_cost) + " GP)", L_TravelHurnscald,
+ "Kaizei - Nivalis (" + (@Cost * $@nivalis_cost) + " GP)", L_TravelNivalis,
"Tonori - Druid Tree (" + (@Cost * $@druid_tree_cost) + " GP)", L_TravelDruidTree,
"Tonori - Tulimshar Mines (" + (@Cost * $@tul_mine_cost) + " GP)", L_TravelTulMine,
"Tonori - Pachua's Village (" + (@Cost * $@pachua_cost) + " GP)", L_TravelPachua,
+ "Argeas - Candor (" + (@Cost * $@candor_cost) + " GP)", L_TravelCandor,
"Argeas - Magic House (" + (@Cost * $@magic_house_cost) + " GP)", L_TravelMagicHouse,
"Argeas - Farmsteads (" + (@Cost * $@hurns_farms_cost) + " GP)", L_TravelHurnsFarms,
"Argeas - Graveyard (" + (@Cost * $@graveyard_cost) + " GP)", L_TravelGraveyard,
"Argeas - Terranite Cave (" + (@Cost * $@terranite_cave_cost) + " GP)", L_TravelTerranite,
- "Nivalis - Barbarian Village (" + (@Cost * $@barbarians_cost) + " GP)", L_TravelBarbarians,
- "Nivalis - Sage Nikolai's Mansion (" + (@Cost * $@blue_sage_cost) + " GP)", L_TravelBlueSage,
- "Nivalis - Snow Hills (" + (@Cost * $@nivalis_snow_hills_cost) + " GP)", L_TravelSnowHills,
+ "Kaizei - Barbarian Village (" + (@Cost * $@barbarians_cost) + " GP)", L_TravelBarbarians,
+ "Kaizei - Sage Nikolai's Mansion (" + (@Cost * $@blue_sage_cost) + " GP)", L_TravelBlueSage,
+ "Kaizei - Snow Hills (" + (@Cost * $@nivalis_snow_hills_cost) + " GP)", L_TravelSnowHills,
"Who are the Travelers?", L_TravelTut,
"I'm not interested.", L_TravelNo;
diff --git a/world/map/npc/items/check_wand.txt b/world/map/npc/items/check_wand.txt
index 1b11dfc2..4d8016bb 100644
--- a/world/map/npc/items/check_wand.txt
+++ b/world/map/npc/items/check_wand.txt
@@ -33,6 +33,7 @@ function|script|CheckWand|,
{
setarray $@Wands, 758, 1171;
setarray $@WandsPwr, 2, 1;
+ setarray $@WandsAnim, 35, 33;
set @Wand, 0;
set @wand_loop, 0;
goto L_Loop;
@@ -44,6 +45,7 @@ L_Loop:
L_SetWand:
set @Wand, $@WandsPwr[@wand_loop];
+ set @WandID, $@WandsAnim[@wand_loop];
callfunc "MorganState";
if (@morgan == 2)
goto L_SetCastOnce;