summaryrefslogtreecommitdiff
path: root/npc/017-5/nahrec.txt
diff options
context:
space:
mode:
Diffstat (limited to 'npc/017-5/nahrec.txt')
-rw-r--r--npc/017-5/nahrec.txt109
1 files changed, 60 insertions, 49 deletions
diff --git a/npc/017-5/nahrec.txt b/npc/017-5/nahrec.txt
index fdb94e794..bd430d7ba 100644
--- a/npc/017-5/nahrec.txt
+++ b/npc/017-5/nahrec.txt
@@ -8,50 +8,14 @@
// TODO: Silversmith on 24, 25
017-5,44,24,0 script Nahrec NPC_PLAYER,{
+ function blacksmith_create;
+
// Debug
if (!is_staff()) {
mesn;
mesq l("Almost there! The War Lord will be proud with this new armor I am inventing for him! Just a little more...!");
- close;
- }
-
- // blacksmith_create( BaseItem1, Amount, BaseItem2, Amount, PrizeItem, Price )
- function blacksmith_create {
- .@base1=getarg(0);
- .@amon1=getarg(1);
- .@base2=getarg(2);
- .@amon2=getarg(3);
- .@prize=getarg(4);
- .@price=getarg(5);
-
- mesn;
- mesq l("Do you want to craft @@? For that I will need @@ @@, @@ @@ and @@ gp.",
- getitemlink(.@prize), .@amon1, getitemlink(.@base1), .@amon2, getitemlink(.@base2), .@price);
-
- select
- l("Yes"),
- l("No");
-
- if (@menu == 2)
- return;
-
- if (countitem(.@base1) >= .@amon1 &&
- countitem(.@base2) >= .@amon2 &&
- Zeny >= .@price) {
- inventoryplace .@prize, 1;
- delitem .@base1, .@amon1;
- delitem .@base2, .@amon2;
- Zeny = Zeny - .@price;
- getitem .@prize, 1;
-
- mes "";
- mesn;
- mesq l("Many thanks! Come back soon.");
- } else {
- speech S_FIRST_BLANK_LINE,// | S_LAST_NEXT,
- l("You don't have enough material, sorry.");
- }
- return;
+ //close;
+ next;
}
mesn;
@@ -79,11 +43,13 @@ L_Makestuff:
mesn;
mesq l("Yes, I can craft many things. In addition to plating and improving armor, I can craft smaller items made of gold and other metals.");
select
- rif(countitem(WarlordPlate) > 0, l("Can you improve my Warlord Plate for me?")),
- rif(countitem(LightPlatemail) > 0, l("Can you improve my Light Platemail for me?")),
+ rif(false && countitem(WarlordPlate) > 0, l("Can you improve my Warlord Plate for me?")),
+ rif(false && countitem(LightPlatemail) > 0, l("Can you improve my Light Platemail for me?")),
+ l("Can you craft Chainmail?"),
l("Can you craft Light Platemail?"),
- l("Can you craft Warlord Plate?"),
+ rif(false, l("Can you craft Warlord Plate?")),
l("Can you craft Savior Pants?"),
+ l("Can you craft Chainmail Skirt?"),
l("Do you know something about 'Mylarin Dust'?"),
l("Nevermind, bye!");
mes "";
@@ -95,16 +61,22 @@ L_Makestuff:
blacksmith_create(GoldIngot, 10, LightPlatemail, 1, GoldenLightPlatemail, 30000);
break;
case 3:
- blacksmith_create(IronIngot, 15, SilverIngot, 5, LightPlatemail, 10000);
+ blacksmith_create(IronIngot, 10, SilverIngot, 2, Chainmail, 20000);
break;
case 4:
- blacksmith_create(IronIngot, 5, GoldenLightPlatemail, 1, WarlordPlate, 5000);
+ blacksmith_create(IronIngot, 15, SilverIngot, 5, LightPlatemail, 40000);
break;
case 5:
- goto L_Savior;
+ blacksmith_create(IronIngot, 5, GoldenLightPlatemail, 1, WarlordPlate, 5000);
+ break;
case 6:
- goto L_Mylarin;
+ goto L_Savior;
case 7:
+ blacksmith_create(IronIngot, 10, SilverIngot, 15, ChainmailSkirt, 35000);
+ break;
+ case 8:
+ goto L_Mylarin;
+ case 9:
closedialog;
goodbye;
close;
@@ -130,10 +102,49 @@ L_Savior:
mesn;
mesq l("Yes, I can craft Savior Pants. But it is not cheap. I'll need Platinum, Iridium, and Mylarin Dust. And gold. Much gold.");
select
- "I'll be back with those items..",
- "That's crazy!";
+ l("I'll be back with those items.."),
+ l("That's crazy!");
close;
+// blacksmith_create( BaseItem1, Amount, BaseItem2, Amount, PrizeItem, Price )
+function blacksmith_create {
+ .@base1=getarg(0);
+ .@amon1=getarg(1);
+ .@base2=getarg(2);
+ .@amon2=getarg(3);
+ .@prize=getarg(4);
+ .@price=getarg(5);
+
+ mesn;
+ mesq l("Do you want to craft @@? For that I will need @@ @@, @@ @@ and @@ gp.",
+ getitemlink(.@prize), .@amon1, getitemlink(.@base1), .@amon2, getitemlink(.@base2), .@price);
+
+ select
+ l("Yes"),
+ l("No");
+
+ if (@menu == 2)
+ return;
+
+ if (countitem(.@base1) >= .@amon1 &&
+ countitem(.@base2) >= .@amon2 &&
+ Zeny >= .@price) {
+ inventoryplace .@prize, 1;
+ delitem .@base1, .@amon1;
+ delitem .@base2, .@amon2;
+ Zeny = Zeny - .@price;
+ getitem .@prize, 1;
+
+ mes "";
+ mesn;
+ mesq l("Many thanks! Come back soon.");
+ } else {
+ speech S_FIRST_BLANK_LINE,// | S_LAST_NEXT,
+ l("You don't have enough material, sorry.");
+ }
+ return;
+}
+
OnInit:
.@npcId = getnpcid(.name$);
setunitdata(.@npcId, UDT_HEADTOP, FancyHat);