summaryrefslogblamecommitdiff
path: root/npc/merchants/refine.txt
blob: c1cb3780245d0994abedf33aa11208c37c8146f2 (plain) (tree)
1
2
3
4
5
6
7
8
                                                               



                                                              
       
                                                              
                      































                                                                                           

                                                                       

                                                                 
                                                                           
                                                                      





                                                              
                                                            































































































































                                                                                                                                                                    
                                                                  



                                                                                       
                                            



                                 
                                            



                              
                                    



                              
                                            



                              
                                            



                              
                                                     



                                       
                                             
















                                                                                         
             
 





                                                                                       


                                                                             



                                           
                                       




                                                                                                   
                                       




                                                         
                                       


                                                                                                

                                                                           































                                               
                                                 
                               
                                                                                                                         

                        





                                                   






                                                                                                                    









































                                                                                                                                       








                                                                                              

                                                  






















                                                                                                                       



                                                                                                                                                                   













                                                                   
                               
                                                                                                               
             
                                       
                                       
                                                   
                      

                                                                    
                                       
                                                                                                                                  
                      





































                                                                                                                  






                                                                                
                                            



                              
                                    



                             
                                            



                            
                                                    



                                  
                                                    



                              
                                                    



                              
                                            











                                                              
                                                 



                                          
                                                                




























                                                              
                                                     




                                                          
                                                    







                                                                                
                                            



                              
                                    



                            
                                            



                           
                                                    



                              
                                            



                            
                                                    



                               
                                            




































































                                                                                                                                                                 
                                    




                                    
                                            



                               
                                                    



                               
                                                    











































                                                                                                    
//===== eAthena Script ======================================= 
//= Refining NPCs
//===== By: ==================================================
//= Syrus22 (1.1) dafide18 (1.4) Skotlex (1.5)
//===== Current Version: =====================================
//= 2.4
//===== Compatible With: =====================================
//= Any Athena Version
//===== Description: =========================================
//= Refining NPCs and Metal Salesmen.
//===== Additional Comments: =================================
//= 1.0 - by A bunch of people!
//=       Syrus22 - Completely redid the script using functions... also
//=       added the option for auto safe refining and multiple refining.
//= 1.1 - Negative input bug fixed [Lupus]
//= 1.2 - Added additional reparimen in morroc and payon. Added
//=       Christopher the blacksmith in Geffen. Edited some dialogue [kobra_k88]
//= 1.3 - New Payon Locations [Darkchild]
//=       Corrected zeny subtraction thx to jpnmania77.[kobra_k88]
//= 1.3a - Temporary corrected an exploit. Need to check sources
//=        to fully fix bug [Shinigami]
//=        Fixed repairman prices [shadowlady]
//=        Fixed bug that skips requirements thanks to sir_loon [massdriller]
//=        Fixed itemid error thanks to -Vitamin- [massdriller]
//= 1.4 - check again item in refining procedure to avoid
//=        hacker that can change item [dafide18]
//= 1.5 - Fixed crashing due to badly used callfunc's [Skotlex]
//        Lupus, don't rollback this important fix again! >.<
//= 1.5a - Corrected an unneeded callfunc, fixed the anti-bot 
//=       exploit ruining the safe refine loop. [Skotlex]
//= 1.5b - Fixed Spelling mistakes. [Nexon] 
//= 1.6	- Replaced all breaks for ends as per the new script engine [Skotlex]
//= 1.7 - Added Einbroch Refiners (Custom names ^^;) and a duplicated BS Shop. [Poki#3]
//= 1.8 - Added Lighthalzen Refiners (Custom names again ^^;) [Poki#3]
//= 1.8a - Fixed wrong indication thanks to NeoSaro [Lupus]
//= 1.9 - Rewrote repairman, removed the Steel from repair cost [DracoRPG]
//= 2.0 - Fixed missed equppment presence check. Thx2 Coltaro [Lupus]
//= 2.0a - Added weight checks thanks to Neouni [Playtester]
//= 2.0b - Fixed the names of Lighthalzen and Einbroch refiners thanks to Maud_Dib [Kargha]
//= 2.1 - Removed Duplicates [Silent]
//= 2.2 - Changed name from "Emvertacon" to "Emveretarcon". [Samuray22]
//	- Thanks to Barron-Monster.
//= 2.2b - Changed name from "Pharacon" to "Phracon". [Samuray22]
//	- Thanks to Barron-Monster.
//= 2.3 Corrected NPC names to fall within proper restrictions. [L0ne_W0lf]
//= 2.4 Updated Refiner function. cleaner, and less dated. [L0ne_w0lf]
//============================================================


