浏览代码

* Script updates.
- Updated dialogue for advanced and Renewal refiners.
- Added an extra check in the main refiner scripts to prevent empty menus from appearing.
- Renamed Renewal NPCs to "Vestri" and "Austri".
- Slightly updated dialogue for the Catalog Magician script.

Signed-off-by: Euphy <euphy@rathena.org>

Euphy 11 年之前
父节点
当前提交
e5d9fc8fa5
共有 4 个文件被更改,包括 216 次插入200 次删除
  1. 78 71
      npc/merchants/advanced_refiner.txt
  2. 19 7
      npc/merchants/refine.txt
  3. 20 21
      npc/re/merchants/catalog.txt
  4. 99 101
      npc/re/merchants/refine.txt

+ 78 - 71
npc/merchants/advanced_refiner.txt

@@ -3,7 +3,7 @@
 //===== By: ==================================================
 //===== By: ==================================================
 //= L0ne_W0lf
 //= L0ne_W0lf
 //===== Current Version: =====================================
 //===== Current Version: =====================================
-//= 1.4b
+//= 1.5
 //===== Compatible With: =====================================
 //===== Compatible With: =====================================
 //= rAthena SVN
 //= rAthena SVN
 //===== Description: =========================================
 //===== Description: =========================================
@@ -24,6 +24,7 @@
 //= 1.4 Removed unnecessary dialogs [Zephyrus]
 //= 1.4 Removed unnecessary dialogs [Zephyrus]
 //= 1.4a Added 'disable_items' command. [Euphy]
 //= 1.4a Added 'disable_items' command. [Euphy]
 //= 1.4b Fixed coordinates. [Euphy]
 //= 1.4b Fixed coordinates. [Euphy]
+//= 1.5 Some official script updates. [Euphy]
 //============================================================
 //============================================================
 
 
 payon,157,146,6	script	Suhnbi#cash	85,{
 payon,157,146,6	script	Suhnbi#cash	85,{
@@ -34,37 +35,39 @@ payon,157,146,6	script	Suhnbi#cash	85,{
 	mes "armor and equipment, so let me";
 	mes "armor and equipment, so let me";
 	mes "know what you want to refine.";
 	mes "know what you want to refine.";
 	next;
 	next;
+
 	setarray .@position$[1], "Head","Body","Left hand","Right hand","Robe","Shoes","Accessory 1","Accessory 2","Head 2","Head 3";
 	setarray .@position$[1], "Head","Body","Left hand","Right hand","Robe","Shoes","Accessory 1","Accessory 2","Head 2","Head 3";
 	set .@menu$,"";
 	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$ + .@position$[.@i] + "-" + "[" + getequipname(.@i) + "]";
-
+			set .@equipped,1;
+		}
 		set .@menu$, .@menu$ + ":";
 		set .@menu$, .@menu$ + ":";
 	}
 	}
-	set .@part,select(.@menu$);
-
-	if( !getequipisequiped(.@part) )
+	if (.@equipped == 0) {
+		mes "[Suhnbi]";
+		mes "I don't think I can refine any items you have...";
 		close;
 		close;
+	}
+	set .@part, select(.@menu$);
 
 
-	if( !getequipisenableref(.@part) )
-	{
+	if (!getequipisequiped(.@part)) //custom check
+		close;
+	if (!getequipisenableref(.@part)) {
 		mes "[Suhnbi]";
 		mes "[Suhnbi]";
-		mes "I don't think I can refine this item at all.";
+		mes "Go find another Blacksmith. You can't refine this thing.";
 		close;
 		close;
 	}
 	}
-	if( getequiprefinerycnt(.@part) >= 10 )
-	{
+	if (getequiprefinerycnt(.@part) >= 10) {
 		mes "[Suhnbi]";
 		mes "[Suhnbi]";
-		mes "This item cannot be refined because it has already reached its maximum level...";
+		mes "Hmm... someone perfected this already. I don't think I can work on it further.";
 		close;
 		close;
 	}
 	}
 
 
 	// Make sure you have the neccessary items and Zeny to refine your items
 	// Make sure you have the neccessary items and Zeny to refine your items
 	// Determines chance of failure and verifies that you want to continue.
 	// Determines chance of failure and verifies that you want to continue.
-	switch( getequipweaponlv(.@part) )
-	{
+	switch(getequipweaponlv(.@part)) {
 		case 1: callsub S_RefineValidate,1,7620,50,.@part; break;
 		case 1: callsub S_RefineValidate,1,7620,50,.@part; break;
 		case 2: callsub S_RefineValidate,2,7620,200,.@part; break;
 		case 2: callsub S_RefineValidate,2,7620,200,.@part; break;
 		case 3: callsub S_RefineValidate,3,7620,5000,.@part; break;
 		case 3: callsub S_RefineValidate,3,7620,5000,.@part; break;
@@ -72,85 +75,89 @@ payon,157,146,6	script	Suhnbi#cash	85,{
 		default: callsub S_RefineValidate,0,7619,2000,.@part; break;
 		default: callsub S_RefineValidate,0,7619,2000,.@part; break;
 	}
 	}
 
 
