Jump to content
  • 0

Request Refiner for item


Question

Posted (edited)

Hi guys, i im using the oficial refiner. So, for example when im go to the refiner the npc give to me my shoes to the safe limit. Shoes + 4.

 

Now i need some NPC to refine 100% Safe for some Item. For example i have my shoes + 4, then the NPC will ask me for some item to refine it to +5 100% Safe... and so on..

 

Sorry for my bad english. and thanks

Edited by eclud

4 answers to this question

Recommended Posts

  • 0
Posted (edited)

try this one

prt_in,61,54,3 script Refiner 826,{
OnUsed:
set .Mode,0; // Refine mode [ 0 = Refine +1 Each time  / 1 = Refine to Max Limit ]
set .EquipCheck,1; // Check Equips is refineable or not. [ 0 = Disable / 1 = Enable ]
set .MaxRefine,4; // Max Refine Limit
set .MaxRefine2,7; // Max Refine Limit [ for Mode 2 Max Refine ]
set .TicketID,7539; // Ticket ID

if( countitem(.TicketID) < 1 ){
mes "You don't have "+getitemname(.TicketID)+" to continue this proses.";
end;
}

switch(select( ( getequiprefinerycnt(1) >= .MaxRefine2 || getequipisequiped(1) == 0 )?"":"Headgear [ ^4EEE94"+getequipname(1)+"^000000 ]",
( getequiprefinerycnt(2) >= .MaxRefine2 || getequipisequiped(2) == 0 )?"":"Armor [ ^4EEE94"+getequipname(2)+"^000000 ]",
( getequiprefinerycnt(3) >= .MaxRefine2 || getequipisequiped(3) == 0 )?"":"Left Hand [ ^4EEE94"+getequipname(3)+"^000000 ]",
( getequiprefinerycnt(4) >= .MaxRefine2 || getequipisequiped(4) == 0 )?"":"Right Hand [ ^4EEE94"+getequipname(4)+"^000000 ]",
( getequiprefinerycnt(5) >= .MaxRefine2 || getequipisequiped(5) == 0 )?"":"Garment [ ^4EEE94"+getequipname(5)+"^000000 ]",
( getequiprefinerycnt(6) >= .MaxRefine2 || getequipisequiped(6) == 0 )?"":"Shoes [ ^4EEE94"+getequipname(6)+"^000000 ]",
"^FF0000end^000000")) {
Case 1:
if ( .Mode == 0 ) { callsub RefineSystem,1; }
if ( .Mode == 1 ) { callsub MaxRefineSystem,1; }
if ( .Mode == 2 ) { callsub NewRefineSystem,1; }
Case 2:
if ( .Mode == 0 ) { callsub RefineSystem,2; }
if ( .Mode == 1 ) { callsub MaxRefineSystem,2; }
if ( .Mode == 2 ) { callsub NewRefineSystem,2; }
Case 3:
if ( .Mode == 0 ) { callsub RefineSystem,3; }
if ( .Mode == 1 ) { callsub MaxRefineSystem,3; }
if ( .Mode == 2 ) { callsub NewRefineSystem,3; }
Case 4:
if ( .Mode == 0 ) { callsub RefineSystem,4; }
if ( .Mode == 1 ) { callsub MaxRefineSystem,4; }
if ( .Mode == 2 ) { callsub NewRefineSystem,4; }
Case 5:
if ( .Mode == 0 ) { callsub RefineSystem,5; }
if ( .Mode == 1 ) { callsub MaxRefineSystem,5; }
if ( .Mode == 2 ) { callsub NewRefineSystem,5; }
Case 6:
if ( .Mode == 0 ) { callsub RefineSystem,6; }
if ( .Mode == 1 ) { callsub MaxRefineSystem,6; }
if ( .Mode == 2 ) { callsub NewRefineSystem,6; }
Case 7: end;
}

RefineSystem:
if ( .EquipCheck == 1 && getequipisenableref(getarg(0)) == 0 ){
mes "I can't refine this item.because this item is unrefinable.";
end;
}
if(getequiprefinerycnt(getarg(0)) < .MaxRefine) {
mes "I can't refine this item.";
mes "You must refine to ^0000FF+4^000000";
mes "when you bring to me.";
end;
}
successrefitem (getarg(0));
message strcharinfo(0),"this item successuly upgrade.";
delitem .TicketID,1;
end;

MaxRefineSystem:
if ( .EquipCheck == 1 && getequipisenableref(getarg(0)) == 0 ){
mes "I can't refine this item.because this item is unrefinable.";
end;
}
for ( set .@i,getequiprefinerycnt(getarg(0)); getequiprefinerycnt(getarg(0)) < .MaxRefine; set .@i,getequiprefinerycnt(getarg(0)) ){
successrefitem (getarg(0));
}
message strcharinfo(0),"this item successuly upgrade.";
delitem .TicketID,1;
end;

NewRefineSystem:
if ( .EquipCheck == 1 && getequipisenableref(getarg(0)) == 0 ){
mes "I can't refine this item.because this item is unrefinable.";
end;
}
mes "i just can refine from +4 ~ +7.";
next;
while ( countitem(.TicketID) > 0 && getequiprefinerycnt(getarg(0)) < .MaxRefine ){ 
successrefitem (getarg(0));
delitem .TicketID,1;
}
while ( countitem(.TicketID) > 1 && getequiprefinerycnt(getarg(0)) > .MaxRefine && getequiprefinerycnt(getarg(0)) < .MaxRefine2 ){ 
successrefitem (getarg(0));
delitem .TicketID,1;
}
message strcharinfo(0),"this item successuly upgrade.";
end;

}
 

 this is will refine from +4 ~  +7 only and use poring coin to continue refine proses