//=========================================================
// Christopher: Geffen Blacksmith
//=========================================================
geffen_in,110,172,2	script	Christopher#1::Chrisbs	63,{
	mes "[Christopher Guillenrow]";
	mes "Welcome to Christopher's Workshop. Ye can find all yer forging equipment here. So what can I help ye with?";
	M_Menu:
	next;
	menu "Purchase Anvil",M_0, "Purchase Forging Item",M_1, "Purchase Metal",M_2, "Purify Rough Ores",M_3, "Cancel",M_End;

	M_0:
		mes "[Christopher Guillenrow]";
		mes "Higher quality Anvils gives ye a better chance ta make better weapons, ye know. But they cost more than yer typical ones.";
		next;
		menu "Anvil - 30000z.",sM_Anvil, "Oridecon Anvil - 120000z.",sM_OriAnvil, "Golden Anvil - 300000z.",sM_GolAnvil,
			"Better Anvil than others",sM_BetAnvil, "Cancel",M_Menu;

		sM_Anvil:
			if(Zeny < 30000) goto L_NoZeny;
			if(checkweight(986,1) == 0 ) goto L_OverWeight;
			set Zeny, Zeny - 30000;
			getitem 986,1;
			mes "[Christopher Guillenrow]";
			mes "This is the cheapest one but it's very efficient.";
			next;
			goto L_Thanks;
		sM_OriAnvil:
			if(Zeny < 120000) goto L_NoZeny;
			if(checkweight(987,1) == 0 ) goto L_OverWeight;
			set Zeny, Zeny - 120000;
			getitem 987,1;
			mes "[Christopher Guillenrow]";
			mes "Ah! Ye have a good eye for anvils. This here is the proper anvil for a Blacksmith.";
			next;
			goto L_Thanks;
		sM_GolAnvil:
			if(Zeny < 300000) goto L_NoZeny;
			if(checkweight(988,1) == 0 ) goto L_OverWeight;
			set Zeny, Zeny - 300000;
			mes "[Christopher Guillenrow]";
			mes "This is the best anvil in my workshop! With this ye'll be the best Blasksmith in no time.";
			getitem 988,1;
			next;
			goto L_Thanks;
		sM_BetAnvil:
			mes "[Christopher Guillenrow]";
			mes "I'm sorry but I don't have anything better than a Golden Anvil.";
			mes "Maybe 'Ringgel' the legendary Anvil maker would have one... but he be a hard fellow ta find.";
			close;

	M_1:
		mes "[Christopher Guillenrow]";
		mes "A respectable Blacksmith uses fine tools. Ye will come ta know my tools as being the finest around!";
		mes "Choose anything you want.";
		sM_Menu1:
		next;
		menu "Mini-Furnace - 150z.",sM_Furn, "Iron Hammer - 1000z.",sM_IrHam, "Golden Hammer - 3000z.",sM_GldHam,
		     "Oridecon Hammer - 5000z.",sM_OriHam, "Cancel",M_Menu;

		sM_Furn:
			mes "[Christopher Guillenrow]";
			mes "This is a prerequisite for Metal refining!!";
			mes "So, how many do ye wish to buy? If you want to quit, please input the number '0'. However, you the maximum amount you can buy is 1000";
			set @input, 0;
			input @input;
			next;
			if(@input < 1 ) goto sM_Menu1;
			if(@input > 1000 ) goto sM_Max;
			if(Zeny < 150 * @input) goto L_NoZeny;
			if(checkweight(612,@input) == 0 ) goto L_OverWeight;
			set Zeny, Zeny - (150 * @input);
			getitem 612, @input;
			goto L_Thanks;
		sM_IrHam:
			if(Zeny < 1000) goto L_NoZeny;
			if(checkweight(613,1) == 0 ) goto L_OverWeight;
			set Zeny, Zeny - 1000;
			getitem 613,1;
			goto L_Thanks;
		sM_GldHam:
			if(Zeny < 3000) goto L_NoZeny;
			if(checkweight(614,1) == 0 ) goto L_OverWeight;
			set Zeny, Zeny - 3000;
			getitem 614,1;
			goto L_Thanks;
		sM_OriHam:
			if(Zeny < 5000) goto L_NoZeny;
			if(checkweight(615,1) == 0 ) goto L_OverWeight;
			set Zeny, Zeny - 5000;
			getitem 615,1;
			goto L_Thanks;
		sM_Max:
			mes "[Christopher Guillenrow]";
			mes "Sorry, you can't buy more than 1000 furnace at a time.";
			close;

	M_2:
		mes "[Christopher Guillenrow]";
		mes "I have 2 kinds of metals for sale. Which do ye like?";
		set @chris, 1;
		set @name$, "Christopher Guillenrow";
		callfunc "phramain";

	M_3:
		mes "[Christopher Guillenrow]";
		mes "I can purify yer rough Oridecon and rough Elunium ores. I'll need 5 rough ores to make 1 pure one.";
		mes "Well... which one do ye want ta make?";
		set @chris, 1;
		set @name$, "Christopher Guillenrow";
		callfunc "orimain";

	M_End:
		close;

	L_NoZeny:
		mes "[Christopher Guillenrow]";
		mes "I don't think I can let ye have this at a lower price. I can't afford ta loose profits because of ye.";
		emotion 4;
		close;

	L_OverWeight:
		mes "[Christopher Guillenrow]";
		mes "You don't seem to have enough strength to carry this.";
		close;

	L_Thanks:
		mes "[Christopher Guillenrow]";
		mes "Thank you for shopping at my workshop. Feel free to come anytime whenever you need.";
		emotion 15;
		close;
}