-	if( getequippercentrefinery(.@part) > rand(100) || getequippercentrefinery(.@part) > rand(100) )
-	{
-		mes "[Suhnbi]";
-		mes "Clink! Clank! Clunk!";
-		SuccessRefItem .@part;
+	mes "[Suhnbi]";
+	mes "Clang! Clang! Clang!";
+	if (getequippercentrefinery(.@part) > rand(100) || getequippercentrefinery(.@part) > rand(100)) {
+		successrefitem .@part;
 		next;
 		next;
 		emotion e_no1;
 		emotion e_no1;
 		mes "[Suhnbi]";
 		mes "[Suhnbi]";
-		mes "Here you are! It's done.";
-		mes "It's been a while since I've made such a fine weapon. You must be happy because it has become stronger!";
+		mes "There you go! It's done.";
+		mes "It's been a while since I've made such a fine "+((getequipweaponlv(.@part))?"weapon":"armor")+". You must be happy because it has become stronger!";
 		close;
 		close;
 	}
 	}
-	mes "[Suhnbi]";
-	mes "Clink! Clank! Clunk!";
-	FailedRefItem .@part;
+	failedrefitem .@part;
 	next;
 	next;
-	if (rand(5) == 1){
-		emotion e_cash;
-	} else {
-		emotion e_omg;
-	}
+	emotion (!rand(5))?e_cash:e_omg;
 	mes "[Suhnbi]";
 	mes "[Suhnbi]";
-	mes "Cough!!!!";
+	mes "Uuuuuuuuuummmmmph!!!";
 	next;
 	next;
 	mes "[Suhnbi]";
 	mes "[Suhnbi]";
-	mes "Cough...Cough..";
-	mes "What a shame...";
-	mes "Your equipment broke during the refining process. I had told you earlier this might happen!";
+	mes "...";
+	mes ".....";
+	mes ".......Huhuhuhuhu~";
+	mes "........It was your choice and my ability, no regret.";
 	close;
 	close;
 
 
 S_RefineValidate:
 S_RefineValidate:
 	mes "[Suhnbi]";
 	mes "[Suhnbi]";
 	if (getarg(0))
 	if (getarg(0))
-		mes "A level " + getarg(0) + " weapon...";
-	mes "To refine this I need one ^ff9999" + getitemname(getarg(1)) + "^000000 and a service fee of " + getarg(2) + " Zeny.";
-	mes "Do you wish to continue?";
+		mes "You want to refine a level " + getarg(0) + " weapon?";
+	mes "To refine that, you'll need to have one ^ff9999" + getitemname(getarg(1)) + "^000000 and " + getarg(2) + " zeny.";
+	mes "Would you like to continue?";
 	next;
 	next;
-	if( select("Yes:No") == 1 )
-	{
-		if( getequippercentrefinery(getarg(3)) < 100 )
-		{
-			mes "[Suhnbi]";
-			mes "Wow!!";
-			mes "This weapon, probably";
-			mes "looks like it's been refined...";
-			mes "many times...";
-			mes "It may break if";
-			mes "you refine it again.";
-			next;
-			mes "And if it breaks,";
-			mes "you can't use it anymore!";
-			mes "All the cards in it and the";
-			mes "properties";
-			mes "^ff0000will be lost^000000!!";
-			mes "^ff0000 besides, the equipment will break!^000000";
-			mes " ";
-			mes "Are you sure you still want to continue?";
-			next;
-			if( select("Yes:No") == 2 )
-			{
+	if(select("Yes:No") == 1) {
+		if (getequippercentrefinery(getarg(3)) < 100) {
+			if (getarg(0)) {
+				mes "[Suhnbi]";
+				mes "Wow!!";
+				mes "This weapon probably";
+				mes "looks like it's been refined...";
+				mes "many times...";
+				mes "It may break if";
+				mes "you refine it again.";
+				next;
+				mes "And if it breaks,";
+				mes "you can't use it anymore!";
+				mes "All the cards in it and the properties ^ff0000will be lost^000000!";
+				mes "^ff0000Besides, the equipment will break!^000000";
+				mes "Are you sure you still want to continue?";
+				next;
+				if(select("Yes:No") == 2) {
+					mes "[Suhnbi]";
+					mes "Good.";
+					mes "Because if the weapon breaks from unreasonable refining, then I get a bad mood, too.";
+					close;
+				}
+			} else {
 				mes "[Suhnbi]";
 				mes "[Suhnbi]";
-				mes "I completely agree...";
-				mes "I might be a great refiner, but sometimes even I make mistakes.";
-				close;
+				mes "Giggle. Giggle. Oh, you have guts, daring to refine this.";
+				mes "You know it's pretty risky, don't you?";
+				next;
+				mes "If your defensive equipment is broken, you'll never be able to use it again.";
+				mes "Even your cards and your modifications will ^ff0000completely disappear^000000.";
+				//mes "Everything will disappear. As in... GONE!";
+				mes "Do you really wish to continue?";
+				next;
+				if(select("Yes:No") == 2) {
+					mes "[Suhnbi]";
+					mes "What nonsense. You waste my precious time.";
+					mes "Get lost, punk.";
+					close;
+				}
 			}
 			}
 		}
 		}
-		if( countitem(getarg(1)) > 0 && Zeny > getarg(2) )
-		{
-			delitem getarg(1), 1;
+		if (countitem(getarg(1)) > 0 && Zeny > getarg(2)) {
+			delitem getarg(1),1;
 			set Zeny, Zeny - getarg(2);
 			set Zeny, Zeny - getarg(2);
 			return;
 			return;
 		}
 		}
 		mes "[Suhnbi]";
 		mes "[Suhnbi]";
-		mes "You don't seem to have enough Zeny or " + getitemname(getarg(1)) + "...";
-		mes "Go get some more. I'll be here all day if you need me.";
+		mes "Are these all you have?";
+		mes "I'm very sorry, but I can't do anything without all the materials. Besides, I deserve some payments for my work, don't I?";
 		close;
 		close;
 	}
 	}
 	mes "[Suhnbi]";
 	mes "[Suhnbi]";
