summaryrefslogtreecommitdiff
path: root/world/map/npc/068-2
diff options
context:
space:
mode:
authorwushin <pasekei@gmail.com>2014-04-11 14:32:22 -0500
committerwushin <pasekei@gmail.com>2014-04-15 20:26:28 -0500
commit47f790759ea3ea56d31e000bc3f3b7f142ee802d (patch)
tree369dc32bddb447076c5cf9298f6624366aa03ce2 /world/map/npc/068-2
parent6e9543af67c5e027269bfc32e9c6f36111f3832a (diff)
downloadserverdata-47f790759ea3ea56d31e000bc3f3b7f142ee802d.tar.gz
serverdata-47f790759ea3ea56d31e000bc3f3b7f142ee802d.tar.bz2
serverdata-47f790759ea3ea56d31e000bc3f3b7f142ee802d.tar.xz
serverdata-47f790759ea3ea56d31e000bc3f3b7f142ee802d.zip
Npcs remaining script fixes
Npcs changed for travel Npcs changed for new maps Npcs changed for basic crypts
Diffstat (limited to 'world/map/npc/068-2')
-rw-r--r--world/map/npc/068-2/bank.txt8
-rw-r--r--world/map/npc/068-2/hetchel.txt146
-rw-r--r--world/map/npc/068-2/inya.txt200
-rw-r--r--world/map/npc/068-2/latoy.txt34
4 files changed, 388 insertions, 0 deletions
diff --git a/world/map/npc/068-2/bank.txt b/world/map/npc/068-2/bank.txt
new file mode 100644
index 00000000..70011c70
--- /dev/null
+++ b/world/map/npc/068-2/bank.txt
@@ -0,0 +1,8 @@
+// Another banker
+068-2.gat,29,83,0|script|Hydusun|149,
+{
+ set @npcname$, "Hydusun";
+ callfunc "Banker";
+ close;
+}
+
diff --git a/world/map/npc/068-2/hetchel.txt b/world/map/npc/068-2/hetchel.txt
new file mode 100644
index 00000000..87c3d5af
--- /dev/null
+++ b/world/map/npc/068-2/hetchel.txt
@@ -0,0 +1,146 @@
+// 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).
+
+068-2.gat,62,83,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?", 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?", L_main_menu;
+
+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?", L_Next;
+// "Do you have a silk robe I could buy?", L_robe,
+// "Goodbye.", L_end;
+
+L_Next:
+ 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;
+ goto L_sheet_menu;
+
+L_sheet_menu:
+ menu
+ "I have what you asked for.", L_Next1,
+ "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;
+
+L_Next1:
+ 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?", L_Next2;
+
+L_Next2:
+ 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;
+// 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.\"";
+ goto L_end;
+
+L_end:
+ set @SHEET_COCOONS_NR, 0;
+ set @SHEET_ZENY, 0;
+ set @SheetCount, 0;
+ close;
+}
+
diff --git a/world/map/npc/068-2/inya.txt b/world/map/npc/068-2/inya.txt
new file mode 100644
index 00000000..b4fdad2c
--- /dev/null
+++ b/world/map/npc/068-2/inya.txt
@@ -0,0 +1,200 @@
+//Gemstones: Diamond (white) , Ruby (red), Emerald (green), Sapphire (blue), Topaz (yellow), Amethyst (purple)
+//The power of the gems is important to future balance of these rings. Are they related to stats, tiers of power, schools of magic?
+
+068-2.gat,29,56,0|script|Inya|106,
+{
+ mes "[Inya]";
+ mes "\"I am Inya, a jeweler of fine rings. If you have a Simple Ring and a gem, I can make a nice ring for you for 1,000,000 gold pieces.\"";
+ next;
+ mes "\"Also, if you have a ring with gems on it, I can remove the gems and return the Simple Ring to you for 500,000 gold pieces.\"";
+ next;
+ mes "\"So, how can I help you?\"";
+ menu
+ "I have a wedding ring, will that do?", L_Inya_Wedding_Ring,
+ "I'd like to remove a gem (500000 GP).", L_Inya_Remove_RingGem,
+ "I'd like to add a gem (1000000 GP).", L_Inya_Add_RingGem,
+ "Not interested.", L_Inya_NotInterested;
+
+L_Inya_Wedding_Ring:
+ mes "[Inya]";
+ mes "\"No, sorry. I do not alter wedding rings at this time.\"";
+ close;
+
+L_Inya_Remove_RingGem:
+ mes "[Inya]";
+ mes "\"What kind of gem would you like to have removed?\"";
+ menu
+ "Diamond.", L_Inya_Remove_Diamond,
+ "Ruby.", L_Inya_Remove_Ruby,
+ "Emerald.", L_Inya_Remove_Emerald,
+ "Sapphire.", L_Inya_Remove_Sapphire,
+ "Topaz.", L_Inya_Remove_Topaz,
+ "Amethyst.", L_Inya_Remove_Amethyst,
+ "I've changed my mind.", L_Inya_NotInterested;
+
+L_Inya_Add_RingGem:
+ mes "[Inya]";
+ mes "\"What kind of gem would you like to add?\"";
+ menu
+ "Diamond.", L_Inya_Add_Diamond,
+ "Ruby.", L_Inya_Add_Ruby,
+ "Emerald.", L_Inya_Add_Emerald,
+ "Sapphire.", L_Inya_Add_Sapphire,
+ "Topaz.", L_Inya_Add_Topaz,
+ "Amethyst.", L_Inya_Add_Amethyst,
+ "I've changed my mind.", L_Inya_NotInterested;
+
+L_Inya_Remove_Diamond:
+ if ( (Zeny < 500000)
+ | (countitem ("DiamondRing") < 1) )
+ goto L_Inya_Not_Enough;
+ set Zeny, Zeny - 500000;
+ delitem "DiamondRing", 1;
+ getitem "SimpleRing", 1;
+ mes "[Inya]";
+ mes "\"Here you go.\"";
+ close;
+
+L_Inya_Remove_Ruby:
+ if ( (Zeny < 500000)
+ | (countitem ("RubyRing") < 1) )
+ goto L_Inya_Not_Enough;
+ set Zeny, Zeny - 500000;
+ delitem "RubyRing", 1;
+ getitem "SimpleRing", 1;
+ mes "[Inya]";
+ mes "\"Here you go.\"";
+ close;
+
+L_Inya_Remove_Emerald:
+ if ( (Zeny < 500000)
+ | (countitem ("EmeraldRing") < 1) )
+ goto L_Inya_Not_Enough;
+ set Zeny, Zeny - 500000;
+ delitem "EmeraldRing", 1;
+ getitem "SimpleRing", 1;
+ mes "[Inya]";
+ mes "\"Here you go.\"";
+ close;
+
+L_Inya_Remove_Sapphire:
+ if ( (Zeny < 500000)
+ | (countitem ("SapphireRing") < 1) )
+ goto L_Inya_Not_Enough;
+ set Zeny, Zeny - 500000;
+ delitem "SapphireRing", 1;
+ getitem "SimpleRing", 1;
+ mes "[Inya]";
+ mes "\"Here you go.\"";
+ close;
+
+L_Inya_Remove_Topaz:
+ if ( (Zeny < 500000)
+ | (countitem ("TopazRing") < 1) )
+ goto L_Inya_Not_Enough;
+ set Zeny, Zeny - 500000;
+ delitem "TopazRing", 1;
+ getitem "SimpleRing", 1;
+ mes "[Inya]";
+ mes "\"Here you go.\"";
+ close;
+
+L_Inya_Remove_Amethyst:
+ if ( (Zeny < 500000)
+ | (countitem ("AmethystRing") < 1) )
+ goto L_Inya_Not_Enough;
+ set Zeny, Zeny - 500000;
+ delitem "AmethystRing", 1;
+ getitem "SimpleRing", 1;
+ mes "[Inya]";
+ mes "\"Here you go.\"";
+ close;
+
+L_Inya_Add_Diamond:
+ if ( (Zeny < 1000000)
+ | (countitem ("SimpleRing") < 1)
+ | (countitem ("Diamond") < 1) )
+ goto L_Inya_Not_Enough;
+ set Zeny, Zeny - 1000000;
+ delitem "SimpleRing", 1;
+ delitem "Diamond", 1;
+ getitem "DiamondRing", 1;
+ mes "[Inya]";
+ mes "\"Here you go.\"";
+ close;
+
+L_Inya_Add_Ruby:
+ if ( (Zeny < 1000000)
+ | (countitem ("SimpleRing") < 1)
+ | (countitem ("Ruby") < 1) )
+ goto L_Inya_Not_Enough;
+ set Zeny, Zeny - 1000000;
+ delitem "SimpleRing", 1;
+ delitem "Ruby", 1;
+ getitem "RubyRing", 1;
+ mes "[Inya]";
+ mes "\"Here you go.\"";
+ close;
+
+L_Inya_Add_Emerald:
+ if ( (Zeny < 1000000)
+ | (countitem ("SimpleRing") < 1)
+ | (countitem ("Emerald") < 1) )
+ goto L_Inya_Not_Enough;
+ set Zeny, Zeny - 1000000;
+ delitem "SimpleRing", 1;
+ delitem "Emerald", 1;
+ getitem "EmeraldRing", 1;
+ mes "[Inya]";
+ mes "\"Here you go.\"";
+ close;
+
+L_Inya_Add_Sapphire:
+ if ( (Zeny < 1000000)
+ | (countitem ("SimpleRing") < 1)
+ | (countitem ("Sapphire") < 1) )
+ goto L_Inya_Not_Enough;
+ set Zeny, Zeny - 1000000;
+ delitem "SimpleRing", 1;
+ delitem "Sapphire", 1;
+ getitem "SapphireRing", 1;
+ mes "[Inya]";
+ mes "\"Here you go.\"";
+ close;
+
+L_Inya_Add_Topaz:
+ if ( (Zeny < 1000000)
+ | (countitem ("SimpleRing") < 1)
+ | (countitem ("Topaz") < 1) )
+ goto L_Inya_Not_Enough;
+ set Zeny, Zeny - 1000000;
+ delitem "SimpleRing", 1;
+ delitem "Topaz", 1;
+ getitem "TopazRing", 1;
+ mes "[Inya]";
+ mes "\"Here you go.\"";
+ close;
+
+L_Inya_Add_Amethyst:
+ if ( (Zeny < 1000000)
+ | (countitem ("SimpleRing") < 1)
+ | (countitem ("Amethyst") < 1) )
+ goto L_Inya_Not_Enough;
+ set Zeny, Zeny - 1000000;
+ delitem "SimpleRing", 1;
+ delitem "Amethyst", 1;
+ getitem "AmethystRing", 1;
+ mes "[Inya]";
+ mes "\"Here you go.\"";
+ close;
+
+L_Inya_NotInterested:
+ mes "[Inya]";
+ mes "\"Come back later and I will try to be of assistance.\"";
+ close;
+
+L_Inya_Not_Enough:
+ mes "[Inya]";
+ mes "\"I am sorry, you simply do not seem to have the necessary items for me to help you. Please come back when you do, and I would be more than happy to help you out.\"";
+ close;
+}
diff --git a/world/map/npc/068-2/latoy.txt b/world/map/npc/068-2/latoy.txt
new file mode 100644
index 00000000..b1dca208
--- /dev/null
+++ b/world/map/npc/068-2/latoy.txt
@@ -0,0 +1,34 @@
+// A snobby store that won't sell to the player
+// takes part in quest given by 021-2/kylian.txt
+
+// Shop: DesertShirt :-1,SilkRobe :-5,SerfHat :-1,DesertHat :-4
+068-2.gat,92,83,0|shop|#LatoyShop|127,DesertShirt :-1,SilkRobe :-5,SerfHat :-1,DesertHat :-4
+
+068-2.gat,92,83,0|script|Latoy|106,
+{
+ set QUEST_NorthTulimshar, QUEST_NorthTulimshar | $@knowLatoyNT;
+ set @kylian, ((QUEST_NorthTulimshar & $@businessmanNT_MASK) >> $@businessmanNT_SHIFT);
+
+ mes "[Latoy]";
+ mes "\"Is there something I can help you with?\"";
+ if (@kylian != 7)
+ goto L_Shop;
+ next;
+ mes "Maybe this is the kind of shop Kylian is looking for?";
+ goto L_Shop;
+
+L_Shop:
+ mes "[Latoy]";
+ mes "\"How would you like to browse my wares?\"";
+ menu
+ "Yes.", L_LatoyShop,
+ "No.", L_Close;
+
+L_LatoyShop:
+ close2;
+ shop "#LatoyShop";
+
+L_Close:
+ set @kylian, 0;
+ close;
+}