ein_in01,38,29,6	duplicate(Chrisbs)	Christopher#2	63

//=====================================================================================
// Weapon/Armor Refiners
//=====================================================================================
prt_in,63,60,4	script	Hollengrhen	85,{
	set @name$,"Hollengrhen";
	callfunc "refinemain";
	end;
}
morocc_in,73,38,4	script	Aragham	99,{
	set @name$,"Aragham";
	callfunc "refinemain";
	end;
}
payon,144,173,4	script	Antonio	88,{
	set @name$,"Antonio";
	callfunc "refinemain";
	end;
}
alberta_in,28,58,4	script	Fredrik	85,{
	set @name$,"Fredrik";
	callfunc "refinemain";
	end;
}
yuno_in01,164,26,6	script	Disturb	88,{
	set @name$,"Disturb";
	callfunc "refinemain";
	end;
}
ein_in01,24,87,6	script	Manthasman	826,{
	set @name$,"Manthasman Pruhag";
	callfunc "refinemain";
	end;
}
lhz_in02,282,20,7	script	Fulerr	869,{
	set @name$,"Fulerr";
	callfunc "refinemain";
	end;
}

//============================================================
//= Main Refiner Function
//============================================================
//= To allow auto safe refining/multiple refining set the
//= @features variable to 1
//============================================================
function	script	refinemain	{
	set @features,0;

	mes "[" + @name$ + "]";
	mes "I am the Armsmith... I can refine any weapon or piece of armor you choose!";
	mes "Which piece of equipment do you want to refine?";
	next;

	set @menu$,"";
	for( set @i,1; @i < 11; set @i,@i+1 ){
		set @menu$,@menu$+(getequipisequiped(@i) ?  getequipname(@i) : "")+":";
	}
	set @part,select(@menu$);
	if(!getequipisequiped(@part)) {
		mes "[" + @name$ + "]";
		mes "Do you want me to melt your body with blazing heat...?";
		emotion 6;
		close;
	}
	//Check if the item is refinable...
	if(!getequipisenableref(@part)) {
		mes "[" + @name$ + "]";
		mes "I can't work on this item...";
		close;
	}
	//Check if the item is identified... (Don't know why this is in here... but kept it anyway)
	if(!getequipisidentify(@part)) {
		mes "[" + @name$ + "]";
		mes "You must appraise this item first.";
		close;
	}
	//Check to see if the items is already +10
	if(getequiprefinerycnt(@part) >= 10) {
		mes "[" + @name$ + "]";
		mes "This weapon is already at its maximum level and can no longer be refined.";
		close;
	}
	set @refineitemid, getequipid(@part); // save id of the item
	set @refinerycnt, getequiprefinerycnt(@part); //save refinery count
	switch(getequipweaponlv(@part)){
	case 0: 	//Refine Armor
		set @price,2000;
		set @material,985;
		set @safe,4; 
		break;
	case 1: 	//Refine Level 1 Weapon
		set @price,50;
		set @material,1010;
		set @safe,7; 
		break;
	case 2: 	//Refine Level 2 Weapon
		set @price,200;
		set @material,1011;
		set @safe,6; 
		break;
	case 3: 	//Refine Level 3 Weapon
		set @price,5000;
		set @material,984;
		set @safe,5; 
		break;
	case 4: 	//Refine Level 4 Weapon
		set @price,20000;
		set @material,984;
		set @safe,4; 
		break;
	case 5: 	//Refine other stuff?
		set @price,2000;
		set @material,985;
		set @safe,4; 
		break;
	}
	if(@features == 1) goto L_refinefeatures;
	mes "[" + @name$ + "]";
	mes "To refine this stuff, I need ^ff9999" + getitemname(@material) + "^000000 and the fee " + @price + " Zeny.";
	mes "Continue?";
	next;
	if(select("Yes:No") == 2){
		mes "[" + @name$ + "]";
		mes "You said so..Hmm so be it...";
		close;
	}
	if(getequippercentrefinery(@part) < 100) {
		mes "[" + @name$ + "]";
		mes "Hmm... Hold on! This piece of equipment has already been refined to its maximum safety level.";
		mes "I must warn you if it is refined ANYMORE, It could be DESTROYED and become USELESS!!";
		next;
		mes "["+@name$+"]";
		mes "Do you still wish you refine it? If so I will not be able to guarantee my work...";
		next;
		if(select("Yes:No") == 2){
			mes "[" + @name$ + "]";
			mes "Good Choice.";
			mes "Ah... good choice. I'd feel awful if I'd destroyed another persons piece of equipment with my own hands.";
			close;
		}
	}
	if((countitem(@material) < 1) || (Zeny < @price)) {
		mes "[" + @name$ + "]";
		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-@price;
	delitem @material,1;
	if(getequipisequiped(@part) == 0) { // hacker has removed the item (not changed, why?)
		mes "[" + @name$ + "]";
		mes "Look here... you don't have any Items on...";
		close;
	}
	if(getequiprefinerycnt(@part) != @refinerycnt || getequipid(@part) != @refineitemid) { // hacker has changed the item
		mes "[" + @name$ + "]";
		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(getequippercentrefinery(@part) <= rand(100)) {
		mes "[" + @name$ + "]";
		mes "Clang! Clang! Clang!";
		failedrefitem @part;
		next;
		mes "["+@name$+"]";
		mes "Aaahhh!! Oh no...!!";
		emotion 16;
		next;
		mes "["+@name$+"]";
		mes "Eh..Ehem... I'm sorry but the refining process ^ff0000failed^000000.";
		next;
		mes "["+@name$+"]";
		mes "I am deeply ashamed of what I've done... but I DID warn you earlier about the risks.";
		close;
	}
	mes "["+@name$+"]";
	mes "Clang! Clang! Clang!";
	successrefitem @part;
	next;
	mes "["+@name$+"]";
	mes "HAHA! It seems my skills haven't gotten rusty yet! Splendid... just splendid...";
	emotion 21;
	close;

// New Refining Functions ========================
L_refinefeatures:
	if(getequiprefinerycnt(@part) < @safe) {
		mes "[" + @name$ + "]";
		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 "[" + @name$ + "]";
		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 "[" + @name$ + "]";
			mes "I can't refine this item that many times.";
			close;
		}
		if(@refinecheck > @safe) {
			set @refinecheck,@refinecheck - @safe;
			mes "[" + @name$ + "]";
			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 "[" + @name$ + "]";
				mes "You said so..Hmm so be it...";
				close;
			}
		}
		break;
	case 3:
		next;
		mes "[" + @name$ + "]";
		mes "You said so..Hmm so be it...";
		close;
	}
	set @fullprice,@price * @refinecnt;
	mes "[" + @name$ + "]";
	mes "That will cost you " + @refinecnt + " " + @matname$ + " and " + @fullprice + " Zeny. Is that ok?";
	next;
	if(select("Yes","No...") == 2){
		mes "[" + @name$ + "]";
		mes "You said so..Hmm so be it...";
		close;
	}
	if(countitem(@material) < @refinecnt || Zeny < @fullprice) {
		mes "[" + @name$ + "]";
		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 "[" + @name$ + "]";
			mes "Look here... you don't have any Items on...";
			close;
		}
		if (getequipid(@part) != @refineitemid || (@menu2 == 1 && getequippercentrefinery(@part) < 100)) {
			mes "[" + @name$ + "]";
			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;
		} 
		mes "Clang, clang!!!";
		if(@menu2 == 2 && getequippercentrefinery(@part) <= rand(100)) {
			failedrefitem @part;
			emotion 23;
			mes "[" + @name$ + "]";
			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...";
			getitem @material,@refinecnt;
			set @fullprice,@refinecnt * @price;
			set Zeny,Zeny + @fullprice;
			close;
		}
		successrefitem @part;
		emotion 21;
		set @refinecnt,@refinecnt - 1;
		next;
	}
	mes "[" + @name$ + "]";
	mes "All finished... Come again soon.";
	close;		
}



