001-2,23,55,0 script Heathin NPC147,{ @TARROW_REQ_TERRA_ORE = 1; @TARROW_REQ_COAL = 5; @TARROW_REQ_GP = 3000; @heathin_xp_bonus = (100 * BaseLevel); if (QL_TERRANITE_ARMOR == 14) && (BaseLevel >= 80) goto L_Arrows_Trade; if (QL_TERRANITE_ARMOR == 13) && (BaseLevel >= 80) goto L_Arrows_Ready; if (QL_TERRANITE_ARMOR == 12) && (BaseLevel >= 80) goto L_Arrows_Forge; if (QL_TERRANITE_ARMOR == 11) && (BaseLevel >= 80) goto L_Arrows; if (QL_TERRANITE_ARMOR == 11) goto L_Forge_Thanks; if (QL_TERRANITE_ARMOR == 10) && (BaseLevel >= 80) goto L_Chest_Armor_Ready; if (QL_TERRANITE_ARMOR == 9) && (BaseLevel >= 80) goto L_Chest_Armor_Forge; if (QL_TERRANITE_ARMOR == 8) && (BaseLevel >= 80) goto L_Chest_Armor; if (QL_TERRANITE_ARMOR == 8) goto L_Forge_Thanks; if (QL_TERRANITE_ARMOR == 7) && (BaseLevel >= 75) goto L_Legs_Ready; if (QL_TERRANITE_ARMOR == 6) && (BaseLevel >= 75) goto L_Legs_Forge; if (QL_TERRANITE_ARMOR == 5) && (BaseLevel >= 75) goto L_Legs; if (QL_TERRANITE_ARMOR == 5) goto L_Forge_Thanks; if (QL_TERRANITE_ARMOR == 4) && (BaseLevel >= 70) goto L_Hood_Ready; if (QL_TERRANITE_ARMOR == 3) && (BaseLevel >= 70) goto L_Hood_Forge; if (QL_TERRANITE_ARMOR == 2) && (BaseLevel >= 70) goto L_Hood; if (QL_TERRANITE_ARMOR == 2) goto L_Forge_Thanks; if (QL_TERRANITE_ARMOR == 1) && (BaseLevel >= 60) goto L_Forge_Award; if (QL_TERRANITE_ARMOR < 1 && BaseLevel >= 60) goto L_Start; mes "[Heathin]"; mes "\"Hello, friend. I am Heathin, a smith of exotic metals. \""; close; L_Start: mes "[Heathin]"; mes "\"Hello, friend. I am Heathin, a smith of exotic metals. \""; next; mes "\"By the order of the Wizard's Council, I've been commissioned to forge armor for the upcoming expediation. However, I am but a simple smith and cannot complete all this effort by myself. I need individuals that can gather Coal to heat my forge.\""; next; mes "\"Perhaps you would be interested in helping me out? Would you be willing to help me gather Coal and help me fulfill my commission? I am asking any and all willing souls to get me 50 coal, as that would put a significant dint in my goal.\""; menu "Sure, I'll help!", L_Help, "I'd rather keep my Coal for my own purposes, thank you very much.", L_No, "Wait, what kind of award are we talking about?", L_Interested; L_Help: QL_TERRANITE_ARMOR = 1; mes "[Heathin]"; mes "\"Excellent! I am always glad when someone can be of service not just to me, but to all of Tulimshar. Please get me 50 Coal and you will be compensated for your efforts.\""; close; L_Interested: mes "[Heathin]"; mes "\"Well, I can compensate you from the commision I getting from the council.\""; next; mes "\"How does 20,000 GP and I'll offer my smithing services for a discount?\""; next; mes "\"Does this sound like something you might be interested in?\""; menu "Sure, I'll help!", L_Help, "I'd rather keep my Coal.", L_No, "Can you repeat that again?", L_Interested; L_Forge_Award: if (countitem (Coal) < 50) goto L_Forge_Wait; getinventorylist; QL_TERRANITE_ARMOR = 2; delitem Coal, 50; getexp @heathin_xp_bonus, 0; Zeny = Zeny + 20000; mes "[Heathin]"; mes "\"You have brought the Coal. This is most excellent! As promised, I have a reward for you. Hopefully you will find it useful.\""; next; mes "\"Time to make some armor. The Council will be pleased. Thank you for your efforts!\""; close; L_Forge_Wait: mes "[Heathin]"; mes "\"Hello again. Making armor keeps me pretty busy. I certainly hope I can fulfill my commission soon so that I can move on to bigger and better things.\""; next; mes "\"The pay is good, certainly, but I am a far better smith than this. If you can bring me 50 Coal, it would surely get me to my goal faster.\""; next; mes "\"I will be sure to provide an apt award once you are done.\""; close; L_Forge_Thanks: mes "[Heathin]"; mes "\"Thank you again for helping me fulfil my commission. It has made a signficant dint in what the Council requires of me. Perhaps I may be of service to you again one day!\""; close; L_Hood: mes "[Heathin]"; mes "\"Hello again friend, I just found out about this great metal called terranite.\""; next; mes "\"This metal is almost as strong as steel, but is also very ductile.\""; next; mes "\"With some effort, I can make this metal form rings tighter than any chain mail. It isn't the prettiest in hue, but its uses can be many.\""; next; mes "\"Unfortunately, it seems to be difficult to gather. Most that have searched for Terranite Ore either cannot find it or have never returned...\""; next; mes "\"I may be an excellent smith, but I certainly am no combatant. However, I would enjoy turning this ore into something useful, perhaps some type of armor to help those that may be braver.\""; next; mes "\"So, what do you say? Are you interested?\""; menu "No, thank you. Maybe later.", L_No, "Armor, you say? Definitely!", L_Yes; L_No: mes "[Heathin]"; mes "\"Ah, that is too bad. Come back anytime.\""; close; L_Yes: QL_TERRANITE_ARMOR = 3; mes "[Heathin]"; mes "\"Great, this is going to be fun! As I have not had much practice with this armor, I'd like to get started soon.\""; next; mes "Heathin thinks for a moment."; next; mes "\"Ah, I know! I will make a helm... Well, more like a hood, since it will be woven.\""; next; mes "\"It will require a great amount of heat, if the rumors are to be believed. For this, I will need 100 Coal to keep my forge burning hot. I will also need 10 Terranite Ore to make the armor. Of course, such work does not come cheap. While I may enjoy my work, my time and effort is very valuable. Since you have been a great help I will only need 20,000 gold pieces, well below my going rate. Please come back with the gold, Coal and ore and I'll make this hood for you.\""; close; L_Hood_Forge: if ( (Zeny < 20000) || (countitem(Coal) < 100) || (countitem(TerraniteOre) < 10) ) goto L_Hood_Wait; QL_TERRANITE_ARMOR = 4; delitem Coal, 100; delitem TerraniteOre, 10; getexp @heathin_xp_bonus, 0; Zeny = Zeny - 20000; mes "[Heathin]"; mes "\"Great, you brought everything! Come back later and I'll have the helm ready for you.\""; close; L_Hood_Wait: mes "[Heathin]"; mes "\"I am very busy right now. If you could bring me 10 Terranite Ore, 100 Coal and 20,000 gold pieces, I will make that terranite hood for you.\""; close; L_Hood_Ready: getinventorylist; if ((checkweight("TerraniteHelmet", 1) == 0) || (@inventorylist_count == 100)) goto L_InventoryNoSpace; QL_TERRANITE_ARMOR = 5; getitem TerraniteHelmet, 1; mes "[Heathin]"; mes "\"I am all done with your terranite hood. I hope you enjoy it! I have some work to wrap up for the Council, but come back later and I might be able to assist you again.\""; close; L_Legs: QL_TERRANITE_ARMOR = 6; mes "[Heathin]"; mes "\"I am glad you are back! I've just finished up some more of my commission. Now I can get back to making terranite armor for you. This time I will make some pants, but they need more ore, more Coal to heat my forge and of course, more gold for my efforts.\""; next; mes "\"To make terranite pants, I need 200 Coal, 30 Terranite Ore and 40,000 gold pieces. The faster you bring this to me, the faster I can have your terranite pants ready.\""; close; L_Legs_Forge: if ( (Zeny < 40000) || (countitem(Coal) < 200) || (countitem(TerraniteOre) < 30) ) goto L_Legs_Wait; QL_TERRANITE_ARMOR = 7; delitem Coal, 200; delitem TerraniteOre, 30; getexp @heathin_xp_bonus, 0; Zeny = Zeny - 40000; mes "[Heathin]"; mes "\"Great, you have brought everything! Come back later and I will have those terranite pants ready for you.\""; close; L_Legs_Wait: mes "[Heathin]"; mes "\"I am very busy right now. If you could bring me 30 Terranite Ore, 200 Coal and 40,000 gold pieces, I will make those terranite pants for you.\""; close; L_Legs_Ready: getinventorylist; if ((checkweight("TerraniteLegs", 1) == 0) || (@inventorylist_count == 100)) goto L_InventoryNoSpace; QL_TERRANITE_ARMOR = 8; getitem "TerraniteLegs", 1; mes "[Heathin]"; mes "\"I am all done with your terranite pants. Hope you enjoy them! I have some more work to complete for the Council. Come back later and I might be able to assist you again.\""; close; L_Chest_Armor: QL_TERRANITE_ARMOR = 9; mes "[Heathin]"; mes "\"Good to see you again. I have just finished up some more of my commission. Now I can get back to making terranite armor for you. This time, I will make some terranite chest armor, but it needs more ore, more Coal for my forge and of course, more gold to compensate for my efforts.\""; next; mes "\"To make terranite chest armor, I need 250 Coal, 40 Terranite Ore and 50,000 gold pieces. The faster you bring this to me, the faster I can have your terranite armor ready.\""; close; L_Chest_Armor_Forge: if ( (Zeny < 50000) || (countitem(Coal) < 250) || (countitem(TerraniteOre) < 40) ) goto L_Chest_Armor_Wait; QL_TERRANITE_ARMOR = 10; delitem Coal, 250; delitem TerraniteOre, 40; getexp @heathin_xp_bonus, 0; Zeny = Zeny - 50000; mes "[Heathin]"; mes "\"Splendid, you have brought everything! Come back later and I will have the terranite chest armor ready for you.\""; close; L_Chest_Armor_Wait: mes "[Heathin]"; mes "\"I am very busy right now. If you could bring me 40 Terranite Ore, 250 Coal and 50,000 gold pieces, I will make that chest armor for you.\""; close; L_Chest_Armor_Ready: getinventorylist; if ((checkweight("TerraniteChestArmor", 1) == 0) || (@inventorylist_count == 100)) goto L_InventoryNoSpace; QL_TERRANITE_ARMOR = 11; getitem "TerraniteChestArmor", 1; mes "[Heathin]"; mes "\"I have completed your terranite chest armor. I hope you enjoy it! I have some work to wrap up for the Council again, but come back later and I might be able to assist you once more.\""; close; L_Arrows: mes "[Heathin]"; mes "\"How good to see you. I have experimented a little with Terranite Ore to see what else can be done with it. It seems to have some qualities suitable for weapons, but I have only tested it with arrows. If you would like, I can make Terranite Arrows, but as as with the armor, I need Coal, Terranite Ore and payment for my efforts.\""; next; mes "\"Also, it might be a while until I have time to see what else I can make with terranite other than arrows, as right now the Council is keeping me rather busy with my commission. So, would you like some Terranite Arrows?\""; menu "No, thank you.", L_Arrows_No, "Sure, I could use some arrows.", L_Arrows_Yes; L_Arrows_No: mes "[Heathin]"; mes "\"Well, if you change your mind, I'm not going anywhere.\""; close; L_Arrows_Yes: QL_TERRANITE_ARMOR = 12; mes "[Heathin]"; mes "\"Good, good. I shall begin crafting these arrows as soon as you come back. However, I cannot just make small handfuls as it would not be worth my time and effort to have my concentration interrupted for small tasks. I will make 1,000 Terranite Arrows per request, for which I will need "+@TARROW_REQ_TERRA_ORE+" Terranite Ore, "+@TARROW_REQ_COAL+" Coal and "+@TARROW_REQ_GP+" gold pieces.\""; next; mes "\"See you soon!\""; close; L_Arrows_Forge: if ( (Zeny < @TARROW_REQ_GP) || (countitem(Coal) < @TARROW_REQ_COAL) || (countitem(TerraniteOre) < @TARROW_REQ_TERRA_ORE) ) goto L_Arrows_Wait; QL_TERRANITE_ARMOR = 13; delitem Coal, @TARROW_REQ_COAL; delitem TerraniteOre, @TARROW_REQ_TERRA_ORE; getexp @heathin_xp_bonus, 0; Zeny = Zeny - @TARROW_REQ_GP; mes "[Heathin]"; mes "\"Wonderful! You have everything I asked for. I will start working on the arrows right away.\""; close; L_Arrows_Wait: mes "[Heathin]"; mes "\"If you want Terranite Arrows, please get me "+@TARROW_REQ_TERRA_ORE+" Terranite Ore, "+@TARROW_REQ_COAL+" Coal and "+@TARROW_REQ_GP+" gold pieces.\""; close; L_Arrows_Ready: getinventorylist; if ((checkweight(TerraniteArrow, 1000) == 0) || (@inventorylist_count == 100)) goto L_InventoryNoSpace; QL_TERRANITE_ARMOR = 14; getitem TerraniteArrow, 1000; mes "[Heathin]"; mes "\"All done, here you go! I hope you like them. I am still working on my commission, but if you ever need any more Terranite Arrows, just come on by with "+@TARROW_REQ_COAL+" Coal, "+@TARROW_REQ_TERRA_ORE+" Terranite Ore and "+@TARROW_REQ_GP+" gold pieces and I will make another 1,000 arrows for you. By now I have enough Terranite Ore in reserve that you can just trade me my requirements to keep my resources up. Thank you for all your efforts!\""; close; L_Arrows_Trade: mes "[Heathin]"; mes "\"Hello, there. If you have "+@TARROW_REQ_COAL+" Coal, "+@TARROW_REQ_TERRA_ORE+" Terranite Ore and "+@TARROW_REQ_GP+" gold pieces, I will trade you 1,000 Terranite Arrows. Would you like some Terranite Arrows?\""; menu "No.", L_Arrows_Trade_No, "Yes.", L_Arrows_Trade_Yes; L_Arrows_Trade_No: mes "[Heathin]"; mes "\"Come back again if you would like to get Terranite Arrows.\""; close; L_Arrows_Trade_Yes: if ( (Zeny < @TARROW_REQ_GP) || (countitem(Coal) < @TARROW_REQ_COAL) || (countitem(TerraniteOre) < @TARROW_REQ_TERRA_ORE) ) goto L_Arrows_Trade_Wait; getinventorylist; if ((checkweight(TerraniteArrow, 1500) == 0) || (@inventorylist_count == 100)) goto L_InventoryNoSpace; delitem Coal, @TARROW_REQ_COAL; delitem TerraniteOre, @TARROW_REQ_TERRA_ORE; Zeny = Zeny - @TARROW_REQ_GP; @lucky = 5 * rand(Luk); @lucky$ = ""; getitem TerraniteArrow, 1000 + @lucky; mes "[Heathin]"; if(@lucky>0) @lucky$ = " You are lucky, I could forge "+@lucky+" more arrows than expected."; mes "Here you go!" + @lucky$ + " Come back again if you want more Terranite Arrows.\""; close; L_Arrows_Trade_Wait: mes "[Heathin]"; mes "\"It seems that you do not have the necessary resources for me to trade you. Please come back with "+@TARROW_REQ_COAL+" Coal, "+@TARROW_REQ_TERRA_ORE+" Terranite Ore and "+@TARROW_REQ_GP+" gold pieces if you want another 1,000 Terranite Arrows.\""; close; L_InventoryNoSpace: mes "[Heathin]"; mes "\"Hm no. You can't carry this right now. Make some room and come back.\""; close; } 001-2,25,55,0 script HeathinDebug NPC147,{ mes "[Heathin Debug]"; mes "Debug Action"; menu "Reset", L_Reset, "Exit", L_End; L_Reset: QL_TERRANITE_ARMOR = 0; mes "Reset!"; goto L_End; L_End: end; OnInit: if (!debug) disablenpc "HeathinDebug"; end; }