From 7fb57a637e49014fe286bbaf4eca05a18992605d Mon Sep 17 00:00:00 2001 From: Lupus Date: Fri, 20 Oct 2006 08:29:13 +0000 Subject: updated novice_exchange git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9019 54d463be-8e91-2dee-dedb-b68131a5f0ec --- npc/Changelog.txt | 1 + npc/merchants/novice_exchange.txt | 152 ++++++++++ npc/quests/novice_exchange.txt | 613 -------------------------------------- npc/scripts_athena.conf | 3 +- 4 files changed, 155 insertions(+), 614 deletions(-) create mode 100644 npc/merchants/novice_exchange.txt delete mode 100644 npc/quests/novice_exchange.txt (limited to 'npc') diff --git a/npc/Changelog.txt b/npc/Changelog.txt index a547df751..ce35fe2d8 100644 --- a/npc/Changelog.txt +++ b/npc/Changelog.txt @@ -30,6 +30,7 @@ Playtester Date Added ====== 10/20 * Fixed The Sign Exploits [Lupus] + - Optimized Novice Exchanged (loot->Red Potions), moved the file to NPC\Merchants - Fixed The Sign bugs, thanks to Tantarian + added get rid of sobbing pieces to let people reborn If u finished the Sign Quest and have some undeleted sobbing pieces, then visit this man diff --git a/npc/merchants/novice_exchange.txt b/npc/merchants/novice_exchange.txt new file mode 100644 index 000000000..746817149 --- /dev/null +++ b/npc/merchants/novice_exchange.txt @@ -0,0 +1,152 @@ +//===== eAthena Script ======================================== +//= Novice Goods Exchanger +//===== By: ================================================== +//= ???, eAthena Team +//===== Current Version: ===================================== +//= 1.1 +//===== Compatible With: ===================================== +//= eAthena 1.0+ +//===== Description: ========================================= +//= Exchanges your cheap loot to Red Potions. +//= Official NPC. +//===== Additional Comments: ================================= +//= 1.1 Made it as a function. U can add your own Merchs [Lupus] +//============================================================ + +function script F_NMerch { + mes "["+getarg(0)+"]"; + if((Weight*100)/MaxWeight >= 90){ + mes "You will exceed your weight limit if you exchange for the Red Potions."; + close; + } + mes "Good day!"; + mes "Do you have any collection items such as "+getitemname(getarg(1))+"s or "+getitemname(getarg(3))+"s ?"; + if(getarg(5)) + mes "...how about "+getitemname(getarg(5))+"-s ?.."; + mes "Oh, yeah, I need those for something."; + next; + mes "["+getarg(0)+"]"; + mes "Of course I am not asking you to give those for free!"; + mes "How about...if I give you 1 Red"; + mes "Potion for "+getarg(2)+" "+getitemname(getarg(1))+"s or "+getarg(4)+" "+getitemname(getarg(3))+"s ?"; + if(getarg(5)) + mes "or "+getarg(6)+" "+getitemname(getarg(5))+" ?"; + next; + switch (select("Sure!:Think you're ripping me off...:No, thanks")) { + case 1: + mes "["+getarg(0)+"]"; + mes "So which item do you bring me ?"; + mes ""+getitemname(getarg(1))+"-s? "+getitemname(getarg(3))+"-s ?"; + mes "Or "+getitemname(getarg(5))+"-s?"; + next; + if(getarg(5)) + set @i,select(""+getitemname(getarg(1))+"",""+getitemname(getarg(3))+"",""+getitemname(getarg(5))+"","Cancel"); + else + set @i,select(""+getitemname(getarg(1))+"",""+getitemname(getarg(3))+"","Cancel"); + if(@i==4 || (@i==3 && !getarg(5))) { + mes "["+getarg(0)+"]"; + mes "Sure, no problem."; + close; + } + set @have,countitem(getarg(1+@i*2)); + if(@have < getarg(2+@i*2)) { + mes "["+getarg(0)+"]"; + mes "Hey, where are all those"; + mes getitemname(getarg(1+@i*2))+"-s you promised?"; + close; + } + mes "["+getarg(0)+"]"; + mes "Okay, let me take a look at the stuff you brought."; + next; + set @max,@have / getarg(2+@i*2)]; + mes "["+getarg(0)+"]"; + mes "You have total "+@have+" "+getitemname(getarg(1+@i*2))+"-s..."; + mes "I can give you"; + mes "total "+@max+" Red Potion for those."; + next; + mes "["+getarg(0)+"]"; + mes "What do you say? Deal?"; + next; + if(select("Deal.:No deal.")==2) { + mes "[Merchant]"; + mes "Bah~ whatever."; + mes "Bah!"; + close; + } + mes "["+getarg(0)+"]"; + mes "You know the exact number of Red Potions"; + mes "you can receive for "+getitemname(getarg(1+@i*2))+"-s, don't you?"; + next; + mes "["+getarg(0)+"]"; + mes "You can get Red Potions"; + mes "from minimum 1 to maximum 100 at once."; + mes "If you change your mind, enter '0'"; + mes "to cancel."; + while(1) { + next; + input @val; + if(@val<0 || @val>100) { + mes "["+getarg(0)+"]"; + mes "Uh oh, the number you entered"; + mes "seemed incorrect."; + mes "You'd better check how many red"; + mes "potions you can get."; + continue; + } + break; + } + mes "["+getarg(0)+"]"; + if(@val == 0) { + mes "What...how the hell did you even"; + mes "bother to talk to me?"; + mes "Leave, I don't deal with whimsical"; + mes "people."; + close; + } + if(@val > @max) { + mes "Uh oh, the number you entered"; + mes "seemed incorrect."; + mes "You'd better check how many red"; + mes "potions you can get."; + close; + } + delitem getarg(1+@i*2),getarg(2+@i*2)*@val; + getitem 501,@val; + mes "There you go!"; + mes "Thanks, it was a good deal."; + close; + case 2: + mes "["+getarg(0)+"]"; + mes "Did you say I am ripping you off?!"; + mes "You got to know how ignorant that comment was!"; + mes "When you check the price of each item,"; + mes "I am doing a losing business."; + mes "If you don't want to do then, fine!"; + close; + case 3: + mes "["+getarg(0)+"]"; + mes "Hah, no problem."; + mes "Bah!"; + close; + } +} + +prontera.gat,123,102,5 script Merchant#1 85,{ + callfunc "F_NMerch","Merchant",935,5,914,10,909,10; +} + +geffen.gat,173,88,5 script Merchant#2 85,{ + callfunc "F_NMerch","Merchant",935,5,915,6,909,10; +} +morocc.gat,180,259,3 script Merchant#3 85,{ + callfunc "F_NMerch","Merchant",935,5,916,7,909,10; +} + +aldebaran.gat,152,63,5 script Merchant#4 85,{ + callfunc "F_NMerch","Merchant",955,1,916,7,909,10; +} + +payon.gat,200,134,5 script Merchant#5 85,{ + //we remove 3rd item, by adding 0,0 + callfunc "F_NMerch","Merchant",902,6,909,10,0,0; +} \ No newline at end of file diff --git a/npc/quests/novice_exchange.txt b/npc/quests/novice_exchange.txt deleted file mode 100644 index e86651290..000000000 --- a/npc/quests/novice_exchange.txt +++ /dev/null @@ -1,613 +0,0 @@ -prontera.gat,123,102,5 script Merchant#1 85,{ - if(Weight*100/MaxWeight >= 90){ - mes "[Merchant]"; - mes "You will exceed your weight limit if you exchange for the Red Potions."; - close; -} - setarray @need,935,914,909; - setarray @amount,5,10,10; - - mes "[Merchant]"; - mes "Good day!"; - mes "Do you have any collection items such as "+getitemname(@need[0])+"s or "+getitemname(@need[1])+"s ?"; - mes "...how about Jellopies ?.."; - mes "Oh, yeah, I need those for"; - mes "something."; - next; - mes "[Merchant]"; - mes "Of course I am not asking you to give those for free!"; - mes "How about...if I give you 1 Red"; - mes "Potion for "+@amount[0]+" "+getitemname(@need[0])+"s or "+@amount[1]+" "+getitemname(@need[1])+"s???"; - mes "or "+@amount[2]+" Jelopies ???"; - - next; - switch (select("Sure!","Think you're ripping me off...","No,thanks")) { - case 1: - mes "[Merchant]"; - mes "So which item do you bring me ?"; - mes ""+getitemname(@need[0])+"s? "+getitemname(@need[1])+"s ?"; - mes "Or Jellopies?"; - next; - set @i,select(""+getitemname(@need[0])+"",""+getitemname(@need[1])+"",""+getitemname(@need[2])+"","Cancel")-1; - if(@i==3) { - mes "[Merchant]"; - mes "Sure, no problem."; - close; - } - set @have,countitem(@need[@i]); - if(@have < @amount[@i]) { - mes "[Merchant]"; - if(@i > 0) - mes "Hey, where are all those"; - mes getitemname(@need[@i])+"s you promised?"; - mes "Give me "+getitemname(@need[@i])+"s !"; - close; - } - mes "[Merchant]"; - mes "Okay, let me take a look at the stuff you brought"; - next; - set @max,@have / @amount[@i]; - mes "[Merchant]"; - mes "You have total "+@have+" "+getitemname(@need[@i])+"s..."; - mes "I can give you"; - mes "total "+@max+" Red Potion for those."; - next; - mes "[Merchant]"; - mes "What do you say? Deal?"; - next; - if(select("Deal.","No deal.")==2) { - mes "[Merchant]"; - mes "Bah~ whatever."; - mes "Bah!"; - close; - } - mes "[Merchant]"; - mes "You know the exact number of Red Potions"; - mes "you can receive for "+getitemname(@need[@i])+"s, don't you?"; - next; - mes "[Merchant]"; - mes "You can get Red Potions"; - mes "from minimum 1 to maximum 100 at once."; - mes "If you change your mind, enter '0'"; - mes "to cancel."; - while(1) { - next; - input @val; - if(@val<0 || @val>100) { - mes "[Merchant]"; - mes "Uh oh, the number you entered"; - mes "seemed incorrect."; - mes "You'd better check how many red"; - mes "potions you can get."; - continue; - } - break; - } - if(@val == 0) { - mes "[Merchant]"; - mes "What...how the hell did you even"; - mes "bother to talk to me?"; - mes "Leave, I don't deal with whimsical"; - mes "people."; - close; - } - if(@val > @max) { - mes "[Merchant]"; - mes "Uh oh, the number you entered"; - mes "seemed incorrect."; - mes "You'd better check how many red"; - mes "potions you can get."; - close; - } - delitem @need[@i],@amount[@i]*@val; - getitem 501,@val; - mes "[Merchant]"; - mes "There you go!"; - mes "Check the numbers again."; - mes "Thanks, it was a good deal."; - close; - case 2: - mes "[Merchant]"; - mes "Did you say I am ripping you off?!"; - mes "You got to know how ignorant that comment was!"; - mes "When you check the price of each item,"; - mes "I am doing a losing business."; - mes "If you don't want to do then, fine!"; - close; - case 3: - mes "[Merchant]"; - mes "Hah, no problem."; - mes "Bah!"; - close; - } -} - - -geffen.gat,173,88,5 script Merchant#2 85,{ - if(Weight*100/MaxWeight >= 90){ - mes "[Merchant]"; - mes "You will exceed your weight limit if you exchange for the Red Potions."; - close; -} - setarray @need,935,915,909; - setarray @amount,5,6,10; - mes "[Merchant]"; - mes "Good day!"; - mes "Do you have any collection items such as "+getitemname(@need[0])+"s or "+getitemname(@need[1])+"s?"; - mes "...how about Jellopies?.."; - mes "Oh, yeah, I need those for"; - mes "something."; - next; - mes "[Merchant]"; - mes "Of course I am not asking you to give those for free!"; - mes "How about...if I give you 1 Red"; - mes "Potion for "+@amount[0]+" "+getitemname(@need[0])+"s or "+@amount[1]+" "+getitemname(@need[1])+"s ???"; - mes "or "+@amount[2]+" Jellopies ???"; - - next; - switch (select("Sure!","Think you're ripping me off...","No,thanks")) { - case 1: - mes "[Merchant]"; - mes "So which item do you bring me ?"; - mes ""+getitemname(@need[0])+"s ? "+getitemname(@need[1])+"s ?"; - mes "Or Jellopies ?"; - next; - set @i,select(""+getitemname(@need[0])+"",""+getitemname(@need[1])+"",""+getitemname(@need[2])+"","Cancel")-1; - if(@i==3) { - mes "[Merchant]"; - mes "Sure, no problem."; - close; - } - set @have,countitem(@need[@i]); - if(@have < @amount[@i]) { - mes "[Merchant]"; - if(@i > 0) - mes "Hey, where are all those"; - mes getitemname(@need[@i])+"s you promised?"; - mes "Give me "+getitemname(@need[@i])+"s!"; - close; - } - mes "[Merchant]"; - mes "Okay, let me take a look at the stuff you brought"; - next; - set @max,@have / @amount[@i]; - mes "[Merchant]"; - mes "You have total "+@have+" "+getitemname(@need[@i])+"s..."; - mes "I can give you"; - mes "total "+@max+" Red Potion for those."; - next; - mes "[Merchant]"; - mes "What do you say? Deal?"; - next; - if(select("Deal.","No deal.")==2) { - mes "[Merchant]"; - mes "Bah~ whatever."; - mes "Bah!"; - close; - } - mes "[Merchant]"; - mes "You know the exact number of Red Potions"; - mes "you can receive for "+getitemname(@need[@i])+"s,don't you?"; - next; - mes "[Merchant]"; - mes "You can get Red Potions"; - mes "from minimum 1 to maximum 100 at once."; - mes "If you change your mind, enter '0'"; - mes "to cancel."; - while(1) { - next; - input @val; - if(@val<0 || @val>100) { - mes "[Merchant]"; - mes "Uh oh, the number you entered"; - mes "seemed incorrect."; - mes "You'd better check how many red"; - mes "potions you can get."; - continue; - } - break; - } - if(@val == 0) { - mes "[Merchant]"; - mes "What...how the hell did you even"; - mes "bother to talk to me?"; - mes "Leave, I don't deal with whimsical"; - mes "people."; - close; - } - if(@val > @max) { - mes "[Merchant]"; - mes "Uh oh, the number you entered"; - mes "seemed incorrect."; - mes "You'd better check how many red"; - mes "potions you can get."; - close; - } - delitem @need[@i],@amount[@i]*@val; - getitem 501,@val; - mes "[Merchant]"; - mes "There you go!"; - mes "Check the numbers again."; - mes "Thanks, it was a good deal."; - close; - case 2: - mes "[Merchant]"; - mes "Did you say I am ripping you off?!"; - mes "You got to know how ignorant that comment was!"; - mes "When you check the price of each item,"; - mes "I am doing a losing business."; - mes "If you don't want to do then, fine!"; - close; - case 3: - mes "[Merchant]"; - mes "Hah, no problem."; - mes "Bah!"; - close; - } -} -morocc.gat,180,259,3 script Merchant#3 85,{ - if(Weight*100/MaxWeight >= 90){ - mes "[Merchant]"; - mes "You will exceed your weight limit if you exchange for the Red Potions."; - close; -} - setarray @need,935,916,909; - setarray @amount,5,7,10; - mes "[Merchant]"; - mes "Good day!"; - mes "Do you have any collection items such as "+getitemname(@need[0])+"s or "+getitemname(@need[1])+"s ?"; - mes "...how about Jellopies?.."; - mes "Oh, yeah, I need those for"; - mes "something."; - next; - mes "[Merchant]"; - mes "Of course I am not asking you to give those for free!"; - mes "How about...if I give you 1 Red"; - mes "Potion for "+@amount[0]+" "+getitemname(@need[0])+"s or "+@amount[1]+" "+getitemname(@need[1])+"s ???"; - mes "or "+@amount[2]+" Jellopies???"; - - next; - switch (select("Sure!","Think you're ripping me off...","No,thanks")) { - case 1: - mes "[Merchant]"; - mes "So which item do you bring me ?"; - mes ""+getitemname(@need[0])+"s? "+getitemname(@need[1])+"s ?"; - mes "Or Jellopies?"; - next; - set @i,select(""+getitemname(@need[0])+"",""+getitemname(@need[1])+"",""+getitemname(@need[2])+"","Cancel")-1; - if(@i==3) { - mes "[Merchant]"; - mes "Sure, no problem."; - close; - } - set @have,countitem(@need[@i]); - if(@have < @amount[@i]) { - mes "[Merchant]"; - if(@i > 0) - mes "Hey, where are all those"; - mes getitemname(@need[@i])+"s you promised?"; - mes "Give me "+getitemname(@need[@i])+"s!"; - close; - } - mes "[Merchant]"; - mes "Okay, let me take a look at the stuff you brought"; - next; - set @max,@have / @amount[@i]; - mes "[Merchant]"; - mes "You have total "+@have+" "+getitemname(@need[@i])+"s..."; - mes "I can give you"; - mes "total" +@max+ "Red Potion for those."; - next; - mes "[Merchant]"; - mes "What do you say? Deal?"; - next; - if(select("Deal.","No deal.")==2) { - mes "[Merchant]"; - mes "Bah~ whatever."; - mes "Bah!"; - close; - } - mes "[Merchant]"; - mes "You know the exact number of Red Potions"; - mes "you can receive for "+getitemname(@need[@i])+"s,don't you?"; - next; - mes "[Merchant]"; - mes "You can get Red Potions"; - mes "from minimum 1 to maximum 100 at once."; - mes "If you change your mind, enter '0'"; - mes "to cancel."; - while(1) { - next; - input @val; - if(@val<0 || @val>100) { - mes "[Merchant]"; - mes "Uh oh, the number you entered"; - mes "seemed incorrect."; - mes "You'd better check how many red"; - mes "potions you can get."; - continue; - } - break; - } - if(@val == 0) { - mes "[Merchant]"; - mes "What...how the hell did you even"; - mes "bother to talk to me?"; - mes "Leave, I don't deal with whimsical"; - mes "people."; - close; - } - if(@val > @max) { - mes "[Merchant]"; - mes "Uh oh, the number you entered"; - mes "seemed incorrect."; - mes "You'd better check how many red"; - mes "potions you can get."; - close; - } - delitem @need[@i],@amount[@i]*@val; - getitem 501,@val; - mes "[Merchant]"; - mes "There you go!"; - mes "Check the numbers again."; - mes "Thanks, it was a good deal."; - close; - case 2: - mes "[Merchant]"; - mes "Did you say I am ripping you off?!"; - mes "You got to know how ignorant that comment was!"; - mes "When you check the price of each item,"; - mes "I am doing a losing business."; - mes "If you don't want to do then, fine!"; - close; - case 3: - mes "[Merchant]"; - mes "Hah, no problem."; - mes "Bah!"; - close; - } -} - -aldebaran.gat,152,63,5 script Merchant#4 85,{ - if(Weight*100/MaxWeight >= 90){ - mes "[Merchant]"; - mes "You will exceed your weight limit if you exchange for the Red Potions."; - close; -} - setarray @need,955,916,909; - setarray @amount,1,7,10; - mes "[Merchant]"; - mes "Good day!"; - mes "Do you have any collection items such as "+getitemname(@need[0])+"s or "+getitemname(@need[1])+"s ?"; - mes "...how about Jellopies?.."; - mes "Oh, yeah, I need those for"; - mes "something."; - next; - mes "[Merchant]"; - mes "Of course I am not asking you to give those for free!"; - mes "How about...if I give you 1 Red"; - mes "Potion for "+ @amount[0]+" "+getitemname(@need[0])+"s or "+@amount[1]+" "+getitemname(@need[1])+"s ???"; - mes "or "+@amount[2]+" Jellopies ???"; - - next; - switch (select("Sure!","Think you're ripping me off...","No,thanks")) { - case 1: - mes "[Merchant]"; - mes "So which item do you bring me ?"; - mes ""+getitemname(@need[0])+"s ? "+getitemname(@need[1])+"s ?"; - mes "Or Jellopies ?"; - next; - set @i,select(""+getitemname(@need[0])+"",""+getitemname(@need[1])+"",""+getitemname(@need[2])+"","Cancel")-1; - if(@i==3) { - mes "[Merchant]"; - mes "Sure, no problem."; - close; - } - set @have,countitem(@need[@i]); - if(@have < @amount[@i]) { - mes "[Merchant]"; - if(@i > 0) - mes "Hey, where are all those"; - mes getitemname(@need[@i])+"s you promised?"; - mes "Give me "+getitemname(@need[@i])+"s!"; - close; - } - mes "[Merchant]"; - mes "Okay, let me take a look at the stuff you brought"; - next; - set @max,@have / @amount[@i]; - mes "[Merchant]"; - mes "You have total "+@have+" "+getitemname(@need[@i])+"s..."; - mes "I can give you"; - mes "total "+@max+" Red Potion for those."; - next; - mes "[Merchant]"; - mes "What do you say? Deal?"; - next; - if(select("Deal.","No deal.")==2) { - mes "[Merchant]"; - mes "Bah~ whatever."; - mes "Bah!"; - close; - } - mes "[Merchant]"; - mes "You know the exact number of Red Potions"; - mes "you can receive for "+getitemname(@need[@i])+"s,don't you?"; - next; - mes "[Merchant]"; - mes "You can get Red Potions"; - mes "from minimum 1 to maximum 100 at once."; - mes "If you change your mind, enter '0'"; - mes "to cancel."; - while(1) { - next; - input @val; - if(@val<0 || @val>100) { - mes "[Merchant]"; - mes "Uh oh, the number you entered"; - mes "seemed incorrect."; - mes "You'd better check how many red"; - mes "potions you can get."; - continue; - } - break; - } - if(@val == 0) { - mes "[Merchant]"; - mes "What...how the hell did you even"; - mes "bother to talk to me?"; - mes "Leave, I don't deal with whimsical"; - mes "people."; - close; - } - if(@val > @max) { - mes "[Merchant]"; - mes "Uh oh, the number you entered"; - mes "seemed incorrect."; - mes "You'd better check how many red"; - mes "potions you can get."; - close; - } - delitem @need[@i],@amount[@i]*@val; - getitem 501,@val; - mes "[Merchant]"; - mes "There you go!"; - mes "Check the numbers again."; - mes "Thanks, it was a good deal."; - close; - case 2: - mes "[Merchant]"; - mes "Did you say I am ripping you off?!"; - mes "You got to know how ignorant that comment was!"; - mes "When you check the price of each item,"; - mes "I am doing a losing business."; - mes "If you don't want to do then, fine!"; - close; - case 3: - mes "[Merchant]"; - mes "Hah, no problem."; - mes "Bah!"; - close; - } -} - -payon.gat,200,134,5 script Merchant#5 85,{ - if(Weight*100/MaxWeight >= 90){ - mes "[Merchant]"; - mes "You will exceed your weight limit if you exchange for the Red Potions."; - close; -} - setarray @need,902,909; - setarray @amount,6,10; - mes "[Merchant]"; - mes "Good day!"; - mes "Do you have any collection items such as "+getitemname(@need[0])+"s ?"; - mes "...how about Jellopies?.."; - mes "Oh, yeah, I need those for"; - mes "something."; - next; - mes "[Merchant]"; - mes "Of course I am not asking you to give those for free!"; - mes "How about...if I give you 1 Red"; - mes "Potion for "+@amount[0]+" "+getitemname(@need[0])+"s or "+@amount[1]+" "+getitemname(@need[1])+"s???"; - - next; - switch (select("Sure!","Think you're ripping me off...","No,thanks")) { - case 1: - mes "[Merchant]"; - mes "So which item do you bring me ?"; - mes ""+getitemname(@need[0])+"s? Or "+getitemname(@need[1])+" ?"; - next; - set @i,select(""+getitemname(@need[0])+"",""+getitemname(@need[1])+"","Cancel")-1; - if(@i==2) { - mes "[Merchant]"; - mes "Sure, no problem."; - close; - } - set @have,countitem(@need[@i]); - if(@have < @amount[@i]) { - mes "[Merchant]"; - if(@i > 0) - mes "Hey, where are all those"; - mes getitemname(@need[@i])+"s you promised?"; - mes "Give me "+getitemname(@need[@i])+"s!"; - close; - } - mes "[Merchant]"; - mes "Okay, let me take a look at the stuff you brought"; - next; - set @max,@have / @amount[@i]; - mes "[Merchant]"; - mes "You have total "+@have+" "+getitemname(@need[@i])+"s..."; - mes "I can give you"; - mes "total "+@max+" Red Potion for those."; - next; - mes "[Merchant]"; - mes "What do you say? Deal?"; - next; - if(select("Deal.","No deal.")==2) { - mes "[Merchant]"; - mes "Bah~ whatever."; - mes "Bah!"; - close; - } - mes "[Merchant]"; - mes "You know the exact number of Red Potions"; - mes "you can receive for "+getitemname(@need[@i])+"s,don't you?"; - next; - mes "[Merchant]"; - mes "You can get Red Potions"; - mes "from minimum 1 to maximum 100 at once."; - mes "If you change your mind, enter '0'"; - mes "to cancel."; - while(1) { - next; - input @val; - if(@val<0 || @val>100) { - mes "[Merchant]"; - mes "Uh oh, the number you entered"; - mes "seemed incorrect."; - mes "You'd better check how many red"; - mes "potions you can get."; - continue; - } - break; - } - if(@val == 0) { - mes "[Merchant]"; - mes "What...how the hell did you even"; - mes "bother to talk to me?"; - mes "Leave, I don't deal with whimsical"; - mes "people."; - close; - } - if(@val > @max) { - mes "[Merchant]"; - mes "Uh oh, the number you entered"; - mes "seemed incorrect."; - mes "You'd better check how many red"; - mes "potions you can get."; - close; - } - delitem @need[@i],@amount[@i]*@val; - getitem 501,@val; - mes "[Merchant]"; - mes "There you go!"; - mes "Check the numbers again."; - mes "Thanks, it was a good deal."; - close; - case 2: - mes "[Merchant]"; - mes "Did you say I am ripping you off?!"; - mes "You got to know how ignorant that comment was!"; - mes "When you check the price of each item,"; - mes "I am doing a losing business."; - mes "If you don't want to do then, fine!"; - close; - case 3: - mes "[Merchant]"; - mes "Hah, no problem."; - mes "Bah!"; - close; - } -} \ No newline at end of file diff --git a/npc/scripts_athena.conf b/npc/scripts_athena.conf index f4302afc2..a1ff79a29 100644 --- a/npc/scripts_athena.conf +++ b/npc/scripts_athena.conf @@ -56,6 +56,8 @@ npc: npc/merchants/shuriken_maker.txt npc: npc/merchants/socket_enchant.txt npc: npc/merchants/ammo_boxes.txt npc: npc/merchants/ammo_dealer.txt +//Not properly tested yet +//npc: npc/merchants/novice_exchange.txt // -------------------------------------------------------------- // -------------------------- Airport --------------------------- npc: npc/airports/airships.txt @@ -107,7 +109,6 @@ npc: npc/quests/seals/sleipnir_seal.txt // npc: npc/quests/newgears/2004_headgears.txt npc: npc/quests/newgears/2005_headgears.txt -npc: npc/quests/novice_exchange.txt //it's iRO script, uncomment it if you want to soil your economics with cheap OBBs //npc: npc/quests/obb_quest.txt npc: npc/quests/cooking_quest.txt -- cgit v1.2.3-70-g09d2