//==============================================================================
// Material Salesmen
//==============================================================================
prt_in,56,69,4	script	Vurewell	86,{
	set @name$,"Vurewell";
	callfunc "phramain";
	end;
}
payon,145,178,4	script	Begnahd	88,{
	set @name$,"Begnahd";
	callfunc "phramain";
	end;
}
morocc_in,65,37,4	script	Sade	99,{
	set @name$,"Sade";
	callfunc "phramain";
	end;
}
alberta_in,18,59,5	script	Kahlamanlith	86,{
	set @name$,"Kahlamanlith";
	callfunc "phramain";
	end;
}
yuno_in01,171,26,6	script	Dillemat	88,{
	set @name$,"Dillemat";
	callfunc "phramain";
	end;
}
ein_in01,15,87,7	script	Tirehaus	86,{
	set @name$,"Tirehaus";
	callfunc "phramain";
	end;
}
lhz_in02,278,24,3	script	Krugg	86,{
	set @name$,"Krugg";
	callfunc "phramain";
	end;
}

//============================================================
//= Material Salesmen Functions
//============================================================
function	script	phramain	{
	if(@chris == 1) goto M_Menu;
	mes "[" + @name$ + "]";
	mes "Hello, Im selling metals I just mined.";
	mes "They are Phracon and Emveretarcon.";
	mes "Would you like to buy some?";
	M_Menu:
	set @chris, 0;
	next;
	menu"Phracon - 200z",PHARA,"Emveretarcon - 1000z",EMVER;

	PHARA:
		set @itemid,1010;
		set @value,200;
		goto CONTINUE;

	EMVER:
		set @itemid,1011;
		set @value,1000;

CONTINUE:
	mes "[" + @name$ + "]";
	mes "How many would you like?";
	next;
	input @ammount;
	if (@ammount <= 0) goto L_BELOW;
	if (@ammount > 999) goto L_ABOVE;
	if (zeny < @value * @ammount) goto L_NOZENY;
	if (checkweight(@itemid,@ammount) == 0) goto L_WEIGHT;
	set Zeny,Zeny-@value*@ammount;
	getitem @itemid,@ammount;
	mes "[" + @name$ + "]";
	mes "Here you go.";
	close;

L_NOZENY:
	mes "You do not have enough zeny!";
	close;
L_WEIGHT:
	mes "You can't hold that many of that item!";
	close;
L_BELOW:
	mes "You have to buy a POSITIVE amount of items!";
	close;
L_ABOVE:
	mes "You can't buy this much of this item!";
	close;
}



