summaryrefslogtreecommitdiff
path: root/npc/009-2_Hurnscald
diff options
context:
space:
mode:
authorWombat <hpwombat@yahoo.com>2010-08-22 11:52:26 -0400
committerWombat <hpwombat@yahoo.com>2010-08-22 11:52:26 -0400
commitbb0a5a4170d1a7959704ad153d475919bda7e65c (patch)
treec086e9aaf4ef64f80da88c697c9bcfc3261003c9 /npc/009-2_Hurnscald
parentfd1769f8b57209cf456abe0dda45729a0d27e9ae (diff)
downloadserverdata-bb0a5a4170d1a7959704ad153d475919bda7e65c.tar.gz
serverdata-bb0a5a4170d1a7959704ad153d475919bda7e65c.tar.bz2
serverdata-bb0a5a4170d1a7959704ad153d475919bda7e65c.tar.xz
serverdata-bb0a5a4170d1a7959704ad153d475919bda7e65c.zip
Crafting NPC release and related changes
Ingots now needed for armor and helmets, terranite quest, ring jeweler quest fixes related to these changes to maintain balance
Diffstat (limited to 'npc/009-2_Hurnscald')
-rw-r--r--npc/009-2_Hurnscald/_import.txt1
-rw-r--r--npc/009-2_Hurnscald/nicholas.txt80
-rw-r--r--npc/009-2_Hurnscald/peter.txt75
-rw-r--r--npc/009-2_Hurnscald/shops.txt5
4 files changed, 122 insertions, 39 deletions
diff --git a/npc/009-2_Hurnscald/_import.txt b/npc/009-2_Hurnscald/_import.txt
index 8b3dd0dc..25d4868d 100644
--- a/npc/009-2_Hurnscald/_import.txt
+++ b/npc/009-2_Hurnscald/_import.txt
@@ -11,6 +11,7 @@ npc: npc/009-2_Hurnscald/mapflags.txt
npc: npc/009-2_Hurnscald/misc.txt
npc: npc/009-2_Hurnscald/nicholas.txt
npc: npc/009-2_Hurnscald/nurse.txt
+npc: npc/009-2_Hurnscald/peter.txt
npc: npc/009-2_Hurnscald/richard.txt
npc: npc/009-2_Hurnscald/selim.txt
npc: npc/009-2_Hurnscald/shops.txt
diff --git a/npc/009-2_Hurnscald/nicholas.txt b/npc/009-2_Hurnscald/nicholas.txt
index 0a1834f0..8c820849 100644
--- a/npc/009-2_Hurnscald/nicholas.txt
+++ b/npc/009-2_Hurnscald/nicholas.txt
@@ -3,7 +3,7 @@
//# Nicholas the Smith.
//# Participates in iron ore smithery and the following quests:
//# - Together with Pachua: Iron Shield quest (repeatable)
-//# (10 iron ores, 2 infantry helmets, 20000 GP, leather patch) -> iron shield
+//# (6 iron ingots, 2 infantry helmets, 20000 GP, leather patch) -> iron shield
//# - Primary participant in the Setzer quest (monster oil/golden stinger subquests)
//#
//# Variables used: @QUEST_Forestbow_state, nibble 3 (setzer quest)
@@ -38,28 +38,29 @@
mes "[Nicholas]";
mes "\"Hello there,";
mes "I'm an expert blacksmith.";
- mes "If you get me some Iron Ore";
+ mes "If you get me some coal and iron ingots";
mes "I could make you a very valuable shield";
mes "or helmet.\"";
next;
menu
- "I have some Iron Ore!", L_Check,
- "Where can I get this Iron Ore?", L_Info,
+ "I have iron ingots!", L_Check,
+ "Where can I get coal and iron Ingots?", L_Info,
"I'm okay, thanks.", L_Pass;
L_Check:
mes "[Nicholas]";
mes "\"Let me take at look at how much you have...\"";
next;
- if(countitem("IronOre")<5) goto L_NoItem;
- if(countitem("IronOre")<10) goto L_StageA;
- if(countitem("IronOre")<15) goto L_StageB;
+ if ( (countitem("IngotIron")<3) | (countitem("Coal") < 6) ) goto L_NoItem;
+ if ( (countitem("IngotIron")<6) | (countitem("Coal") < 12) ) goto L_StageA;
+ if ( (countitem("IngotIron")<9) | (countitem("Coal") < 18) ) goto L_StageB;
goto L_StageC;
L_Info:
mes "[Nicholas]";
- mes "\"You can find Iron Ore in mines.";
- mes "It is quite hard to come by though.\"";
+ mes "\"You can find coal and iron ore in mines.";
+ mes "\"Once you have coal and iron ore, find a smith that will smelt the iron ore and cast them into iron ingots.";
+ mes "\"Come back here with more coal and the iron ingots and I'll make something nice for you.\"";
close;
L_Pass:
@@ -72,14 +73,14 @@ L_StageA:
mes "[Nicholas]";
mes "\"That's just enough for me to make you";
mes "a winged Knight's Helmet.";
- mes "But it'll cost you 10,000GP";
- mes "and 5 lumps of Iron Ore.\"";
+ mes "But it'll cost you 10,000GP,";
+ mes "6 Coal and 3 Iron Ingots.\"";
next;
goto L_main_menu;
L_StageB:
mes "[Nicholas]";
- mes "\"Ahh, with that much Iron Ore I can";
+ mes "\"Ahh, with that much coal and iron ingots I can";
mes "make you one of two helmets,";
mes "for only 10,000GP, or I can";
mes "make you a shield, for 20,000GP.\"";
@@ -120,24 +121,24 @@ L_main_menu:
L_main_menu_post_setzer:
- if (countitem("IronOre")<5) goto L_no_more_helmets;
- set @choice$[@choices_nr], "Knight's Helmet. (5 Iron Ores)";
+ if ( (countitem("IngotIron")<3) | (countitem("Coal") <6) ) goto L_no_more_helmets;
+ set @choice$[@choices_nr], "Knight's Helmet. (3 Iron Ingots & 6 Coal)";
set @choice_idx[@choices_nr], @CHOICE_KNIGHT;
set @choices_nr, 1 + @choices_nr;
- if (countitem("IronOre")<10) goto L_no_more_helmets;
+ if ( (countitem("IngotIron")<6) | (countitem("Coal") < 12) ) goto L_no_more_helmets;
- set @choice$[@choices_nr], "Crusade Helmet. (10 Iron Ores)";
+ set @choice$[@choices_nr], "Crusade Helmet. (6 Iron Ingots & 12 Coal)";
set @choice_idx[@choices_nr], @CHOICE_CRUSADE;
set @choices_nr, 1 + @choices_nr;
- set @choice$[@choices_nr], "Steel Shield. (10 Iron Ores)";
+ set @choice$[@choices_nr], "Steel Shield. (6 Iron Ingots)";
set @choice_idx[@choices_nr], @CHOICE_SHIELD;
set @choices_nr, 1 + @choices_nr;
- if (countitem("IronOre")<15) goto L_no_more_helmets;
+ if ( (countitem("IngotIron")<9) | (countitem("Coal") < 18) ) goto L_no_more_helmets;
- set @choice$[@choices_nr], "Warlord Helmet. (15 Iron Ores)";
+ set @choice$[@choices_nr], "Warlord Helmet. (9 Iron Ingots & 18 Coal)";
set @choice_idx[@choices_nr], @CHOICE_WARLORD;
set @choices_nr, 1 + @choices_nr;
L_no_more_helmets:
@@ -171,7 +172,7 @@ L_no_more_helmets:
L_NoItem:
mes "[Nicholas]";
- mes "\"It appears you don't have enough Iron Ore for me to work with.";
+ mes "\"It appears you don't have enough Coal and Iron Ingots for me to work with.";
mes "Please do come back when you have more though.\"";
close;
@@ -190,7 +191,8 @@ L_YesKnight:
getinventorylist;
if (@inventorylist_count == 100) goto L_TooMany;
set zeny, zeny - 10000;
- delitem "IronOre", 5;
+ delitem "IngotIron", 3;
+ delitem "Coal", 6;
getitem "KnightsHelmet", 1;
goto L_Done;
@@ -199,7 +201,8 @@ L_YesCrusade:
getinventorylist;
if (@inventorylist_count == 100) goto L_TooMany;
set zeny, zeny-10000;
- delitem "IronOre", 10;
+ delitem "IngotIron", 6;
+ delitem "Coal", 12;
getitem "CrusadeHelmet", 1;
goto L_Done;
@@ -208,13 +211,14 @@ L_YesWarlord:
getinventorylist;
if (@inventorylist_count == 100) goto L_TooMany;
set zeny, zeny-10000;
- delitem "IronOre", 15;
+ delitem "IngotIron", 9;
+ delitem "Coal", 18;
getitem "WarlordHelmet", 1;
goto L_Done;
L_YesShield:
mes "[Nicholas]";
- mes "Nicholas examines your iron ore.";
+ mes "Nicholas examines your Iron Ingots.";
mes "\"No, this iron is too brittle; for something as large as a shield I need to mix in softer iron. Can I see if you have anything suitable?\"";
next;
@@ -240,19 +244,21 @@ L_YesShield:
if (zeny < 20000) goto L_ShieldNoZeny;
if (countitem("InfantryHelmet") < 2) goto L_ShieldNoInfantry;
- if (countitem("IronOre") < 10) goto L_ShieldNoOre;
+ if (countitem("IngotIron") < 6) goto L_ShieldNoIngot;
+ if (countitem("Coal") < 12) goto L_ShieldNoCoal;
if (countitem("LeatherPatch") < 1) goto L_ShieldNoLeatherPatch;
// No inventory check needed, as infantry helms are removed, opening two slots
mes "[Nicholas]";
mes "\"Yes, it looks as if you have all that is needed!\"";
- mes "You watch Nicholas melt the ore and helmets and form a shield out of the resulting iron. He then cuts your leather patch apart and adds it to the handles.";
+ mes "You watch Nicholas melt the ingots and helmets and form a shield out of the resulting iron. He then cuts your leather patch apart and adds it to the handles.";
mes "\"Here is your shield!\"";
delitem "InfantryHelmet", 1;
delitem "InfantryHelmet", 1;
delitem "LeatherPatch", 1;
- delitem "IronOre", 10;
+ delitem "IngotIron", 6;
+ delitem "Coal", 12;
set zeny, zeny - 20000;
if (@Q_SHIELD_status < @SHIELD_COMPLETED)
@@ -276,9 +282,14 @@ L_ShieldNoInfantry:
mes "\"Now this is strange... I could have sworn that you had two infantry helmets right here. Well, come back if you have some more!\"";
close;
-L_ShieldNoOre:
+L_ShieldNoIngot:
mes "[Nicholas]";
- mes "\"How odd... didn't I put your iron ore on the table right here? Well, I will need it back to make the shield.\"";
+ mes "\"How odd... didn't I put your iron ingots on the table right here? Well, I will need it back to make the shield.\"";
+ close;
+
+L_ShieldNoCoal:
+ mes "[Nicholas]";
+ mes "\"How odd... didn't I put your coal on the table right here? Well, I will need it back to make the shield.\"";
close;
L_ShieldNoLeatherPatch:
@@ -309,7 +320,7 @@ L_SetzerQuest:
if (@Q_SETZER_status & @SETZER_FLAG_MADE_SETZER)
mes "\"Another one? Sure, why not.\"";
mes "Nicholas examines your short sword, then nods.";
- mes "\"This is good quality. I can make something special out of it, for five chunks of iron ore and 50,000 GP-- but I will also need a potion of monster oil.\"";
+ mes "\"This is good quality. I can make something special out of it, with three ingot bars of iron and 50,000 GP-- but I will also need a potion of monster oil.\"";
if (@Q_SETZER_status < @SETZER_KNOWS_OIL)
set @Q_SETZER_status, @SETZER_KNOWS_OIL;
callsub L_Update_Var;
@@ -320,7 +331,7 @@ L_SetzerQuest:
"HOW much? Never mind.", L_Pass;
if (zeny < 50000) goto L_SetzerNoZeny;
- if (countitem("IronOre") < 5) goto L_SetzerNoOre;
+ if ( (countitem("IngotIron") < 3) | (countitem("Coal") < 6) ) goto L_SetzerNoIngot;
if (countitem("MonsterOilPotion") < 1) goto L_SetzerNoMonsterOil;
if (countitem("ShortSword") < 1) goto L_SetzerNoSword;
// No inventory check needed, as the short sword is removed, opening a slot
@@ -329,7 +340,8 @@ L_SetzerQuest:
mes "Nicholas takes the items, heats up your sword and pounds it with a heavy hammer. Before your eyes it turns thinner and flatter. Finally he pours the monster oil over it, heats it up again and douses it in water.";
set zeny, zeny - 50000;
- delitem "IronOre", 5;
+ delitem "IngotIron", 3;
+ delitem "Coal", 6;
delitem "MonsterOilPotion", 1;
delitem "ShortSword", 1;
@@ -361,9 +373,9 @@ L_SetzerNoZeny:
mes "\"I am sorry, but I must ask that you pay 50,000 GP; the kind of weapon I am thinking of is not easy to make.\"";
close;
-L_SetzerNoOre:
+L_SetzerNoIngot:
mes "[Nicholas]";
- mes "\"Without five chunks of iron ore I can't improve your sword.\"";
+ mes "\"Without 3 ingots of iron, I can't improve your sword.\"";
close;
L_SetzerNoMonsterOil:
diff --git a/npc/009-2_Hurnscald/peter.txt b/npc/009-2_Hurnscald/peter.txt
new file mode 100644
index 00000000..1fcea250
--- /dev/null
+++ b/npc/009-2_Hurnscald/peter.txt
@@ -0,0 +1,75 @@
+// Nicholas' Apprentice and Armorsmith
+
+009-2.gat,183,57,0 script Peter 157,{
+
+ mes "[Peter]";
+ mes "\"Hello, I am Nicholas' apprentice, Peter.\"";
+ next;
+ mes "\"I can make you some sturdy armor if you give me iron ingots to craft with and gold pieces for my efforts. What would you like me to make?\"";
+ menu
+ "Chain Mail (10 coal, 5 ingots and 20000 GP)", L_Peter_Chain_Mail,
+ "Light Plate (20 coal, 10 ingots and 50000 GP)", L_Peter_Light_Plate,
+ "Warlord Plate (30 coal, 15 ingots and 100000 GP)", L_Peter_Warlord_Plate,
+ "nevermind", -;
+ close;
+
+L_Peter_Chain_Mail:
+ if (zeny < 20000) goto L_Peter_NotEnough_Zeny;
+ if (countitem("IngotIron") < 5) goto L_Peter_NotEnough_Ingot;
+ if (countitem("Coal") < 10) goto L_Peter_NotEnough_Coal;
+ getinventorylist;
+ if (@inventorylist_count == 100) goto L_Peter_TooMany;
+ set zeny, zeny - 20000;
+ delitem "IngotIron", 5;
+ getitem "ChainmailShirt", 1;
+ mes "[Peter]";
+ mes "\"Here you go!\"";
+ close;
+
+L_Peter_Light_Plate:
+ if (zeny < 20000) goto L_Peter_NotEnough_Zeny;
+ if (countitem("IngotIron") < 10) goto L_Peter_NotEnough_Ingot;
+ if (countitem("Coal") < 20) goto L_Peter_NotEnough_Coal;
+ getinventorylist;
+ if (@inventorylist_count == 100) goto L_Peter_TooMany;
+ set zeny, zeny - 50000;
+ delitem "IngotIron", 10;
+ getitem "LightPlatemail", 1;
+ mes "[Peter]";
+ mes "\"Here you go!\"";
+ close;
+
+L_Peter_Warlord_Plate:
+ if (zeny < 20000) goto L_Peter_NotEnough_Zeny;
+ if (countitem("IngotIron") < 15) goto L_Peter_NotEnough_Ingot;
+ if (countitem("Coal") < 30) goto L_Peter_NotEnough_Coal;
+ getinventorylist;
+ if (@inventorylist_count == 100) goto L_Peter_TooMany;
+ set zeny, zeny - 100000;
+ delitem "IngotIron", 15;
+ getitem "WarlordPlate", 1;
+ mes "[Peter]";
+ mes "\"Here you go!\"";
+ close;
+
+L_Peter_NotEnough_Zeny:
+ mes "[Peter]";
+ mes "\"You don't have enough gold.\"";
+ close;
+
+L_Peter_NotEnough_Ingot:
+ mes "[Peter]";
+ mes "\"You don't have enough ingots.\"";
+ close;
+
+L_Peter_NotEnough_Coal:
+ mes "[Peter]";
+ mes "\"You don't have enough coal.\"";
+ close;
+
+L_Peter_TooMany:
+ mes "[Peter]";
+ mes "\"You have too much stuff. Please get rid of something if you want some armor.\"";
+ close;
+
+}
diff --git a/npc/009-2_Hurnscald/shops.txt b/npc/009-2_Hurnscald/shops.txt
index 9d36a166..9c85c845 100644
--- a/npc/009-2_Hurnscald/shops.txt
+++ b/npc/009-2_Hurnscald/shops.txt
@@ -24,11 +24,6 @@
// sells cactus drink, cactus potion, iron potion, concentration potion, and slow poison potion
009-2.gat,123,22,0 shop Potions#_M 127,501:50,502:70,567:500,568:500,750:500
-// Blacksmith
-// Sells all knives, chainmail armor, light platemail
-009-2.gat,183,57,0 shop Blacksmith 135,625:20000,626:50000,658:100000,1201:25,522:100,521:1000
-
-
// General Store
// Sells various things, many not sold elsewhere
009-2.gat,32,99,0 shop General Store 112,527:-1,541:-1,1202:-1,586:-1,528:-1,656:-1,724:3000,741:-1