summaryrefslogtreecommitdiff
path: root/world/map/npc/021-1
diff options
context:
space:
mode:
Diffstat (limited to 'world/map/npc/021-1')
-rw-r--r--world/map/npc/021-1/_import.txt2
-rw-r--r--world/map/npc/021-1/_warps.txt12
-rw-r--r--world/map/npc/021-1/gate_guards.txt11
-rw-r--r--world/map/npc/021-1/hetchel.txt144
-rw-r--r--world/map/npc/021-1/imec.txt2
-rw-r--r--world/map/npc/021-1/north_shops.txt41
-rw-r--r--world/map/npc/021-1/npcs.txt6
-rw-r--r--world/map/npc/021-1/royal_guards.txt13
8 files changed, 177 insertions, 54 deletions
diff --git a/world/map/npc/021-1/_import.txt b/world/map/npc/021-1/_import.txt
index 30acb5b8..9fa30a77 100644
--- a/world/map/npc/021-1/_import.txt
+++ b/world/map/npc/021-1/_import.txt
@@ -7,12 +7,12 @@ npc: npc/021-1/bakery.txt
npc: npc/021-1/banu.txt
npc: npc/021-1/eurni.txt
npc: npc/021-1/gate_guards.txt
+npc: npc/021-1/hetchel.txt
npc: npc/021-1/hideandseek.txt
npc: npc/021-1/imec.txt
npc: npc/021-1/inac.txt
npc: npc/021-1/mapflags.txt
npc: npc/021-1/north_shops.txt
npc: npc/021-1/npcs.txt
-npc: npc/021-1/royal_guards.txt
npc: npc/021-1/weellos.txt
npc: npc/021-1/workers.txt
diff --git a/world/map/npc/021-1/_warps.txt b/world/map/npc/021-1/_warps.txt
index 5d620e74..618c057a 100644
--- a/world/map/npc/021-1/_warps.txt
+++ b/world/map/npc/021-1/_warps.txt
@@ -7,10 +7,14 @@
021-1.gat,55,134|warp|To Government Building|-1,-1,021-2.gat,33,29
021-1.gat,57,134|warp|To Government Building|-1,-1,021-2.gat,39,29
021-1.gat,103,100|warp|To Tulimshar Bakery|-1,-1,021-2.gat,91,27
-021-1.gat,103,96|warp|toBakery|-1,-1,021-2.gat,122,23
+021-1.gat,103,96|warp|To Bakery|-1,-1,021-2.gat,122,23
021-1.gat,49,64|warp|To Tulimshar Canyon|3,-1,024-1.gat,86,73
-021-1.gat,53,99|warp|To Tulimshar Forge|-1,-1,021-2.gat,25,66
-021-1.gat,52,95|warp|To Tulimshar Forge|-1,-1,021-2.gat,23,98
+021-1.gat,53,99|warp|To Wizard's Rest|-1,-1,021-2.gat,25,66
+021-1.gat,52,95|warp|To Wizard's Rest|-1,-1,021-2.gat,23,98
021-1.gat,73,22|warp|To Tulimshar Port|3,-1,022-1.gat,73,109
021-1.gat,113,22|warp|To Tulimshar Port|3,-1,022-1.gat,113,109
-021-1.gat,43,110|warp|to Store|-1,-1,021-2.gat,28,129
+021-1.gat,43,110|warp|To Store|-1,-1,021-2.gat,28,129
+021-1.gat,132,31|warp|To Tulimshar Forge|-1,-1,021-2.gat,79,138
+021-1.gat,133,24|warp|To Tulimshar Forge|-1,-1,021-2.gat,75,92
+021-1.gat,125,27|warp|To Tulimshar Forge|-1,-1,021-2.gat,124,68
+021-1.gat,125,31|warp|To Tulimshar Forge|-1,-1,021-2.gat,72,138
diff --git a/world/map/npc/021-1/gate_guards.txt b/world/map/npc/021-1/gate_guards.txt
index 6af33f2f..ad0e80b4 100644
--- a/world/map/npc/021-1/gate_guards.txt
+++ b/world/map/npc/021-1/gate_guards.txt
@@ -21,20 +21,25 @@
}
// Guards by the gates to East Tulimshar
+021-1.gat,146,23,0|script|Guard|104,{
+ mes "[Guard]";
+ mes "\"I make sure less desirables don't enter the Noble District.\"";
+ close;
+}
021-1.gat,156,42,0|script|Guard|104,{
mes "[Guard]";
- mes "\"It's still a mess in East Tulimshar. The volcano and earthquake did a lot of damage.\"";
+ mes "\"The volcano and earthquake did a lot of damage, but the citizens of Tulimshar sure did a good job of cleaning up.\"";
close;
}
021-1.gat,156,95,0|script|Guard|104,{
mes "[Guard]";
- mes "\"It can get quite dangerous east of town. But for now, the passage is closed.\"";
+ mes "\"The Palace is East of here. That is where you will find the Council of Wizards.\"";
close;
}
// Near the bazaar, outside the government building
-021-1.gat,58,135,0|script|Guard|123,{
+021-1.gat,55,136,0|script|Guard|123,{
mes "[Guard]";
mes "\"This is a government building. They have some clerical and tax offices in here. There is also a jail in the subbasement.\"";
close;
diff --git a/world/map/npc/021-1/hetchel.txt b/world/map/npc/021-1/hetchel.txt
new file mode 100644
index 00000000..e7ca7bd9
--- /dev/null
+++ b/world/map/npc/021-1/hetchel.txt
@@ -0,0 +1,144 @@
+// Hetchel the Silk Weaver
+// bh28,
+// 2013-03, GPLv2.
+//
+// Hetchel is referred to by Lora Tay.
+// She weaves and sells standard double elbow square silk sheets.
+// She could also sell, dyed sheets, Silk robes from Lora Tay.
+// (6000 with cocoons, 40000 (?) with no cocoons).
+//
+// Hetchel's workshop is actually under repair, Shé'll be back in 021-2 when workers have finished their job.
+//
+// QUEST_WG_state: Global variable indicating winter gloves status.
+// Lora Tay proposes silk Robe if (QUEST_WG_state>= 11).
+// @SHEET_COCOONS_NR : Number of cocoons required per sheet.
+// Might ne calculated from @ROBE_COCOONS_NR/@ROBE_SHEETS_NR
+// Actually: 150∕6 = 25
+// @SHEET_ZENY : Money to pay per sheet: A sixth of 10000-2*500-6000
+// @SheetCount Number of sheets to buy (variable).
+
+021-1.gat,120,39,0|script|Hetchel|376,{
+ set @SHEET_COCOONS_NR, 25;
+ set @SHEET_ZENY, 500;
+ set @SheetCount, 0;
+
+ if (QUEST_WG_state < 11)
+ goto L_WG_quest_not_done;
+ mes "[Hetchel the weaver]";
+ mes "\"Hello I am Hetchel, I weave fine textiles, what can I do for you?\"";
+ menu
+ "Sorry to bother, I'm just visiting.", L_end,
+ "I am looking for silk sheets, Lora Tay told me that I could find some in this market. Can you help?", -;
+ next;
+ goto L_main_menu;
+
+L_WG_quest_not_done:
+ mes "[Hetchel the weaver]";
+ mes "\"Hello I am Hetchel, I weave fine textiles.";
+ mes "My best client is Lora Tay, at Dimond's.";
+ mes "What can I do for you?\"";
+ menu
+ "Sorry to bother, I'm new to this country, just visting.", L_end,
+ "What are you selling?", -;
+ next;
+
+L_main_menu:
+ mes "[Hetchel]";
+ mes "\"I have some silk sheets: double-elbow squares.\"";
+ menu
+ "I'm not interested at the moment, maybe later; thanks anyway.", L_end,
+ "Can I buy some?", -;
+// "Do you have any silk robe I could buy?", L_robe,
+// "Goodbye.", L_end;
+ mes "[Hetchel]";
+ mes "\"Sure but you need to provide raw materials.";
+ mes "I'll need " + @SHEET_COCOONS_NR +" silk cocoons per sheet,";
+ mes "and also " + @SHEET_ZENY +" GP per sheet for my work.\"";
+ next;
+ if (countitem("SilkCocoon") == 0)
+ goto L_sheet_no_cocoon;
+
+L_sheet_menu:
+ menu
+ "I have what you asked for.", -,
+ "Sorry I didn't pay attention enough, what do you need?", L_how_many_cocoons,
+ "Oops! Sorry, I'll come back soon with them.", L_end;
+ next;
+ mes "[Hetchel]";
+ mes "\"How many would you like?\"";
+ input @SheetCount;
+ if (@SheetCount == 0)
+ goto L_zero_sheet;
+ if (countitem("SilkCocoon") < @SheetCount * @SHEET_COCOONS_NR)
+ goto L_sheet_missing_cocoons;
+ if (Zeny < @SheetCount * @SHEET_ZENY)
+ goto L_sheet_missing_Zeny;
+ getinventorylist;
+ if (@inventorylist_count == 100 && countitem("SilkSheet") < 1 && countitem("SilkCocoon") > @SheetCount * @SHEET_COCOONS_NR)
+ goto L_TooMany;
+ set Zeny, Zeny - @SheetCount * @SHEET_ZENY;
+ delitem "SilkCocoon", @SheetCount * @SHEET_COCOONS_NR;
+ getitem "Silksheet", @SheetCount;
+ mes "[Hetchel]";
+ mes "\"Thank you, I hope the sheets will fit your needs.";
+ mes "Please greet Lora for me when you see her.\"";
+ emotion EMOTE_HAPPY;
+ goto L_end;
+
+L_sheet_missing_cocoons:
+ mes "[Hetchel]";
+ mes "\"I'm sorry, but I need " + @SheetCount * @SHEET_COCOONS_NR + ", not " + countitem("SilkCocoon") + ".\"";
+ goto L_end;
+
+L_sheet_missing_Zeny:
+ mes "[Hetchel]";
+ mes "\"No, no no. The way this works is that you give me the GP first and I give you the sheets afterwards.";
+ mes "You're " + (@SheetCount * @SHEET_ZENY - Zeny) + " GP short, so come back when you can afford the sheets you asked for!\"";
+ goto L_end;
+
+L_how_many_cocoons:
+ mes "[Hetchel]";
+ mes "\"I need an average of " + @SHEET_COCOONS_NR + " cocoons per sheet";
+ mes "and also " + @SHEET_ZENY + " GP per sheet for my work.\"";
+ next;
+ goto L_sheet_menu;
+
+L_sheet_no_cocoon:
+ mes "[Hetchel]";
+ mes "\"You don't have any cocoon? I'm sorry I can't do anything for you.\"";
+ menu
+ "I'll seek for them.", L_end,
+ "Where can I get cocoons?", -;
+ next;
+ mes "[Hetchel]";
+ mes "\"Silk cocoons come from Silkworms. Silkworms live in the woodland area around Hurnscald.";
+ mes "Silkworms like especially woods and dark areas. You can go there by ferry.\"";
+ goto L_end;
+
+//L_robe:
+// mes "[Hetchel]";
+// mes "\"I am not a seamstress but I have a few silk robes from Lora Tay left.";
+// mes "It is not your size as Lora made them for me, but Tondar was kind enough";
+// mes "to cast a spell on it, so that it will fit to you as soon as you wear it.";
+// mes "However his prices are not that low.\"";
+// next;
+//
+//L_robe_menu:
+// goto L_main_menu;
+
+L_zero_sheet:
+ mes "[Hetchel]";
+ mes "\"It's the best way to get quickly served!\"";
+ goto L_end;
+
+L_TooMany:
+ mes "[Hetchel]";
+ mes "\"Your bag hasn't room enough. Store some things and come back.\"";
+
+L_end:
+ set @SHEET_COCOONS_NR, 0;
+ set @SHEET_ZENY, 0;
+ set @SheetCount, 0;
+ close;
+}
+
diff --git a/world/map/npc/021-1/imec.txt b/world/map/npc/021-1/imec.txt
index 5ad150f8..ac541c87 100644
--- a/world/map/npc/021-1/imec.txt
+++ b/world/map/npc/021-1/imec.txt
@@ -10,7 +10,7 @@ OnInit:
end;
}
-021-1.gat,128,36,0|script|Imec|162,{
+021-1.gat,120,33,0|script|Imec|162,{
set @state, ((QUEST_NorthTulimshar & $@ImecShopNT_MASK) >> $@ImecShopNT_SHIFT);
set @money, 500;
diff --git a/world/map/npc/021-1/north_shops.txt b/world/map/npc/021-1/north_shops.txt
index 75df89e0..71b9e757 100644
--- a/world/map/npc/021-1/north_shops.txt
+++ b/world/map/npc/021-1/north_shops.txt
@@ -3,7 +3,18 @@
// More high-end stuff to satisfy the richer people in Royal Tulimshar
// Some clothing
-021-1.gat,136,38,0|shop|Inar|108,CottonShirt :-1,CottonShorts :-1,CottonBoots :-1,DesertShirt :-1,SilkRobe :-5,DesertHat :-4
+021-1.gat,135,38,0|shop|Inar|108,CottonShirt :-1,CottonShorts :-1,CottonBoots :-1,DesertShirt :-1,SilkRobe :-5,DesertHat :-4
+
+021-1.gat,129,40,0|script|Well|400,{
+ callfunc "WaterBottle";
+}
+
+// An officer (for security)
+021-1.gat,128,36,0|script|Officer|150,{
+ mes "[Officer]";
+ mes "I'm here for extra security for this market.";
+ close;
+}
// A snobby store that won't sell to the player
// takes part in quest given by 021-2/kylian.txt
@@ -25,31 +36,3 @@ L_Close:
close;
}
-// A barber (later we can make it so certain styles need to come from him, for a price)
-021-1.gat,119,29,0|script|Issay|156,{
- mes "[Issay the Barber]";
- mes "\"Do you need a change of style?\"";
- next;
- callfunc "Barber";
- mes "[Issay the Barber]";
- mes "\"Come again!\"";
- close;
-}
-
-// Another banker
-021-1.gat,122,32,0|script|Hydusun|149,{
- set @npcname$, "Hydusun";
- callfunc "Banker";
- close;
-}
-
-021-1.gat,129,40,0|script|Well|400,{
- callfunc "WaterBottle";
-}
-
-// An officer (for security)
-021-1.gat,130,38,0|script|Officer|150,{
- mes "[Officer]";
- mes "I'm here for extra security for this market.";
- close;
-}
diff --git a/world/map/npc/021-1/npcs.txt b/world/map/npc/021-1/npcs.txt
index 89a3111e..662a69e2 100644
--- a/world/map/npc/021-1/npcs.txt
+++ b/world/map/npc/021-1/npcs.txt
@@ -10,7 +10,7 @@
close;
}
-021-1.gat,75,67,0|script|Silvia|207,{
+021-1.gat,76,67,0|script|Silvia|207,{
set @npcname$, "Silvia";
mes "[" + @npcname$ + "]";
@@ -22,7 +22,7 @@
close;
}
-021-1.gat,45,77,0|script|Pauline|208,{
+021-1.gat,55,66,0|script|Pauline|208,{
set @npcname$, "Pauline";
mes "[" + @npcname$ + "]";
@@ -32,7 +32,7 @@
close;
}
-021-1.gat,49,123,0|script|Michel|215,{
+021-1.gat,51,123,0|script|Michel|215,{
set @npcname$, "Michel";
mes "[" + @npcname$ + "]";
diff --git a/world/map/npc/021-1/royal_guards.txt b/world/map/npc/021-1/royal_guards.txt
deleted file mode 100644
index 1920e43b..00000000
--- a/world/map/npc/021-1/royal_guards.txt
+++ /dev/null
@@ -1,13 +0,0 @@
-//
-
-021-1.gat,141,23,0|script|Guard|126,{
- mes "[Guard]";
- mes "\"Stay away.\"";
- close;
-}
-
-021-1.gat,147,23,0|script|Guard|126,{
- mes "[Guard]";
- mes "\"Stay away.\"";
- close;
-}