diff options
author | euphyy <euphyy@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2012-12-24 17:30:14 +0000 |
---|---|---|
committer | euphyy <euphyy@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2012-12-24 17:30:14 +0000 |
commit | ea1a321438e75b66b3fc8148b6eaa41d049761dd (patch) | |
tree | 80dfac0c03ba915146e52cf10fe91c4b5558da9f /npc/merchants | |
parent | 90e5648a7865e72846c9a41754c4f71e89a1739d (diff) | |
download | hercules-ea1a321438e75b66b3fc8148b6eaa41d049761dd.tar.gz hercules-ea1a321438e75b66b3fc8148b6eaa41d049761dd.tar.bz2 hercules-ea1a321438e75b66b3fc8148b6eaa41d049761dd.tar.xz hercules-ea1a321438e75b66b3fc8148b6eaa41d049761dd.zip |
> Pre-Renewal fixes, major credits to Deep Forest for his detailed reports:
* Separated Renewal Alberta features with checkre() and new files, follow-up r16125 (bugreport:7041).
* Moved remaining Renewal shops out of pre-Renewal file, follow-up r16138 / r16104 (bugreport:7042).
* Moved Renewal refining features to a separate file, and made some changes, follow-up r16126 (bugreport:7043).
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@17042 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'npc/merchants')
-rw-r--r-- | npc/merchants/refine.txt | 631 | ||||
-rw-r--r-- | npc/merchants/shops.txt | 11 |
2 files changed, 27 insertions, 615 deletions
diff --git a/npc/merchants/refine.txt b/npc/merchants/refine.txt index 17acfc168..4433bbd66 100644 --- a/npc/merchants/refine.txt +++ b/npc/merchants/refine.txt @@ -3,7 +3,7 @@ //===== By: ================================================== //= Syrus22 (1.1) dafide18 (1.4) Skotlex (1.5) //===== Current Version: ===================================== -//= 3.1 +//= 3.2 //===== Compatible With: ===================================== //= Any Athena Version //===== Description: ========================================= @@ -58,6 +58,7 @@ //= 3.0 Updated several NPC names and locations. [Xantara] // Added WoE map Refiners. //= 3.1 Added the new refinement & Ore creation NPC's for +11 and above Refinement. [Masao] +//= 3.2 Moved some scripts to Renewal file, other minor changes. [Euphy] //============================================================ // Christopher: Geffen Blacksmith @@ -598,9 +599,8 @@ lhz_in02,282,20,7 script Fulerr 869,{ //============================================================ //= To allow auto safe refining/multiple refining set the //= second argument to '1' in the function call. -//= If you enable this function make sure you set the appropiate +x Level in your refine_db.txt -//= to 100 and adjust the .@safe Value in the Script to your desired max. Safe Level. -//= Otherwise it won't work . +//= If you enable this function, be sure to edit the value of +//= .@safe to the max safe refine in refine_db.txt as well. //============================================================ function script refinemain { set .@features,getarg(1); @@ -612,11 +612,9 @@ function script refinemain { setarray .@position$[1], "Head","Body","Left hand","Right hand","Robe","Shoes","Accessory 1","Accessory 2","Head 2","Head 3"; set .@menu$,""; - for( set .@i,1; .@i <= 10; set .@i,.@i+1 ) - { - if( getequipisequiped(.@i) ) + for(set .@i,1; .@i<=10; set .@i,.@i+1) { + if(getequipisequiped(.@i)) set .@menu$, .@menu$ + .@position$[.@i] + "-" + "[" + getequipname(.@i) + "]"; - set .@menu$, .@menu$ + ":"; } set .@part,select(.@menu$); @@ -625,7 +623,7 @@ function script refinemain { mes "You're not wearing"; mes "anything there that"; mes "I can refine."; - emotion 6; + emotion e_an; close; } //Check if the item is refinable... @@ -747,7 +745,7 @@ function script refinemain { } if(getequiprefinerycnt(.@part) != .@refinerycnt || getequipid(.@part) != .@refineitemid) { // hacker has changed the item mes "[" + getarg(0) + "]"; - Emotion e_an; + emotion e_an; mes "Wait a second..."; mes "Do you think I'm stupid?!"; mes "You switched the item while I wasn't looking! Get out of here!"; @@ -756,12 +754,7 @@ function script refinemain { if(getequippercentrefinery(.@part) <= rand(100)) { failedrefitem .@part; mes "[" + getarg(0) + "]"; - set .@emo,rand(1,5); - if (.@emo == 1) { - Emotion e_cash; - } else { - Emotion e_swt; - } + emotion (!rand(5))?e_cash:e_omg; set .@lose,rand(1,3); if (.@lose == 1) { mes "OH! MY GOD!"; @@ -782,7 +775,7 @@ function script refinemain { } mes "["+getarg(0)+"]"; successrefitem .@part; - Emotion e_heh; + emotion e_heh; set .@win,rand(1,3); if (.@win == 1) { mes "Perfect!"; @@ -808,10 +801,11 @@ function script refinemain { // New Refining Functions ======================== if(getequiprefinerycnt(.@part) < .@safe) { mes "[" + getarg(0) + "]"; - mes "I can refine this to the safe limit or a desired number of times... it's your choice..."; + mes "I can refine this to the safe limit or a desired number of times. It's your choice."; next; - set .@menu2,select("To the safe limit please.","I'll decide how many times.","I've changed my mind..."); - } else set .@menu2,2; + set .@menu2,select("To the safe limit, please.","I'll decide how many times.","I've changed my mind..."); + } else + set .@menu2,2; switch(.@menu2){ case 1: set .@refinecnt,.@safe - getequiprefinerycnt(.@part); @@ -819,7 +813,7 @@ function script refinemain { case 2: next; mes "[" + getarg(0) + "]"; - mes "So how many times would you like me to refine your item?"; + mes "How many times would you like me to refine your item?"; next; input .@refinecnt; set .@refinecheck,.@refinecnt + getequiprefinerycnt(.@part); @@ -835,7 +829,7 @@ function script refinemain { next; if(select("Yes...","No...") == 2){ mes "[" + getarg(0) + "]"; - mes "You said so..Hmm so be it..."; + mes "You said so... So be it."; close; } } @@ -843,7 +837,7 @@ function script refinemain { case 3: next; mes "[" + getarg(0) + "]"; - mes "You said so..Hmm so be it..."; + mes "You said so... So be it."; close; } set .@fullprice,.@price * .@refinecnt; @@ -852,7 +846,7 @@ function script refinemain { next; if(select("Yes","No...") == 2){ mes "[" + getarg(0) + "]"; - mes "You said so..Hmm so be it..."; + mes "You said so... So be it."; close; } if(countitem(.@material) < .@refinecnt || Zeny < .@fullprice) { @@ -865,32 +859,32 @@ function script refinemain { while(.@refinecnt){ if (getequipisequiped(.@part) == 0) { mes "[" + getarg(0) + "]"; - mes "Look here... you don't have any Items on..."; + mes "Look here... you don't have any items on..."; close; } if (getequipid(.@part) != .@refineitemid || (.@menu2 == 1 && getequippercentrefinery(.@part) < 100)) { mes "[" + getarg(0) + "]"; - mes "Clan... No, but Did you imagine I could be so stupid !?!"; - mes "You have changed it..."; - mes "Go out before I stun you with my Hammer!!!"; + mes "Clang... No, but did you imagine I could be so stupid?!"; + mes "You changed it..."; + mes "Get out before I stun you with my Hammer!!"; close; } mes "Clang, clang!!!"; if(.@menu2 == 2 && getequippercentrefinery(.@part) <= rand(100)) { failedrefitem .@part; - emotion 23; + emotion e_omg; mes "[" + getarg(0) + "]"; mes "WAHHHH!!! I'm so sorry... I warned you this could happen..."; set .@refinecnt,.@refinecnt - 1; if(.@refinecnt == 0) close; - mes "Here's the unused Zeny and Material back..."; + mes "Here's the unused Zeny and materials back..."; getitem .@material,.@refinecnt; set .@fullprice,.@refinecnt * .@price; set Zeny,Zeny + .@fullprice; close; } successrefitem .@part; - emotion 21; + emotion e_no1; set .@refinecnt,.@refinecnt - 1; next; } @@ -1270,579 +1264,4 @@ function script repairmain { mes "items to repair."; close; } -} - -// +11 and above Weapon/Armor Refiners -//============================================================ -prt_in,90,72,5 script Bestry#prt 826,{ - callfunc "refinenew","Bestry",0,0; - end; -} -morocc_in,64,41,5 script Bestry#moc 826,{ - callfunc "refinenew","Bestry",0,0; - end; -} -payon_in01,18,132,3 script Bestry#pay 826,{ - callfunc "refinenew","Bestry",0,0; - end; -} - -//===================================================================================== -// +11 and above Weapon/Armor Function -//===================================================================================== -//= To allow auto safe refining/multiple refining set the -//= second argument to '1' in the function call. -//= If you enable this function make sure you set the appropiate +x Level in your refine_db.txt -//= to 100 and adjust the .@safe Value in the Script to your desired max. Safe Level. -//= Otherwise it won't work . -//= -//= In the official script the NPC uses an new Command which is called 'GetExdEquipIsSuccessRefinery', -//= this command seems to generate a random number between 1 and 3 to decide either of -//= the following: -//= 1: Success -//= 2: Downgrade -//= 3: Failure -//= -//= If you want to enable that feature just set the third argument to '1' in the function call. -//= Otherwise it will use the % chance in your refine_db.txt . -//= Side Note: Current values for +11 and above upgrading in the refine_db.txt are custom. -//===================================================================================== - -function script refinenew { - - mes "["+ getarg(0) +"]"; - mes "I am the best Blacksmith ever!"; - mes "I don't work with normal, boring items."; - mes "But only with items that are level 10 or higher!"; - next; - mes "["+ getarg(0) +"]"; - mes "Anyway, you may use my services if your item is lv 10 or higher."; - mes "What do you want to have refined?"; - next; - setarray .@position$[1],"Head","Body","Left hand","Right hand","Robe","Shoes","Accessory 1","Accessory 2","Head 2","Head 3"; - set .@menu$,""; - for( set .@i,1; .@i <= 10; set .@i,.@i+1 ) - { - if( getequipisequiped(.@i) ) - set .@menu$, .@menu$ + .@position$[.@i] + "-" + "[" + getequipname(.@i) + "]"; - - set .@menu$, .@menu$ + ":"; - } - set .@part,select(.@menu$); - if(!getequipisequiped(.@part)) { - mes "[" + getarg(0) + "]"; - mes "You're not wearing"; - mes "anything there that"; - mes "I can refine."; - emotion e_an; - close; - } - //Check if the item is refinable... - if(!getequipisenableref(.@part)) { - mes "[" + getarg(0) + "]"; - mes "I don't think I can"; - mes "refine this item at all..."; - close; - } - //Check if the item is identified... (Don't know why this is in here... but kept it anyway) - if(!getequipisidentify(.@part)) { - mes "[" + getarg(0) + "]"; - mes "You can't refine this"; - mes "if you haven't appraised"; - mes "it first. Make sure your"; - mes "stuff is identified before"; - mes "I can refine it."; - close; - } - //Check to see if the items is at least +10 - if(getequiprefinerycnt(.@part) < 10) { - mes "["+ getarg(0) +"]"; - mes "I said I don't work with Equipment under lv. 10."; - close; - } - if(getequiprefinerycnt(.@part) >= 20) { - mes "["+ getarg(0) +"]"; - mes "I can't refine this"; - mes "any more. This is as"; - mes "refined as it gets!"; - close; - } - set .@refineitemid, getequipid(.@part); // save id of the item - set .@refinerycnt, getequiprefinerycnt(.@part); //save refinery count - if ((getequipweaponlv(.@part) >= 1) && (getequipweaponlv(.@part) <= 4)) { - set .@material,6224; - set .@price,100000; - set .@safe,10; - mes "["+ getarg(0) +"]"; - mes "Hmm a weapon, is that ok?"; - mes "If you want to refine this weapon,"; - mes "I will need 1 ^003366Bradium^000000 and 100,000 zeny."; - mes "Are you sure you want to continue?"; - } else { - set .@material,6223; - set .@price,100000; - set .@safe,10; - mes "["+ getarg(0) +"]"; - mes "Hmm an armor, is that ok?"; - mes "If you want to refine this armor,"; - mes "I will need 1 ^003366Carnium^000000 and 100,000 zeny."; - mes "Are you sure you want to continue?"; - } - next; - if(select("Yes:No") == 2){ - mes "["+ getarg(0) +"]"; - mes "Well, no challenge is one way.."; - mes "No risk.. that could be wise."; - close; - } - if(getarg(1) != 1) { - if ((getequipweaponlv(.@part) >= 1) && (getequipweaponlv(.@part) <= 4)) { - mes "["+ getarg(0) +"]"; - mes "This weapon already has been refined serveral times."; - mes "It could be destroyed if you try more."; - mes "It won't break 100%, but is has a small chance."; - next; - mes "["+ getarg(0) +"]"; - mes "You could have the upgrade level of the weapon decreased,"; - mes "or if it breaks, you will lose ^FF0000any cards^000000 or special properties added to it."; - } else { - mes "["+ getarg(0) +"]"; - mes "This armor already has been refined serveral times."; - mes "It could be destroyed if you try more."; - mes "It won't break 100%, but is has a small chance."; - next; - mes "["+ getarg(0) +"]"; - mes "You could have the upgrade level of the armor decreased,"; - mes "or if it breaks, you will lose ^FF0000any cards^000000 or special properties added to it."; - } - next; - mes "["+ getarg(0) +"]"; - mes "Do you want me to refine it?"; - mes "I think I gave you enough warnings."; - next; - switch (select("Yes.:No.")) { - case 1: - break; - case 2: - mes "["+ getarg(0) +"]"; - mes "Well, no challenge is one way.."; - mes "No risk.. that could be wise."; - close; - } - if(countitem(.@material) < 1 || Zeny < .@price) { - mes "["+ getarg(0) +"]"; - mes "Hm, it seems you don't have enough materials or money."; - mes "Please check it out."; - close; - } - set Zeny,Zeny - .@price; - delitem .@material,1; - if(getequipisequiped(.@part) == 0) { // hacker has removed the item (not changed, why?) - mes "[" + getarg(0) + "]"; - mes "Look here... you don't have any Items on..."; - close; - } - if(getequiprefinerycnt(.@part) != .@refinerycnt || getequipid(.@part) != .@refineitemid) { // hacker has changed the item - mes "[" + getarg(0) + "]"; - Emotion e_an; - mes "Wait a second..."; - mes "Do you think I'm stupid?!"; - mes "You switched the item while I wasn't looking! Get out of here!"; - close; - } - if(getarg(2) == 1){ - set .@rand,rand(1,3); - if (.@rand == 1) { - mes "Clang! Clang! Clang! Clang!"; - successrefitem .@part; - next; - emotion e_no1; - mes "["+ getarg(0) +"]"; - mes "Good! Succes!!!"; - mes "I am the best Blacksmith."; - close; - } - if (.@rand == 2) { - mes "["+ getarg(0) +"]"; - mes "Clang! Clang! Clang! Clang!"; - downrefitem .@part; - next; - set .@emo, rand(1,5); - if (.@emo == 1) { - emotion e_cash; - } - else { - emotion e_omg; - } - mes "["+ getarg(0) +"]"; - mes "Ahhh!!!"; - next; - mes "["+ getarg(0) +"]"; - mes "Oh my!"; - mes "The upgrade level has dropped..."; - mes "There could've been made an mistake even though I am the best ever."; - mes "It was out of my hands."; - next; - mes "["+ getarg(0) +"]"; - mes "I will do a better job next time! Don't worry!"; - close; - } - mes "["+ getarg(0) +"]"; - mes "Clang! Clang! Clang!"; - failedrefitem .@part; - next; - set .@emo, rand(1,5); - if (.@emo == 1) { - emotion e_cash; - } else { - emotion e_omg; - } - mes "["+ getarg(0) +"]"; - mes "Hmmm!"; - next; - mes "["+ getarg(0) +"]"; - mes "Oh my! I've failed to refine stuff..."; - mes "I didn't mean it!"; - mes "There could've been made an mistake even though I am the best ever."; - mes "It was out of my hands."; - next; - mes "["+ getarg(0) +"]"; - mes "I will do a better job next time! Don't worry!"; - close; - } - set .@rand,rand(100); - if (getequippercentrefinery(.@part) > .@rand) { - mes "Clang! Clang! Clang! Clang!"; - successrefitem .@part; - next; - emotion e_no1; - mes "["+ getarg(0) +"]"; - mes "Good! Succes!!!"; - mes "I am the best Blacksmith."; - close; - } - if (getequippercentrefinery(.@part) < .@rand) { - mes "["+ getarg(0) +"]"; - mes "Clang! Clang! Clang! Clang!"; - downrefitem .@part; - next; - set .@emo, rand(1,5); - if (.@emo == 1) { - emotion e_cash; - } else { - emotion e_omg; - } - mes "["+ getarg(0) +"]"; - mes "Ahhh!!!"; - next; - mes "["+ getarg(0) +"]"; - mes "Oh my!"; - mes "The upgrade level has dropped..."; - mes "There could've been made an mistake even though I am the best ever."; - mes "It was out of my hands."; - next; - mes "["+ getarg(0) +"]"; - mes "I will do a better job next time! Don't worry!"; - close; - } - mes "["+ getarg(0) +"]"; - mes "Clang! Clang! Clang!"; - failedrefitem .@part; - next; - set .@emo, rand(1,5); - if (.@emo == 1) { - emotion e_cash; - } else { - emotion e_omg; - } - mes "["+ getarg(0) +"]"; - mes "Hmmm!"; - next; - mes "["+ getarg(0) +"]"; - mes "Oh my! I've failed to refine stuff..."; - mes "I didn't mean it!"; - mes "There could've been made an mistake even though I am the best ever."; - mes "It was out of my hands."; - next; - mes "["+ getarg(0) +"]"; - mes "I will do a better job next time! Don't worry!"; - close; - } -// New +11 and above Refining Functions ======================== - if(getequiprefinerycnt(.@part) < .@safe) { - mes "[" + getarg(0) + "]"; - mes "I can refine this to the safe limit or a desired number of times... it's your choice..."; - next; - set .@menu2,select("To the safe limit please.","I'll decide how many times.","I've changed my mind..."); - } else { - set .@menu2,2; - } - switch(.@menu2){ - case 1: - set .@refinecnt,.@safe - getequiprefinerycnt(.@part); - break; - case 2: - next; - mes "[" + getarg(0) + "]"; - mes "So how many times would you like me to refine your item?"; - next; - input .@refinecnt; - set .@refinecheck,.@refinecnt + getequiprefinerycnt(.@part); - if (.@refinecnt < 1 || .@refinecheck > 10) { - mes "[" + getarg(0) + "]"; - mes "I can't refine this item that many times."; - close; - } - if(.@refinecheck > .@safe) { - set .@refinecheck,.@refinecheck - .@safe; - mes "[" + getarg(0) + "]"; - mes "This will try to refine the equipment " + .@refinecheck + " times past the safe limit. Your equipment may be destroyed... is that ok?"; - next; - if(select("Yes...","No...") == 2){ - mes "[" + getarg(0) + "]"; - mes "You said so..Hmm so be it..."; - close; - } - } - break; - case 3: - next; - mes "[" + getarg(0) + "]"; - mes "You said so..Hmm so be it..."; - close; - } - set .@fullprice,.@price * .@refinecnt; - mes "[" + getarg(0) + "]"; - mes "That will cost you " + .@refinecnt + " " + getitemname(.@material) + " and " + .@fullprice + " Zeny. Is that ok?"; - next; - if(select("Yes","No...") == 2){ - mes "[" + getarg(0) + "]"; - mes "You said so..Hmm so be it..."; - close; - } - if(countitem(.@material) < .@refinecnt || Zeny < .@fullprice) { - mes "[" + getarg(0) + "]"; - mes "Is that all you got? Unfortunately I can't work for you at a lower price. Try putting yourself in my shoes."; - close; - } - set Zeny,Zeny - .@fullprice; - delitem .@material,.@refinecnt; - while(.@refinecnt){ - if (getequipisequiped(.@part) == 0) { - mes "[" + getarg(0) + "]"; - mes "Look here... you don't have any Items on..."; - close; - } - if (getequipid(.@part) != .@refineitemid || (.@menu2 == 1 && getequippercentrefinery(.@part) < 100)) { - mes "[" + getarg(0) + "]"; - mes "Clan... No, but Did you imagine I could be so stupid !?!"; - mes "You have changed it..."; - mes "Go out before I stun you with my Hammer!!!"; - close; - } - if(getarg(2) == 1){ - set .@rand,rand(1,3); - if (.@rand == 1) { - mes "Clang! Clang! Clang! Clang!"; - successrefitem .@part; - next; - emotion e_no1; - mes "["+ getarg(0) +"]"; - mes "Good! Succes!!!"; - mes "I am the best Blacksmith."; - close; - } - if (.@rand == 2) { - mes "["+ getarg(0) +"]"; - mes "Clang! Clang! Clang! Clang!"; - downrefitem .@part; - next; - set .@emo, rand(1,5); - if (.@emo == 1) { - emotion e_cash; - } - else { - emotion e_omg; - } - mes "["+ getarg(0) +"]"; - mes "Ahhh!!!"; - next; - mes "["+ getarg(0) +"]"; - mes "Oh my!"; - mes "The upgrade level has dropped..."; - mes "There could've been made an mistake even though I am the best ever."; - mes "It was out of my hands."; - next; - mes "["+ getarg(0) +"]"; - mes "I will do a better job next time! Don't worry!"; - close; - } - mes "["+ getarg(0) +"]"; - mes "Clang! Clang! Clang!"; - failedrefitem .@part; - next; - set .@emo, rand(1,5); - if (.@emo == 1) { - emotion e_cash; - } else { - emotion e_omg; - } - mes "["+ getarg(0) +"]"; - mes "Hmmm!"; - next; - mes "["+ getarg(0) +"]"; - mes "Oh my! I've failed to refine stuff..."; - mes "I didn't mean it!"; - mes "There could've been made an mistake even though I am the best ever."; - mes "It was out of my hands."; - next; - mes "["+ getarg(0) +"]"; - mes "I will do a better job next time! Don't worry!"; - close; - } - set .@rand,rand(100); - if (getequippercentrefinery(.@part) > .@rand) { - mes "Clang! Clang! Clang! Clang!"; - successrefitem .@part; - next; - emotion e_no1; - mes "["+ getarg(0) +"]"; - mes "Good! Succes!!!"; - mes "I am the best Blacksmith."; - close; - } - if (getequippercentrefinery(.@part) < .@rand) { - mes "["+ getarg(0) +"]"; - mes "Clang! Clang! Clang! Clang!"; - downrefitem .@part; - next; - set .@emo, rand(1,5); - if (.@emo == 1) { - emotion e_cash; - } else { - emotion e_omg; - } - mes "["+ getarg(0) +"]"; - mes "Ahhh!!!"; - next; - mes "["+ getarg(0) +"]"; - mes "Oh my!"; - mes "The upgrade level has dropped..."; - mes "There could've been made an mistake even though I am the best ever."; - mes "It was out of my hands."; - next; - mes "["+ getarg(0) +"]"; - mes "I will do a better job next time! Don't worry!"; - close; - } - mes "["+ getarg(0) +"]"; - mes "Clang! Clang! Clang!"; - failedrefitem .@part; - next; - set .@emo, rand(1,5); - if (.@emo == 1) { - emotion e_cash; - } else { - emotion e_omg; - } - mes "["+ getarg(0) +"]"; - mes "Hmmm!"; - next; - mes "["+ getarg(0) +"]"; - mes "Oh my! I've failed to refine stuff..."; - mes "I didn't mean it!"; - mes "There could've been made an mistake even though I am the best ever."; - mes "It was out of my hands."; - next; - mes "["+ getarg(0) +"]"; - mes "I will do a better job next time! Don't worry!"; - close; - } - mes "[" + getarg(0) + "]"; - mes "All finished... Come again soon."; - close; -} - -// Ori/Elu to Carnium/Bradium Refiners -//============================================================ -prt_in,85,71,5 script Austry#prt 826,{ - callfunc "oreref","Austry"; - end; -} -payon_in01,14,125,5 script Austry#pay 826,{ - callfunc "oreref","Austry"; - end; -} -morocc_in,60,38,5 script Austry#moc 826,{ - callfunc "oreref","Austry"; - end; -} - -// Ori/Elu to Carnium/Bradium Function -//============================================================ - -function script oreref { - mes "["+ getarg(0) +"]"; - mes "If you bring me 3"; - mes "Oridecon or Elunium"; - mes "I can exchange them for"; - mes "Bradium or Carnium."; - mes "Just give me 50,000z."; - next; - switch (select("Oridecon to Bradium.:Elunium to Carnium.:Purified Bradium to Carnium.:No thanks.")) { - case 1: - if ((countitem(984) > 2) && (Zeny > 49999)) { - delitem 984,3; //Oridecon - set Zeny, Zeny - 50000; - getitem 6224,1; //Bradium - mes "["+ getarg(0) +"]"; - mes "Ok! Here is your Bradium."; - mes "Take it and use it well."; - close; - } - mes "["+ getarg(0) +"]"; - mes "You better not be trying"; - mes "to cheat me because you"; - mes "don't have enough zeny"; - mes "or Oridecon."; - close; - case 2: - if ((countitem(985) > 2) && (Zeny > 49999)) { - delitem 985,3; //Elunium - set Zeny, Zeny - 50000; - getitem 6223,1; //Carnium - mes "["+ getarg(0) +"]"; - mes "Ok! Here is your Carnium."; - mes "Take it and use it well."; - close; - } - mes "["+ getarg(0) +"]"; - mes "You better not be trying"; - mes "to cheat me because you"; - mes "don't have enough zeny"; - mes "or Elunium."; - close; - case 3: - if ((countitem(6090) > 0) && (Zeny > 49999)) { - delitem 6090,1; //Purified_Bradium - set Zeny, Zeny - 50000; - getitem 6223,1; //Carnium - mes "["+ getarg(0) +"]"; - mes "Refining with Purified Bradium"; - mes "is a little expensive. I can"; - mes "trade it for some Carnium."; - mes "Take it and use it well."; - close; - } - mes "["+ getarg(0) +"]"; - mes "You better not be trying"; - mes "to cheat me because you"; - mes "don't have enough zeny"; - mes "or Purified Bradium."; - close; - case 4: - mes "["+ getarg(0) +"]"; - mes "Hmm..."; - close; - } }
\ No newline at end of file diff --git a/npc/merchants/shops.txt b/npc/merchants/shops.txt index db88588cb..a06ba1ad2 100644 --- a/npc/merchants/shops.txt +++ b/npc/merchants/shops.txt @@ -3,7 +3,7 @@ //===== By: ================================================== //= rAthena Dev Team //===== Current Version: ===================================== -//= 3.1 +//= 3.3 //===== Compatible With: ===================================== //= rAthena 1.0+ //===== Description: ========================================= @@ -36,6 +36,7 @@ //= 3.0 Added all new Shops which were available in the latest available official files. [Masao] //= 3.1 Moved some merchants to a separate renewal file. [Kenpachi] //= 3.2 Added Missing Items to the pet Groomers in prontera, payon, and yuno. BugReport:6680[Spre] +//= 3.3 Moved more shops to Renewal file. [Euphy] //============================================================ //======================================================= @@ -93,8 +94,6 @@ comodo,296,125,4 shop Souvenir Vendor#cmd 101,965:-1,964:-1 cmd_fild07,257,126,5 shop Tool Dealer#cmd2 83,1770:-1,501:-1,502:-1,503:-1,504:-1,645:-1,656:-1,601:-1,602:-1,611:-1,1065:-1 cmd_fild07,250,98,2 shop Weapon Dealer#cmd2 49,1401:-1,1404:-1,1407:-1,1451:-1,1454:-1,1457:-1,1460:-1,1463:-1,1410:-1 cmd_fild07,277,85,4 shop Armor Dealer#cmd2 101,2226:-1,2228:-1,2103:-1,2105:-1,2405:-1,2503:-1,2505:-1,2305:-1,2321:-1,2307:-1,2309:-1,2335:-1,2312:-1,2314:-1,2316:-1 -comodo,106,213,5 shop Tropic Fruit Dealer 724,6258:-1 -comodo,196,162,3 shop Harive#candy 479,11513:-1,6144:-1 //======================================================= // Einbroch @@ -164,7 +163,6 @@ yuno_in01,25,34,5 shop Tool Dealer#yuno2 83,1750:-1,611:-1,501:-1,502:-1,503:-1, yuno_in01,103,35,2 shop Weapon Dealer#yuno 49,1750:-1,1751:-1,1101:-1,1701:-1,1201:-1,1204:-1,1207:-1,1210:-1,1213:-1,1216:-1,1601:-1,1604:-1,1607:-1,1610:-1 yuno_in01,112,26,4 shop Armor Dealer#yuno 101,2628:-1,2101:-1,2107:-1,2401:-1,2501:-1,2230:-1,2301:-1,2303:-1,2305:-1,2321:-1,2332:-1 yuno_in03,176,22,3 shop Scroll Merchant#yuno03 89,7433:-1 //Temp shop in Yuno that sells Blank Scrolls -s_atelier,114,117,1 shop Part-Timer#sc_yuno 92,6123:-1,6120:-1 //======================================================= // Lighthalzen @@ -174,7 +172,6 @@ lighthalzen,112,44,0 shop Flower Girl#lhz 90,712:-1,744:-1,748:-1 lighthalzen,124,129,0 shop Vegetable Gardener#lhz 91,515:-1,516:-1,535:-1 lighthalzen,220,122,3 shop Vendor from Milk Ranch#l 90,519:-1 lighthalzen,222,191,4 shop Pet Groomer#lhz 125,537:-1,643:-1,10013:-1,10014:-1,554:-1,6113:-1,6114:-1,6115:-1 -lighthalzen,337,240,4 shop Trap Specialist#lhz 66,7940:-1,12341:-1 lhz_in02,286,95,4 shop Beginner's Merchant#lhz 62,5112:-1,2416:-1,2113:-1,2512:-1 lhz_in02,271,99,5 shop Armor Dealer#lhz 851,2101:-1,2103:-1,2403:-1,2405:-1,2503:-1,2321:-1,2314:-1,2309:-1,2335:-1,2628:-1 lhz_in02,276,99,4 shop Weapon Dealer#lhz 851,1201:-1,1207:-1,1216:-1,1107:-1,1122:-1,1116:-1,1154:-1,1407:-1,1457:-1,1354:-1,1519:-1,13003:-1 @@ -254,7 +251,6 @@ payon_in01,5,49,7 shop Tool Dealer#pay 88,1750:-1,611:-1,501:-1,502:-1,503:-1,50 payon_in02,87,34,0 shop Tool Dealer#pay2 75,1750:-1,1751:-1,611:-1,501:-1,502:-1,503:-1,504:-1,506:-1,645:-1,656:-1,601:-1,602:-1,1065:-1 payon,159,96,4 shop Tool Dealer#pay3 88,1750:-1,501:-1,645:-1,601:-1,602:-1 payon,177,131,4 shop Pet Groomer#pay 124,537:-1,643:-1,10013:-1,10014:-1,554:-1,6114:-1,6113:-1,6110:-1,6115:-1,6100:-1,6098:-1,6112:-1,6104:-1,6108:-1,6111:-1,6095:-1,6099:-1,6096:-1,6097:-1,6094:-1 -payon,123,109,4 shop Trap Specialist#pay 66,7940:-1,12341:-1 //======================================================= // Prontera @@ -268,7 +264,6 @@ prontera,105,87,0 shop Gift Merchant#prt 91,734:-1,735:-1,736:-1,737:-1,746:-1 prontera,218,211,4 shop Pet Groomer#prt 125,537:-1,643:-1,10013:-1,10014:-1,554:-1,6114:-1,6113:-1,6110:-1,6115:-1,6100:-1,6098:-1,6112:-1,6104:-1,6108:-1,6111:-1,6095:-1,6099:-1,6096:-1,6097:-1,6094:-1 prontera,248,153,0 shop Doll Supplier#prt 85,740:-1,741:-1,742:-1 prontera,48,58,0 shop Vegetable Gardener#prt 91,515:-1,516:-1,535:-1 -//prontera,104,88,5 shop Stuff Gimme 880,616:-1 prt_church,108,124,4 shop Nun#prt 79,2608:-1,2216:-1,5092:-1,2323:-1,2325:-1,1501:-1,1504:-1,1507:-1,1510:-1,1513:-1,1519:-1 prt_fild05,290,221,2 shop Tool Dealer#prt 83,1750:-1,611:-1,501:-1,502:-1,506:-1,645:-1,601:-1,602:-1 prt_in,211,169,0 shop Wedding Shop Dealer#prt 71,744:-1,745:-1,2338:-1,2206:-1,7170:-1 @@ -277,7 +272,6 @@ prt_in,172,130,0 shop Weapon Dealer#prt 54,1750:-1,1751:-1,1701:-1,1201:-1,1204: prt_in,172,132,0 shop Armor Dealer#prt 48,2101:-1,2103:-1,2401:-1,2403:-1,2501:-1,2503:-1,2220:-1,2226:-1,2301:-1,2303:-1,2305:-1,2328:-1,2307:-1,2309:-1,2312:-1,2314:-1,2628:-1,2627:-1 prt_in,171,140,0 shop Weapon Dealer#prt2 47,1401:-1,1404:-1,1407:-1,1451:-1,1454:-1,1457:-1,1460:-1,1463:-1,1410:-1 prt_in,165,140,4 shop Weapon Dealer#prt3 66,1146:-1,1245:-1 -prt_in,109,68,4 shop Trap Specialist#prt 66,7940:-1,12341:-1 prt_monk,135,263,5 shop Weapon Dealer#prt4 726,1801:-1,1803:-1,1805:-1 //======================================================= @@ -287,7 +281,6 @@ ra_in01,175,364,3 shop Armor Dealer#ra 919,2101:-1,2103:-1,2403:-1,2405:-1,2503: ra_in01,257,269,3 shop Tool Dealer#ra 919,501:-1,502:-1,503:-1,504:-1,506:-1,645:-1,656:-1,601:-1,602:-1,611:-1,1065:-1,610:-1 ra_in01,176,389,3 shop Weapon Dealer#ra 931,1201:-1,1207:-1,1216:-1,1107:-1,1122:-1,1116:-1,1154:-1,1407:-1,1457:-1,1354:-1,1519:-1,13003:-1,1601:-1,1604:-1,1607:-1 ra_in01,254,300,3 shop Fruit Gardener#ra 931,512:-1,513:-1 -ra_in01,263,281,4 shop Trap Specialist#ra 66,7940:-1,12341:-1 rachel,65,80,1 shop Vegetable Gardener#ra 919,515:-1,535:-1,516:-1 //======================================================= |