-	mes "Yeah... There's no need to rush.";
-	mes "Take your time.";
+	mes "I can't help it even if you're not happy about it...";
 	close;
 	close;
 }
 }

+ 19 - 7
npc/merchants/refine.txt

@@ -3,7 +3,7 @@
 //===== By: ==================================================
 //===== By: ==================================================
 //= Syrus22 (1.1) dafide18 (1.4) Skotlex (1.5)
 //= Syrus22 (1.1) dafide18 (1.4) Skotlex (1.5)
 //===== Current Version: =====================================
 //===== Current Version: =====================================
-//= 3.2a
+//= 3.3
 //===== Compatible With: =====================================
 //===== Compatible With: =====================================
 //= Any Athena Version
 //= Any Athena Version
 //===== Description: =========================================
 //===== Description: =========================================
@@ -60,6 +60,7 @@
 //= 3.1 Added the new refinement & Ore creation NPC's for +11 and above Refinement. [Masao]
 //= 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]
 //= 3.2 Moved some scripts to Renewal file, other minor changes. [Euphy]
 //= 3.2a Added 'disable_items' command. [Euphy]
 //= 3.2a Added 'disable_items' command. [Euphy]
+//= 3.3 Some official script updates. [Euphy]
 //============================================================
 //============================================================
 
 
 // Christopher: Geffen Blacksmith
 // Christopher: Geffen Blacksmith
@@ -336,7 +337,7 @@ ein_in01,38,29,0	script	Paul Spanner	63,{
 		mes "- Currently you're carrying -";
 		mes "- Currently you're carrying -";
 		mes "- too many items with you. -";
 		mes "- too many items with you. -";
 		mes "- Please try again -";
 		mes "- Please try again -";
-		mes "- after you loose some weight. -";
+		mes "- after you lose some weight. -";
 		close;
 		close;
 	}
 	}
 	mes "[Paul Spanner]";
 	mes "[Paul Spanner]";
