// http://www.emistry.net/board/index.php?threads/refine-one-click.552/ prontera,155,175,5 script Refiner#one_click 4_F_KAFRA9,{ function func_getitemname; .@zeny = 10000; .@max_refine = 20; for ( .@i = EQI_HEAD_TOP; .@i <= EQI_SHOES; .@i++ ) { .@itemid = getequipid( .@i ); .@refine = getequiprefinerycnt( .@i ); if ( .@itemid != -1 && .@refine < .@max_refine ) { .@menu$ += func_getitemname( .@refine,.@itemid ); .@count++; } .@menu$ += ":"; } if ( .@count ) { mes "Pick items to refine."; .@i = select( .@menu$ ); .@itemid = getequipid( .@i ); .@refine = getequiprefinerycnt( .@i ); mes "Refine to ... "; input .@refine_count,0,.@max_refine; if ( .@refine_count ) { .@ore = (( getiteminfo( .@itemid,2 ) == IT_ARMOR ) ? 985:984 ); if ( !countitem( .@ore ) ) { mes "You need "+getitemname( .@ore ); close; } while ( countitem( .@ore ) && getequiprefinerycnt( .@i ) < .@refine_count ) { if ( Zeny < .@zeny ) { mes "Not enough zeny."; close;; } Zeny -= .@zeny; delitem .@ore,1; .@rate = rand( 100 ); if ( .@rate < getequippercentrefinery( .@i ) ) { successrefitem .@i; .@refine = getequiprefinerycnt( .@i ); mes "Success. "+func_getitemname( .@refine,.@itemid ); } else { failedrefitem .@i; mes "Refine Failed."; break; } sleep2 100; } } } else { mes "No Equipments."; } close; function func_getitemname { .@refine = getarg( 0,0 ); .@itemid = getarg( 1 ); .@name$ = getitemname( .@itemid )+" ["+getitemslots( .@itemid )+"]"; if ( .@refine ) .@name$ = "+"+.@refine+" " + .@name$; return .@name$; } }