Edited by Emistry
codebox
  • 0
Posted (edited)

try this one 

prt_in,61,54,3 script Refiner 826,{
OnUsed:
set .Mode,0; // Refine mode [ 0 = Refine +1 Each time  / 1 = Refine to Max Limit ]
set .EquipCheck,1; // Check Equips is refineable or not. [ 0 = Disable / 1 = Enable ]
set .MaxRefine,4; // Max Refine Limit
set .MaxRefine2,7; // Max Refine Limit [ for Mode 2 Max Refine ]
set .TicketID,7539; // Ticket ID

if( countitem(.TicketID) < 1 ){
mes "You don't have "+getitemname(.TicketID)+" to continue this proses.";
end;
}

switch(select( ( getequiprefinerycnt(1) >= .MaxRefine2 || getequipisequiped(1) == 0 )?"":"Headgear [ ^4EEE94"+getequipname(1)+"^000000 ]",
( getequiprefinerycnt(2) >= .MaxRefine2 || getequipisequiped(2) == 0 )?"":"Armor [ ^4EEE94"+getequipname(2)+"^000000 ]",
( getequiprefinerycnt(3) >= .MaxRefine2 || getequipisequiped(3) == 0 )?"":"Left Hand [ ^4EEE94"+getequipname(3)+"^000000 ]",
( getequiprefinerycnt(4) >= .MaxRefine2 || getequipisequiped(4) == 0 )?"":"Right Hand [ ^4EEE94"+getequipname(4)+"^000000 ]",
( getequiprefinerycnt(5) >= .MaxRefine2 || getequipisequiped(5) == 0 )?"":"Garment [ ^4EEE94"+getequipname(5)+"^000000 ]",
( getequiprefinerycnt(6) >= .MaxRefine2 || getequipisequiped(6) == 0 )?"":"Shoes [ ^4EEE94"+getequipname(6)+"^000000 ]",
"^FF0000end^000000")) {
Case 1:
if ( .Mode == 0 ) { callsub RefineSystem,1; }
if ( .Mode == 1 ) { callsub MaxRefineSystem,1; }
if ( .Mode == 2 ) { callsub NewRefineSystem,1; }
Case 2:
if ( .Mode == 0 ) { callsub RefineSystem,2; }
if ( .Mode == 1 ) { callsub MaxRefineSystem,2; }
if ( .Mode == 2 ) { callsub NewRefineSystem,2; }
Case 3:
if ( .Mode == 0 ) { callsub RefineSystem,3; }
if ( .Mode == 1 ) { callsub MaxRefineSystem,3; }
if ( .Mode == 2 ) { callsub NewRefineSystem,3; }
Case 4:
if ( .Mode == 0 ) { callsub RefineSystem,4; }
if ( .Mode == 1 ) { callsub MaxRefineSystem,4; }
if ( .Mode == 2 ) { callsub NewRefineSystem,4; }
Case 5:
if ( .Mode == 0 ) { callsub RefineSystem,5; }
if ( .Mode == 1 ) { callsub MaxRefineSystem,5; }
if ( .Mode == 2 ) { callsub NewRefineSystem,5; }
Case 6:
if ( .Mode == 0 ) { callsub RefineSystem,6; }
if ( .Mode == 1 ) { callsub MaxRefineSystem,6; }
if ( .Mode == 2 ) { callsub NewRefineSystem,6; }
Case 7: end;
}

RefineSystem:
if ( .EquipCheck == 1 && getequipisenableref(getarg(0)) == 0 ){
mes "I can't refine this item.because this item is unrefinable.";
end;
}
if(getequiprefinerycnt(getarg(0)) < .MaxRefine) {
mes "I can't refine this item.";
mes "You must refine to ^0000FF+4^000000";
mes "when you bring to me.";
end;
}
successrefitem (getarg(0));
message strcharinfo(0),"this item successuly upgrade.";
delitem .TicketID,1;
end;

MaxRefineSystem:
if ( .EquipCheck == 1 && getequipisenableref(getarg(0)) == 0 ){
mes "I can't refine this item.because this item is unrefinable.";
end;
}
for ( set .@i,getequiprefinerycnt(getarg(0)); getequiprefinerycnt(getarg(0)) < .MaxRefine; set .@i,getequiprefinerycnt(getarg(0)) ){
successrefitem (getarg(0));
}
message strcharinfo(0),"this item successuly upgrade.";
delitem .TicketID,1;
end;

NewRefineSystem:
if ( .EquipCheck == 1 && getequipisenableref(getarg(0)) == 0 ){
mes "I can't refine this item.because this item is unrefinable.";
end;
}
mes "i just can refine from +4 ~ +7.";
next;
while ( countitem(.TicketID) > 0 && getequiprefinerycnt(getarg(0)) < .MaxRefine ){ 
successrefitem (getarg(0));
delitem .TicketID,1;
}
while ( countitem(.TicketID) > 1 && getequiprefinerycnt(getarg(0)) > .MaxRefine && getequiprefinerycnt(getarg(0)) < .MaxRefine2 ){ 
successrefitem (getarg(0));
delitem .TicketID,1;
}
message strcharinfo(0),"this item successuly upgrade.";
end;

}

 this is will refine from +4 ~  +7 only and use poring coin to continue refine proses

 

 

 

 

EDIT: Its working now, but where i canchange the " I can refine this item but u must refine to +4" i mean i need this refine from 0 to 10, or from 3 to 10... Thanks please help me with this one

Edited by Emistry
codebox
  • 0
Posted

at this part

set .MaxRefine,3; // Max Refine Limit
set .MaxRefine2,10; // Max Refine Limit [ for Mode 2 Max Refine ]

that's for +3 ~ +10

Thanks a lot, it works great :) Solved

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...