@@ -615,12 +616,20 @@ function	script	refinemain	{
 	setarray .@position$[1], "Head","Body","Left hand","Right hand","Robe","Shoes","Accessory 1","Accessory 2","Head 2","Head 3";
 	setarray .@position$[1], "Head","Body","Left hand","Right hand","Robe","Shoes","Accessory 1","Accessory 2","Head 2","Head 3";
 	set .@menu$,"";
 	set .@menu$,"";
 	for(set .@i,1; .@i<=10; set .@i,.@i+1) {
 	for(set .@i,1; .@i<=10; set .@i,.@i+1) {
-		if(getequipisequiped(.@i))
+		if(getequipisequiped(.@i)) {
 			set .@menu$, .@menu$ + .@position$[.@i] + "-" + "[" + getequipname(.@i) + "]";
 			set .@menu$, .@menu$ + .@position$[.@i] + "-" + "[" + getequipname(.@i) + "]";
+			set .@equipped,1;
+		}
 		set .@menu$, .@menu$ + ":";
 		set .@menu$, .@menu$ + ":";
 	}
 	}
-	set .@part,select(.@menu$);
-	if(!getequipisequiped(.@part)) {
+	if (.@equipped == 0) {
+		mes "[" + getarg(0) + "]";
+		mes "I don't think I can refine any items you have...";
+		close;
+	}
+	set .@part, select(.@menu$);
+
+	if(!getequipisequiped(.@part)) { //custom check
 		mes "[" + getarg(0) + "]";
 		mes "[" + getarg(0) + "]";
 		mes "You're not wearing";
 		mes "You're not wearing";
 		mes "anything there that";
 		mes "anything there that";
@@ -730,6 +739,8 @@ function	script	refinemain	{
 		}
 		}
 		set Zeny, Zeny-.@price;
 		set Zeny, Zeny-.@price;
 		delitem .@material,1;
 		delitem .@material,1;
+
+		//custom checks
 		if(getequipisequiped(.@part) == 0) { // hacker has removed the item (not changed, why?)
 		if(getequipisequiped(.@part) == 0) { // hacker has removed the item (not changed, why?)
 			mes "[" + getarg(0) + "]";
 			mes "[" + getarg(0) + "]";
 			mes "Look here... you don't have any Items on...";
 			mes "Look here... you don't have any Items on...";
@@ -743,6 +754,7 @@ function	script	refinemain	{
 			mes "You switched the item while I wasn't looking! Get out of here!";
 			mes "You switched the item while I wasn't looking! Get out of here!";
 			close;
 			close;
 		}
 		}
+
 		if(getequippercentrefinery(.@part) <= rand(100)) {
 		if(getequippercentrefinery(.@part) <= rand(100)) {
 			failedrefitem .@part;
 			failedrefitem .@part;
 			mes "[" + getarg(0) + "]";
 			mes "[" + getarg(0) + "]";
@@ -924,7 +936,7 @@ function	script	phramain	{
 		mes "- Currently you're carrying -";
 		mes "- Currently you're carrying -";
 		mes "- too many items with you. -";
 		mes "- too many items with you. -";
 		mes "- Please try again -";
 		mes "- Please try again -";
-		mes "- after you loose some weight. -";
+		mes "- after you lose some weight. -";
 		close;
 		close;
 	}
 	}
 	mes "[" + getarg(0) + "]";
 	mes "[" + getarg(0) + "]";
@@ -1037,7 +1049,7 @@ function	script	orimain	{
 		mes "- Currently you're carrying -";
 		mes "- Currently you're carrying -";
 		mes "- too many items with you. -";
 		mes "- too many items with you. -";
 		mes "- Please try again -";
 		mes "- Please try again -";
-		mes "- after you loose some weight. -";
+		mes "- after you lose some weight. -";
 		close;
 		close;
 	}
 	}
 	mes "[" + getarg(0) + "]";
 	mes "[" + getarg(0) + "]";

+ 20 - 21
npc/re/merchants/catalog.txt

@@ -3,7 +3,7 @@
 //===== By: ==================================================
 //===== By: ==================================================
 //= skyiing, Scriptor
 //= skyiing, Scriptor
 //===== Current Version: =====================================
 //===== Current Version: =====================================
-//= 1.0
+//= 1.1
 //===== Compatible With: =====================================
 //===== Compatible With: =====================================
 //= rAthena SVN
 //= rAthena SVN
 //===== Description: =========================================
 //===== Description: =========================================
@@ -12,10 +12,11 @@
 //= and to buy/sell directly from the catalog interface.
 //= and to buy/sell directly from the catalog interface.
 //===== Additional Comments: =================================
 //===== Additional Comments: =================================
 //= 1.0 Moved from root directory. [Euphy]
 //= 1.0 Moved from root directory. [Euphy]
+//= 1.1 Updated dialogue. [Euphy]
 //============================================================ 
 //============================================================ 
 
 
 moc_para01,22,16,5	script	Catalog Magician#catal01	704,{
 moc_para01,22,16,5	script	Catalog Magician#catal01	704,{
-	if (!checkweight(1201,2)) {
+	if (!checkweight(1301,3)) {
 		mes "- You have too many items. Please make space. -";
 		mes "- You have too many items. Please make space. -";
 		close;
 		close;
 	}
 	}
@@ -28,24 +29,23 @@ moc_para01,22,16,5	script	Catalog Magician#catal01	704,{
 	next;
 	next;
 	mes "He is looking at the words";
 	mes "He is looking at the words";
 	mes "written on his hand.";
 	mes "written on his hand.";
-	mes "Seems like he's too busy";
+	mes "He seems too busy";
 	mes "to look at you.";
 	mes "to look at you.";
 	next;
 	next;
 	mes "[Catalog Magician]";
 	mes "[Catalog Magician]";
 	mes "A brand new catalog";
 	mes "A brand new catalog";
 	mes "has just come out!";
 	mes "has just come out!";
-	mes "You can check what";
-	mes "items can be traded";
-	mes "and what items are on";
-	mes "sale from the vendor.";
+	mes "You can check";
+	mes "what items you can trade";
+	mes "and what items are on sale";
+	mes "from the vendor.";
 	next;
 	next;
 	mes "[Catalog Magician]";
 	mes "[Catalog Magician]";
-	mes "^007777Universal Catalog Silver^000000~";
-	mes "It costs only 200z each!";
-	mes "You can buy it up to 50";
-	mes "pieces at once!";
+	mes "The ^007777Universal Catalog Silver^000000";
+	mes "costs only 200z!";
+	mes "You can buy up to 50 pieces at once!";
 	next;
 	next;
-	switch(select("Buy ^007777Universal Catalog Silver^000000:I don't need it!:You don't look like a vendor...")) {
+	switch(select("Buy a ^007777Universal Catalog Silver^000000:I don't need it!:You don't look like a vendor!")) {
 	case 1:
 	case 1:
 		mes "[Catalog Magician]";
 		mes "[Catalog Magician]";
 		mes "You... want all 50 pieces?";
 		mes "You... want all 50 pieces?";
@@ -55,7 +55,7 @@ moc_para01,22,16,5	script	Catalog Magician#catal01	704,{
 			input .@input;
 			input .@input;
 			mes "[Catalog Magician]";
 			mes "[Catalog Magician]";
 			if (.@input == 0) {
 			if (.@input == 0) {
-				mes "Trade has been stopped!";
+				mes "The trade has been stopped!";
 				mes "I don't know what to do next...";
 				mes "I don't know what to do next...";
 				mes "What should I do?";
 				mes "What should I do?";
 				emotion e_swt2,1;
 				emotion e_swt2,1;
@@ -67,16 +67,15 @@ moc_para01,22,16,5	script	Catalog Magician#catal01	704,{
 				break;
 				break;
 		}
 		}
 		set .@sell, .@ticket_cost * .@input;
 		set .@sell, .@ticket_cost * .@input;
-		mes "Total number of catalog(s) that";
-		mes "you're trying to purchase is";
-		mes .@input + " pieces and it costs " + .@sell + " z.";
+		mes "The total number of catalog(s) that you're trying to purchase is " + .@input + " pieces.";
+		mes "It costs " + .@sell + " z.";
 		if (Zeny < .@sell) {
 		if (Zeny < .@sell) {
 			mes "It seems you don't have enough money.";
 			mes "It seems you don't have enough money.";
-			mes "You can sell your equips";
+			mes "You can sell your equipment";
 			mes "to make more money... if you want.";
 			mes "to make more money... if you want.";
 			close;
 			close;
 		}
 		}
-		mes "Okie, here you go.";
+		mes "Ok, here you go.";
 		set Zeny, Zeny - .@sell;
 		set Zeny, Zeny - .@sell;
 		getitem 12580,.@input; //Vending_Search_Scroll
 		getitem 12580,.@input; //Vending_Search_Scroll
 		close;
 		close;
@@ -100,9 +99,9 @@ moc_para01,22,16,5	script	Catalog Magician#catal01	704,{
 		next;
 		next;
 		mes "[Catalog Magician]";
 		mes "[Catalog Magician]";
 		mes "There are many adventurers";
 		mes "There are many adventurers";
-		mes "here coming and going. I'm";
-		mes "pretty sure that I can sell them";
-		mes "all soon. Don't you think so?";
+		mes "here who come and go.";
+		mes "I'm pretty sure that I can sell to all of them soon.";
+		mes "Don't you think so?";
 		mes "So... let's start!! Buy more of them, please! PLEASE...!";
 		mes "So... let's start!! Buy more of them, please! PLEASE...!";
 		close;
 		close;
 	}
 	}

+ 99 - 101
npc/re/merchants/refine.txt

@@ -3,7 +3,7 @@
 //===== By: ==================================================
 //===== By: ==================================================
 //= rAthena Dev Team
 //= rAthena Dev Team
 //===== Current Version: =====================================
 //===== Current Version: =====================================
-//= 1.2
+//= 1.3
 //===== Compatible With: =====================================
 //===== Compatible With: =====================================
 //= rAthena SVN
 //= rAthena SVN
 //===== Description: =========================================
 //===== Description: =========================================
@@ -14,20 +14,21 @@
 //= 1.1 Added Malangdo Refiner "Clink". [Euphy]
 //= 1.1 Added Malangdo Refiner "Clink". [Euphy]
 //= 1.2 Added official success calculation, thanks to Helvetica.
 //= 1.2 Added official success calculation, thanks to Helvetica.
 //=     The safe/multiple refine feature is now functional. [Euphy]
 //=     The safe/multiple refine feature is now functional. [Euphy]
+//= 1.3 Updated to match the latest official script. [Euphy]
 //============================================================
 //============================================================
 
 
 // +11 and above Refiners
 // +11 and above Refiners
 //============================================================
 //============================================================
-prt_in,90,72,5	script	Bestry#prt	826,{
-	callfunc "refinenew","Bestry",0;
+prt_in,90,72,5	script	Vestri#prt	826,{
+	callfunc "refinenew","Vestri",0;
 	end;
 	end;
 }
 }
-morocc_in,64,41,5	script	Bestry#moc	826,{
-	callfunc "refinenew","Bestry",0;
+morocc_in,64,41,5	script	Vestri#moc	826,{
+	callfunc "refinenew","Vestri",0;
 	end;
 	end;
 }
 }