//==============================================================================
// Ori/Elu Refiners
//==============================================================================
prt_in,63,69,4	script	Dietrich	84,{
	set @name$,"Dietrich";
	callfunc "orimain";
	end;
}
payon,137,178,4	script	Hakhim	88,{
	set @name$,"Hakhim";
	callfunc "orimain";
	end;
}
morocc_in,72,32,4	script	Abdul	99,{
	set @name$,"Abdul";
	callfunc "orimain";
	end;
}
alberta_in,21,63,5	script	Xenophon	84,{
	set @name$,"Xenophon";
	callfunc "orimain";
	end;
}
yuno_in01,171,22,6	script	Delayt	88,{
	set @name$,"Delayt";
	callfunc "orimain";
	end;
}
ein_in01,18,82,6	script	Matestein	84,{
	set @name$,"Matestein";
	callfunc "orimain";
	end;
}
lhz_in02,281,24,5	script	Fruel	84,{
	set @name$,"Fruel";
	callfunc "orimain";
	end;
}

//============================================================
//= Ori/Elu Functions
//============================================================
function	script	orimain	{
	if(@chris == 1) goto M_Menu;
	mes "[" + @name$ + "]";
	mes "If you bring Rough Oridecons and";
	mes "Rough Eluniums to me,";
	mes "I can refine them for you.";
	mes "However, you must bring 5 of each.";
	M_Menu:
	set @chris, 0;
	next;
	menu "Make Oridecon",M_Ori, "Make Elunium",M_Elu, "Ask about enchanted stones",M_Stones;

	M_Ori:
		if(countitem(756) < 5) goto L_NoOri;
		delitem 756,5;
		getitem 984,1;
		mes "[" + @name$ + "]";
		mes "As promised, here's your oridecon.";
		mes "Come back again anytime.";
		close;

		L_NoOri:
			mes "[" + @name$ + "]";
			mes "Huh? You're kidding, right? Didn't I say I can't make you an Oridecon unless you bring me 5 rough ones?";
			close;
	M_Elu:
		if(countitem(757) < 5) goto L_NoElu;
		delitem 757,5;
		getitem 985,1;
		mes "[" + @name$ + "]";
		mes "As promised, here's your elunium.";
		mes "Come back again anytime.";
		close;

		L_NoElu:
			mes "[" + @name$ + "]";
			mes "Huh? You're kidding, right? Didn't I say I can't make you an Elunium unless you bring me 5 rough ones?";
			close;
	M_Stones:
		mes "[" + @name$ + "]";
		mes "Enchanted stones, huh...";
		next;
		mes "[" + @name$ + "]";
		mes "Well, in the 20 years that I've been a stone smith I've heard of them many times... though I've never actually seen them before.";
		next;
		mes "[" + @name$ + "]";
		mes "I've been told that enchanted stones possess different elemental properties such as ^5533FFWater, Earth, Fire, and Wind^000000.";
		next;
		mes "[" + @name$ + "]";
		mes "If someone combines an Enchanted Stone with a weapon during the refining process, that weapon will possess the same property as the stone.";
		next;
		mes "[" + @name$ + "]";
		mes "Of course, that person needs to be skillful enough to work on it.";
		goto M_Menu;
}



