prontera,155,179,5 script kjdhfkjshf 100,{
mes "this is an exchanger NPC";
.@s = select (
.exchange_list$[0] +" -> "+ .exchange_list$[1],
.exchange_list$[1] +" -> "+ .exchange_list$[0] ) -1;
mes "selected :-";
mes .exchange_list$[ .@s ];
mes " -> ";
mes .exchange_list$[ !.@s ];
while ( countitem( getd(".exchange_list"+ .@s +"["+ .@i +"]") ) >= getd(".exchange_list"+ .@s +"["+( .@i +1 )+"]" ) && .@i < .size[ .@s ] ) .@i += 2;
if ( .@i < .size[.@s] ) {
mes "not enough "+ getitemname( getd(".exchange_list"+ .@s +"["+ .@i +"]") );
close;
}
mes "input the amount that you can change";
for ( .@i = 0; .@i < .size[ .@s ]; .@i += 2 ) {
.@tmp[.@c] = countitem( getd(".exchange_list"+ .@s +"["+ .@i +"]") ) / getd(".exchange_list"+ .@s +"["+( .@i +1 )+"]");
if ( !.@max || .@max > .@tmp[.@c] )
.@max = .@tmp[.@c];
.@c++;
}
mes "max = "+ .@max;
next;
if ( input( .@input, 1, .@max ) ) {
mes "invalid amount";
close;
}
for ( .@i = 0; .@i < .size[ .@s ]; .@i += 2 )
delitem getd(".exchange_list"+ .@s +"["+ .@i +"]"), getd(".exchange_list"+ .@s +"["+( .@i +1 )+"]");
for ( .@i = 0; .@i < .size[ !.@s ]; .@i += 2 )
getitem getd(".exchange_list"+ !.@s +"["+ .@i +"]"), getd(".exchange_list"+ !.@s +"["+( .@i +1 )+"]");
close;
OnInit:
setarray .exchange_list0, 501,1 , 502,2 , 503,3 ;
setarray .exchange_list1, 504,1 ;
while ( .@j <= 1 ) {
.@i = 0;
.size[.@j] = getarraysize( getd(".exchange_list"+ .@j ) );
while ( .@i < .size[.@j] ) {
.exchange_list$[.@j] = .exchange_list$[.@j] + getd(".exchange_list"+ .@j +"["+( .@i +1 )+"]" ) +"x "+ getitemname( getd(".exchange_list"+ .@j +"["+ .@i +"]" ) ) +( ( .@i == .size[.@j] -2 )? "":" + " );
.@i += 2;
}
.@j++;
}
end;
}