-payon_in01,18,132,3	script	Bestry#pay	826,{
-	callfunc "refinenew","Bestry",0;
+payon_in01,18,132,3	script	Vestri#pay	826,{
+	callfunc "refinenew","Vestri",0;
 	end;
 	end;
 }
 }
 
 
@@ -45,24 +46,32 @@ payon_in01,18,132,3	script	Bestry#pay	826,{
 function	script	refinenew	{
 function	script	refinenew	{
 	disable_items;
 	disable_items;
 	mes "["+ getarg(0) +"]";
 	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!";
+	mes "I am the best Armsmith ever!";
+	mes "I don't refine normal, boring items.";
+	mes "I only refine items that are Level 10 or higher.";
 	next;
 	next;
 	mes "["+ getarg(0) +"]";
 	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?";
+	mes "Anyway, you may use my services if your item is Level 10 or higher.";
+	mes "What do you want me to refine?";
 	next;
 	next;
 
 
 	setarray .@position$[1],"Head","Body","Left hand","Right hand","Robe","Shoes","Accessory 1","Accessory 2","Head 2","Head 3";
 	setarray .@position$[1],"Head","Body","Left hand","Right hand","Robe","Shoes","Accessory 1","Accessory 2","Head 2","Head 3";
 	set .@menu$,"";
 	set .@menu$,"";
 	for(set .@i,1; .@i<=10; set .@i,.@i+1) {
 	for(set .@i,1; .@i<=10; set .@i,.@i+1) {
-		if(getequipisequiped(.@i))
+		if (getequipisequiped(.@i)) {
 			set .@menu$, .@menu$ + .@position$[.@i] + "-" + "[" + getequipname(.@i) + "]";
 			set .@menu$, .@menu$ + .@position$[.@i] + "-" + "[" + getequipname(.@i) + "]";
+			set .@equipped,1;
+		}
 		set .@menu$, .@menu$ + ":";
 		set .@menu$, .@menu$ + ":";
 	}
 	}
-	set .@part,select(.@menu$);
-	if(!getequipisequiped(.@part)) {
+	if (.@equipped == 0) {
+		mes "[" + getarg(0) + "]";
+		mes "I don't think I can refine any items you have...";
+		close;
+	}
+	set .@part, select(.@menu$);
+
+	if (!getequipisequiped(.@part)) { //custom check
 		mes "[" + getarg(0) + "]";
 		mes "[" + getarg(0) + "]";
 		mes "You're not wearing";
 		mes "You're not wearing";
 		mes "anything there that";
 		mes "anything there that";
@@ -70,20 +79,18 @@ function	script	refinenew	{
 		emotion e_an;
 		emotion e_an;
 		close;
 		close;
 	}
 	}
-	//Check if the item is refinable...
-	if(!getequipisenableref(.@part)) {
+	if (!getequipisenableref(.@part)) {
 		mes "[" + getarg(0) + "]";
 		mes "[" + getarg(0) + "]";
 		mes "I don't think I can";
 		mes "I don't think I can";
 		mes "refine this item at all...";
 		mes "refine this item at all...";
 		close;
 		close;
 	}
 	}
-	//Check to see if the items is at least +10
-	if(getequiprefinerycnt(.@part) < 10) {
+	if (getequiprefinerycnt(.@part) < 10) {
 		mes "["+ getarg(0) +"]";
 		mes "["+ getarg(0) +"]";
-		mes "I said I don't work with Equipment under lv. 10.";
+		mes "I said I don't work with items that are lower than Level 10.";
 		close;
 		close;
 	}
 	}
-	if(getequiprefinerycnt(.@part) >= 20) {
+	if (getequiprefinerycnt(.@part) >= 20) { //custom check
 		mes "["+ getarg(0) +"]";
 		mes "["+ getarg(0) +"]";
 		mes "I can't refine this";
 		mes "I can't refine this";
 		mes "any more. This is as";
 		mes "any more. This is as";
@@ -93,7 +100,8 @@ function	script	refinenew	{
 	set .@refineitemid, getequipid(.@part); // save id of the item
 	set .@refineitemid, getequipid(.@part); // save id of the item
 	set .@refinerycnt, getequiprefinerycnt(.@part); //save refinery count
 	set .@refinerycnt, getequiprefinerycnt(.@part); //save refinery count
 	if ((getequipweaponlv(.@part) >= 1) && (getequipweaponlv(.@part) <= 4)) {
 	if ((getequipweaponlv(.@part) >= 1) && (getequipweaponlv(.@part) <= 4)) {
-		set .@material,6224;
+		set .@type$,"weapon";
+		set .@material,6224; //Bradium
 		set .@price,100000;
 		set .@price,100000;
 		switch(getequipweaponlv(.@part)) {
 		switch(getequipweaponlv(.@part)) {
 			case 1: set .@safe,17; break;
 			case 1: set .@safe,17; break;
@@ -105,69 +113,61 @@ function	script	refinenew	{
 		mes "Hmm a weapon, is that ok?";
 		mes "Hmm a weapon, is that ok?";
 		mes "If you want to refine this weapon,";
 		mes "If you want to refine this weapon,";
 		mes "I will need 1 ^003366Bradium^000000 and 100,000 zeny.";
 		mes "I will need 1 ^003366Bradium^000000 and 100,000 zeny.";
-		mes "Are you sure you want to continue?";
 	} else {
 	} else {
-		set .@material,6223;
+		set .@type$,"armor";
+		set .@material,6223; //Carnium
 		set .@price,100000;
 		set .@price,100000;
 		set .@safe,14;
 		set .@safe,14;
 		mes "["+ getarg(0) +"]";
 		mes "["+ getarg(0) +"]";
 		mes "Hmm an armor, is that ok?";
 		mes "Hmm an armor, is that ok?";
 		mes "If you want to refine this armor,";
 		mes "If you want to refine this armor,";
 		mes "I will need 1 ^003366Carnium^000000 and 100,000 zeny.";
 		mes "I will need 1 ^003366Carnium^000000 and 100,000 zeny.";
-		mes "Are you sure you want to continue?";
 	}
 	}
+	mes "Are you sure you want to continue?";
 	next;
 	next;
 	if(select("Yes:No") == 2){
 	if(select("Yes:No") == 2){
 		mes "["+ getarg(0) +"]";
 		mes "["+ getarg(0) +"]";
-		mes "Well, no challenge is one way...";
-		mes "No risk... that could be wise.";
+		mes "Hm... if you mind... never mind...";
 		close;
 		close;
 	}
 	}
-	if(getarg(1) != 1) {
-		if ((getequipweaponlv(.@part) >= 1) && (getequipweaponlv(.@part) <= 4)) {
+	if (getarg(1) != 1) {
+		if (getequippercentrefinery(.@part) < 100) {
 			mes "["+ getarg(0) +"]";
 			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.";
+			mes "This "+.@type$+" already has been refined serveral times.";
+			mes "It could be destroyed if I try again.";
+			mes "It won't break for sure, but there is has a small chance.";
 			next;
 			next;
 			mes "["+ getarg(0) +"]";
 			mes "["+ getarg(0) +"]";
-			mes "You could have the upgrade level of the weapon decreased,";
+			mes "You could be ^FF0000lowering the upgrade level^000000 of the "+.@type$+",";
 			mes "or if it breaks, you will lose ^FF0000any cards^000000 or special properties added to it.";
 			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;
 			next;
 			mes "["+ getarg(0) +"]";
 			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;
-		if(select("Yes.:No.") == 2) {
-			mes "["+ getarg(0) +"]";
-			mes "Well, no challenge is one way..";
-			mes "No risk.. that could be wise.";
-			close;
+			mes "Do you still want me to refine it?";
+			mes "I think I have given you enough warning.";
+			next;
+			if(select("Yes.:No.") == 2) {
+				mes "["+ getarg(0) +"]";
+				mes "Well, no challenge is one way to go...";
+				mes "No risk... that could be wise.";
+				close;
+			}
 		}
 		}
-		if(countitem(.@material) < 1 || Zeny < .@price) {
+		if (countitem(.@material) < 1 || Zeny < .@price) {
 			mes "["+ getarg(0) +"]";
 			mes "["+ getarg(0) +"]";
-			mes "Hm, it seems you don't have enough materials or money.";
-			mes "Please check it out.";
+			mes "Hm. You don't seem to have enough money or "+getitemname(.@material)+".";
+			mes "Please come back when you have them.";
 			close;
 			close;
 		}
 		}
 		set Zeny,Zeny - .@price;
 		set Zeny,Zeny - .@price;
 		delitem .@material,1;
 		delitem .@material,1;
-		if(getequipisequiped(.@part) == 0) { // hacker has removed the item (not changed, why?)
+
+		//custom checks
+		if (getequipisequiped(.@part) == 0) { // hacker has removed the item (not changed, why?)
 			mes "[" + getarg(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;
 			close;
 		}
 		}
-		if(getequiprefinerycnt(.@part) != .@refinerycnt || getequipid(.@part) != .@refineitemid) { // hacker has changed the item
+		if (getequiprefinerycnt(.@part) != .@refinerycnt || getequipid(.@part) != .@refineitemid) { // hacker has changed the item
 			mes "[" + getarg(0) + "]";
 			mes "[" + getarg(0) + "]";
 			emotion e_an;
 			emotion e_an;
 			mes "Wait a second...";
 			mes "Wait a second...";
@@ -175,6 +175,7 @@ function	script	refinenew	{
 			mes "You switched the item while I wasn't looking! Get out of here!";
 			mes "You switched the item while I wasn't looking! Get out of here!";
 			close;
 			close;
 		}
 		}
+
 		if (getequippercentrefinery(.@part) > rand(100)) {
 		if (getequippercentrefinery(.@part) > rand(100)) {
 			mes "Clang! Clang! Clang! Clang!";
 			mes "Clang! Clang! Clang! Clang!";
 			successrefitem .@part;
 			successrefitem .@part;
@@ -182,7 +183,7 @@ function	script	refinenew	{
 			emotion e_no1;
 			emotion e_no1;
 			mes "["+ getarg(0) +"]";
 			mes "["+ getarg(0) +"]";
 			mes "Good! Succes!!!";
 			mes "Good! Succes!!!";
-			mes "I am the best Blacksmith.";
+			mes "I am the best Armsmith.";
 			close;
 			close;
 		} else {
 		} else {
 			if (rand(100) < 80) {
 			if (rand(100) < 80) {
@@ -195,14 +196,8 @@ function	script	refinenew	{
 				mes "Ahhh!!!";
 				mes "Ahhh!!!";
 				next;
 				next;
 				mes "["+ getarg(0) +"]";
 				mes "["+ getarg(0) +"]";
-				mes "Oh my!";
+				mes "Oh my god!";
 				mes "The upgrade level has dropped...";
 				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;
 			} else {
 			} else {
 				mes "["+ getarg(0) +"]";
 				mes "["+ getarg(0) +"]";
 				mes "Clang! Clang! Clang!";
 				mes "Clang! Clang! Clang!";
@@ -215,17 +210,17 @@ function	script	refinenew	{
 				mes "["+ getarg(0) +"]";
 				mes "["+ getarg(0) +"]";
 				mes "Oh my! I've failed to refine stuff...";
 				mes "Oh my! I've failed to refine stuff...";
 				mes "I didn't mean it!";
 				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 "I could have made a mistake even though I am the best Armsmith ever.";
+			mes "It just wasn't meant to be.";
+			next;
+			mes "["+ getarg(0) +"]";
+			mes "I will do a better job next time! Don't worry!";
+			close;
 		}
 		}
 	}
 	}
 // New +11 and above Refining Functions ========================
 // New +11 and above Refining Functions ========================
-	if(getequiprefinerycnt(.@part) < .@safe) {
+	if (getequiprefinerycnt(.@part) < .@safe) {
 		mes "[" + getarg(0) + "]";
 		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;
 		next;
@@ -247,7 +242,7 @@ function	script	refinenew	{
 			mes "I can't refine this item that many times.";
 			mes "I can't refine this item that many times.";
 			close;
 			close;
 		}
 		}
-		if(.@refinecheck > .@safe) {
+		if (.@refinecheck > .@safe) {
 			set .@refinecheck,.@refinecheck - .@safe;
 			set .@refinecheck,.@refinecheck - .@safe;
 			mes "[" + getarg(0) + "]";
 			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?";
 			mes "This will try to refine the equipment " + .@refinecheck + " times past the safe limit. Your equipment may be destroyed... is that ok?";
@@ -268,14 +263,15 @@ function	script	refinenew	{
 	mes "[" + getarg(0) + "]";
 	mes "[" + getarg(0) + "]";
 	mes "That will cost you " + .@refinecnt + " " + getitemname(.@material) + " and " + .@fullprice + " Zeny. Is that ok?";
 	mes "That will cost you " + .@refinecnt + " " + getitemname(.@material) + " and " + .@fullprice + " Zeny. Is that ok?";
 	next;
 	next;
-	if(select("Yes","No...") == 2){
+	if(select("Yes:No...") == 2){
 		mes "[" + getarg(0) + "]";
 		mes "[" + getarg(0) + "]";
 		mes "You said so... So be it.";
 		mes "You said so... So be it.";
 		close;
 		close;
 	}
 	}
-	if(countitem(.@material) < .@refinecnt || Zeny < .@fullprice) {
+	if (countitem(.@material) < .@refinecnt || Zeny < .@fullprice) {
 		mes "[" + getarg(0) + "]";
 		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.";
+		mes "Hm. You don't seem to have enough money or "+getitemname(.@material)+".";
+		mes "Please come back when you have them.";
 		close;
 		close;
 	}
 	}
 	set Zeny,Zeny - .@fullprice;
 	set Zeny,Zeny - .@fullprice;
@@ -309,14 +305,8 @@ function	script	refinenew	{
 				mes "Ahhh!!!";
 				mes "Ahhh!!!";
 				next;
 				next;
 				mes "["+ getarg(0) +"]";
 				mes "["+ getarg(0) +"]";
-				mes "Oh my!";
+				mes "Oh my god!";
 				mes "The upgrade level has dropped...";
 				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;
 			} else {
 			} else {
 				mes "["+ getarg(0) +"]";
 				mes "["+ getarg(0) +"]";
 				mes "Clang! Clang! Clang!";
 				mes "Clang! Clang! Clang!";
@@ -329,13 +319,13 @@ function	script	refinenew	{
 				mes "["+ getarg(0) +"]";
 				mes "["+ getarg(0) +"]";
 				mes "Oh my! I've failed to refine stuff...";
 				mes "Oh my! I've failed to refine stuff...";
 				mes "I didn't mean it!";
 				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 "I could have made a mistake even though I am the best Armsmith ever.";
+			mes "It just wasn't meant to be.";
+			next;
+			mes "["+ getarg(0) +"]";
+			mes "I will do a better job next time! Don't worry!";
+			close;
 		}
 		}
 	}
 	}
 	emotion e_no1;
 	emotion e_no1;
@@ -347,8 +337,16 @@ function	script	refinenew	{
 
 
 // Ori/Elu to Carnium/Bradium Refiners
 // Ori/Elu to Carnium/Bradium Refiners
 //============================================================
 //============================================================
--	script	Austry#ref	-1,{
-	mes "[Austry]";
+-	script	Austri#ref	-1,{
+	if (checkweight(1201,1) == 0) {
+		mes "- Wait a minute !! -";
+		mes "- Currently you're carrying -";
+		mes "- too many items with you. -";
+		mes "- Please try again -";
+		mes "- after you lose some weight. -";
+		close;
+	}
+	mes "[Austri]";
 	mes "If you bring me 3";
 	mes "If you bring me 3";
 	mes "Oridecon or Elunium";
 	mes "Oridecon or Elunium";
 	mes "I can exchange them for";
 	mes "I can exchange them for";
@@ -366,7 +364,7 @@ function	script	refinenew	{
 		setarray .@i[0],6090,1,6223; //Purified_Bradium -> Carnium
 		setarray .@i[0],6090,1,6223; //Purified_Bradium -> Carnium
 		break;
 		break;
 	case 4:
 	case 4:
-		mes "[Austry]";
+		mes "[Austri]";
 		mes "Hmm...";
 		mes "Hmm...";
 		close;
 		close;
 	}
 	}
@@ -374,26 +372,26 @@ function	script	refinenew	{
 		delitem .@i[0],.@i[1];
 		delitem .@i[0],.@i[1];
 		set Zeny, Zeny - 50000;
 		set Zeny, Zeny - 50000;
 		getitem .@i[2],1;
 		getitem .@i[2],1;
-		mes "[Austry]";
+		mes "[Austri]";
 		if (.@i[0] == 6090) {
 		if (.@i[0] == 6090) {
-			mes "Refining with Purified Bradium";
-			mes "is a little expensive. I can";
-			mes "trade it for some Carnium.";
+			mes "Refining with Refined Bradium";
+			mes "can be a little expensive.";
+			mes "I can exchange it for some Carnium.";
 		} else
 		} else
-			mes "Ok! Here is your "+getitemname(.@i[2])+".";
+			mes "Ok! Here's your "+getitemname(.@i[2])+".";
 		mes "Take it and use it well.";
 		mes "Take it and use it well.";
 		close;
 		close;
 	}
 	}
-	mes "[Austry]";
+	mes "[Austri]";
 	mes "You better not be trying";
 	mes "You better not be trying";
 	mes "to cheat me because you";
 	mes "to cheat me because you";
-	mes "don't have enough zeny";
+	mes "don't have enough money";
 	mes "or "+getitemname(.@i[0])+".";
 	mes "or "+getitemname(.@i[0])+".";
 	close;
 	close;
 }
 }
-prt_in,85,71,5	duplicate(Austry#ref)	Austry#prt	826
-payon_in01,14,125,5	duplicate(Austry#ref)	Austry#pay	826
-morocc_in,60,38,5	duplicate(Austry#ref)	Austry#moc	826
+prt_in,85,71,5	duplicate(Austri#ref)	Austri#prt	826
+payon_in01,14,125,5	duplicate(Austri#ref)	Austri#pay	826
+morocc_in,60,38,5	duplicate(Austri#ref)	Austri#moc	826
 
 
 // Malangdo Refiner
 // Malangdo Refiner
 //============================================================
 //============================================================