//=====================================================================================
// Equipment Repairmen
//=====================================================================================
prt_in,62,54,2	script	Grendal	84,{
	set @name$,"Grendal";
	callfunc "repairmain";
	end;
}
//Temp Spot, Not Sure Where To place
payon,149,182,2	script	Repairman#01	88,{
	set @name$,"Repairman";
	callfunc "repairmain";
	end;
}
morocc_in,71,40,2	script	Repairman#02	99,{
	set @name$,"Repairman";
	callfunc "repairmain";
	end;
}
lhz_in02,284,14,3	script	Repairman#03	86,{
	set @name$,"Repairman";
	callfunc "repairmain";
	end;
}

//============================================================
//= Equipment Repair Function
//============================================================
function	script	repairmain	{
	set @repairprice,5000;
	mes "[" + @name$ + "]";
	mes "I am the Repair Smith and I can repair any Arms you want.";
	mes "Tell me which Equipment you want to repair.";
	next;
	if(getbrokenid(1)==NULL) {
		mes "[" + @name$ + "]";
		mes "Looks like you don't need anything repaired today...";
		close;
	}
	set @choice,select(getitemname(getbrokenid(1)),getitemname(getbrokenid(2)),
		getitemname(getbrokenid(3)),getitemname(getbrokenid(4)),getitemname(getbrokenid(5)),
		getitemname(getbrokenid(6)),getitemname(getbrokenid(7)),getitemname(getbrokenid(8)),
		getitemname(getbrokenid(9)),getitemname(getbrokenid(10)));
	mes "[" + @name$ + "]";
	mes "You're gonna repair " + getitemname(getbrokenid(@choice)) + ".";
	mes "To repair this, I need " + @repairprice + " Zeny.";
	mes "Continue?";
	next;
	if(select("Yes","No") == 2) {
		mes "[" + @name$ + "]";
		mes "Ok, but don't expect to be using that...";
		close;
	}
	if (Zeny < @repairprice) {
		mes "[" + @name$ + "]";
		mes "Is it all you got?";
		mes "Unfortunately, I have kids to feed...";
		close;
	}
	set Zeny,Zeny-@repairprice;
	repair(@choice);
	close;

}