somebod can help me to change list sell card into sell costume item??
//===== rAthena Script =======================================
//= Card Trader
//===== By: ==================================================
//= Euphy
//===== Current Version: =====================================
//= 1.1
//===== Compatible With: =====================================
//= rAthena SVN
//===== Description: =========================================
//= Exchange cards for points.
//============================================================
prontera,195,170,4 script Costume Trader 10044,{
mes "[^995050Costume Trader^000000]";
mes "Hi, "+strcharinfo(0)+"!";
mes "What can I do for you?";
next;
switch(select(" > Information: > Trade in costume: > Point shop (^0055FF"+getd(.Points$)+"^000000): > Leave")) {
case 1:
mes "[^995050Card Captor Sakura^000000]";
mes "Do you find that you've got";
mes "useless Costume lying around?";
mes "I'll be glad to take them off";
mes "your hands!";
next;
mes "[^995050Card Captor Sakura^000000]";
mes "I'll give you";
mes "^0055FF"+.Points[0]+" Point"+((.Points[0] == 1)?"":"s")+"^000000 for Low Costume.";
mes "^0055FF"+.Points[1]+" Point"+((.Points[1] == 1)?"":"s")+"^000000 for Low Medium.";
mes "^0055FF"+.Points[2]+" Point"+((.Points[2] == 1)?"":"s")+"^000000 for Low Rare.";
mes "^0055FF"+.Points[3]+" Point"+((.Points[3] == 1)?"":"s")+"^000000 for Low Special.";
mes "You can trade those points";
mes "for items later on.";
mes "How does that sound?";
emotion e_cash;
close;
case 2:
mes "[^995050Card Captor Sakura^000000]";
mes "Select the cards you";
mes "want to trade in.";
if (.Level) {
mes " ";
mes "They must be dropped";
mes "by monsters of level";
mes .Level+" and above.";
}
deletearray @sold_nameid[0],getarraysize(@sold_nameid);
callshop "card_shop",2;
npcshopattach "card_shop";
end;
case 3:
mes "[^995050Card Captor Sakura^000000]";
mes "You have ^0055FF"+getd(.Points$)+"^000000 Point"+((getd(.Points$) == 1)?".":"s.");
callshop "card_shop",1;
npcshopattach "card_shop";
end;
case 4:
mes "[^995050Card Captor Sakura^000000]";
mes "*yawn*";
mes "See you later!";
emotion e_yawn;
close;
}
OnSellItem:
mes "Cards to sell:";
mes "-----------------------------------";
for(set .@i,0; .@i<getarraysize(@sold_nameid); set .@i,.@i+1)
if (@sold_nameid[.@i] > 4000 && @sold_nameid[.@i] < 4700) {
if (.Level) {
query_sql("SELECT `LV` FROM `mob_db` WHERE `DropCardid` = "+@sold_nameid[.@i],.@lv);
if (.@lv < .Level) {
dispbottom getitemname(@sold_nameid[.@i])+" is under the minimum level.";
continue;
}
}
set .@card_id[getarraysize(.@card_id)], @sold_nameid[.@i];
set .@card_amt[getarraysize(.@card_amt)], @sold_quantity[.@i];
set .@class2, compare(.class2$,""+@sold_nameid[.@i]);
set .@class3, compare(.class3$,""+@sold_nameid[.@i]);
set .@class4, compare(.class4$,""+@sold_nameid[.@i]);
mes ((.@class2 || .@class3 || .@class4)?" ^FF0000":" ^777777")+@sold_quantity[.@i]+"x "+getitemname(@sold_nameid[.@i])+"^000000";
if(.@class2) { .@class=1; }
else if(.@class3) { .@class=2; }
else if(.@class4) { .@class=3; }
else { .@class=0; }
set .@card_total, .@card_total+ ( @sold_quantity[.@i]* .Points[.@class] );
}
deletearray @sold_nameid[0], getarraysize(@sold_nameid);
deletearray @sold_quantity[0], getarraysize(@sold_quantity);
if (!.@card_id) {
mes " ^777777(none)^000000";
emotion e_swt;
close;
}
mes " ";
mes "---------- Total: ^0055FF"+.@card_total+" pt.^000000 -------";
next;
if(select(" > ^0055FFComplete trade...^000000: > ^777777Cancel^000000") == 2) {
mes "[Card Trader]";
mes "Oh, okay...";
emotion e_hmm;
close;
}
for(set .@i,0; .@i<getarraysize(.@card_id); set .@i,.@i+1)
delitem .@card_id[.@i],.@card_amt[.@i];
setd .Points$, getd(.Points$)+.@card_total;
mes "[Card Trader]";
mes "All done!";
emotion e_ho;
close;
OnBuyItem:
for(set .@i,0; .@i<getarraysize(@bought_nameid); set .@i,.@i+1)
for(set .@j,0; .@j<getarraysize(.Shop); set .@j,.@j+2)
if (@bought_nameid[.@i] == .Shop[.@j]) {
set .@cost, .@cost+(.Shop[.@j+1]*@bought_quantity[.@i]);
break;
}
if (.@cost > getd(.Points$)) {
mes "[Card Trader]";
mes "You don't have enough Points.";
emotion e_omg;
}
else {
mes "Items purchased:";
mes "-----------------------------------";
for(set .@i,0; .@i<getarraysize(@bought_nameid); set .@i,.@i+1) {
getitem @bought_nameid[.@i], @bought_quantity[.@i];
mes " ^777777"+@bought_quantity[.@i]+"x "+getitemname(@bought_nameid[.@i])+"^000000";
}
mes " ";
mes "---------- Total: ^0055FF"+.@cost+" pt.^000000 -------";
setd .Points$, getd(.Points$)-.@cost;
emotion e_cash;
}
deletearray @bought_nameid[0], getarraysize(@bought_nameid);
deletearray @bought_quantity[0], getarraysize(@bought_quantity);
close;
OnInit:
set .Level,0; // Minimum monster level to trade corresponding cards.
set .Points$,"#Card_Points"; // Variable to store points.
setarray .Shop[0], // Card Shop items: <ID>,<point cost>
5027,10, 18505,10, 5176,10, 5305,20;
//setarray .Points[0],5,100; // Points per <normal card>,<MVP card>
setarray .Points[0],1,2,3,4; // Points per <Class 1>,<Class 2>,<Class 3>,<Class 4>
set .class1$,
"501,502";
set .class2$, // Class 2 cards | Those not within Class 2 ~4 are all Class 1
"503,504";
set .class3$,
"505,506";
set .class4$, // List of MVP cards. | Previously .MVP$
"507,508";
npcshopdelitem "card_shop",909;
for(set .@i,0; .@i<getarraysize(.Shop); set .@i,.@i+2)
npcshopadditem "card_shop",.Shop[.@i],.Shop[.@i+1];
end;
}
- shop card_shop -1,909:-1
more info what i want :
how to change this part to read array from class1,class2,class3,class4
OnSellItem:
mes "Cards to sell:";
mes "-----------------------------------";
for(set .@i,0; .@i<getarraysize(@sold_nameid); set .@i,.@i+1)
if (@sold_nameid[.@i] > 4000 && @sold_nameid[.@i] < 4700) {
if (.Level) {
query_sql("SELECT `LV` FROM `mob_db` WHERE `DropCardid` = "+@sold_nameid[.@i],.@lv);
if (.@lv < .Level) {
dispbottom getitemname(@sold_nameid[.@i])+" is under the minimum level.";
continue;
}
}
set .@card_id[getarraysize(.@card_id)], @sold_nameid[.@i];
set .@card_amt[getarraysize(.@card_amt)], @sold_quantity[.@i];
set .@class2, compare(.class2$,""+@sold_nameid[.@i]);
set .@class3, compare(.class3$,""+@sold_nameid[.@i]);
set .@class4, compare(.class4$,""+@sold_nameid[.@i]);
mes ((.@class2 || .@class3 || .@class4)?" ^FF0000":" ^777777")+@sold_quantity[.@i]+"x "+getitemname(@sold_nameid[.@i])+"^000000";
if(.@class2) { .@class=1; }
else if(.@class3) { .@class=2; }
else if(.@class4) { .@class=3; }
else { .@class=0; }
set .@card_total, .@card_total+ ( @sold_quantity[.@i]* .Points[.@class] );
}
deletearray @sold_nameid[0], getarraysize(@sold_nameid);
deletearray @sold_quantity[0], getarraysize(@sold_quantity);
if (!.@card_id) {
mes " ^777777(none)^000000";
emotion e_swt;
close;
}
mes " ";
mes "---------- Total: ^0055FF"+.@card_total+" pt.^000000 -------";
next;
if(select(" > ^0055FFComplete trade...^000000: > ^777777Cancel^000000") == 2) {
mes "[Card Trader]";
mes "Oh, okay...";
emotion e_hmm;
close;
}
for(set .@i,0; .@i<getarraysize(.@card_id); set .@i,.@i+1)
delitem .@card_id[.@i],.@card_amt[.@i];
setd .Points$, getd(.Points$)+.@card_total;
mes "[Card Trader]";
mes "All done!";
emotion e_ho;
close;
this array
//setarray .Points[0],5,100; // Points per <normal card>,<MVP card>
setarray .Points[0],1,2,3,4; // Points per <Class 1>,<Class 2>,<Class 3>,<Class 4>
set .class1$,
"501,502";
set .class2$, // Class 2 cards | Those not within Class 2 ~4 are all Class 1
"503,504";
set .class3$,
"505,506";
set .class4$, // List of MVP cards. | Previously .MVP$
"507,508";