prontera,150,150,0 script Exchanger 100,{
mes .npc$;
mes "Hello " +strcharinfo(0)+ ", I am the exchanger on this server. Do you have something to exchange?";
next;
if(select("Yes:No") - 1) close;
mes .npc$;
mes "You are charge to spend " +.req_zeny+ " zeny for using my service. Still want to use my service?";
next;
if (select("Yes:No") - 1) close;
if (Zeny < .req_zeny) {
mes .npc$;
mes "You do not have enough zeny for you to use my service";
close;
}
mes .npc$;
mes "Good then, What item you want to exchange?";
next;
getinventorylist;
for (.@i = 0; .@i < @inventorylist_count; .@i++) {
if (compare(.itemidcompare$, ":"+ @inventorylist_id[.@i] +":" ) ) {
.@menu$ = .@menu$ + getitemname( @inventorylist_id[.@i] ) +":";
.@select[ .@c ] = @inventorylist_id[.@i];
.@c++;
}
}
if (.@c == 0) {
mes .npc$;
mes "You have no items to exchange";
close;
}
.@pickid = .@select[select(.@menu$) - 1];
mes .npc$;
mes "You want to exchange " +getitemname(.@pickid)+ " right?";
next;
if (select("Yes:No") - 1) close;
mes .npc$;
mes "Where do you want to exchange your " +getitemname(.@pickid)+ "?";
next;
.@menu$ = getitemname(.itemid);
for (.@i = 1; .@i < .itemidsize; .@i++)
.@menu$ = .@menu$ + ":" + getitemname(.itemid[.@i]);
.@tradeid = .itemid[select( .@menu$ ) -1];
mes .npc$;
mes "Are you sure you want to spend " +.req_zeny+ " zeny for trading " +getitemname(.@pickid) + " into " + getitemname(.@tradeid)+ "?";
next;
if (select("Yes:No") - 1) close;
if (countitem(.@pickid) == 0 || Zeny < .req_zeny) {
mes .npc$;
mes "You do not meet the requirements";
close;
}
getinventorylist;
for(set .@i,0; .@i < @inventorylist_count; set .@i,.@i+1){
if( @inventorylist_id[.@i] == .@pickid ) {
set .@refine_rate, @inventorylist_refine[.@i];
}
}
delitem .@pickid, 1;
if ( !.@refine_rate )
getitem .@tradeid, 1;
else
getitem2 .@tradeid,1,1,.@refine_rate,0,@card1,@card2,@card3,@card4;
set Zeny,Zeny - .req_zeny;
mes .npc$;
mes "===================================";
mes "Official Receipt";
mes "===================================";
mes "From : " +getitemname(.@pickid);
mes "To : " +getitemname(.@tradeid);
mes "===================================";
next;
mes .npc$;
mes "Thank you for using our trading system " +strcharinfo(0)+ ". Have a nice day";
close;
OnInit:
set .npc$,"^FF0000" +strnpcinfo(1)+ "^000000"; // NPC Name
.req_zeny = 0; // Zeny to use the service.
setarray .itemid, 1618, 1604; // Put all id here
set .itemidsize, getarraysize( .itemid );
set .itemidcompare$, ":"+ .itemid[0];
for ( .@i = 1; .@i < .itemidsize; .@i++ )
.itemidcompare$ = .itemidcompare$ +":"+ .itemid[.@i] +":";
end;
}
Try this one. Didn't test though and BTW i am not @Skorm i am @Patskie