Jump to content
  • 0

I Can Not Change Item And Point Item Trader


Question

Posted (edited)

I Want Change Item And Point 

morocc,132,98,5    script    Bring Shopping    122,{
    mes "[Item Trader]";
    mes "Hi, "+strcharinfo(0)+"!";
    mes "What can I do for you?";
    next;
    switch(select(" > Information: > Trade in Items: > Point shop (^0055FF"+getd(.Points$)+"^000000): > Leave")) {
    case 1:
        mes "[Item Trader]";
        mes "Do you find that you've got";
        mes "useless Items lying around?";
        mes "I'll be glad to take them off";
        mes "your hands!";
        next;
        mes "[Item Trader]";
        mes "I'll give you ^0055FF"+.Points[0]+" Point"+((.Points[0] == 1)?"":"s")+"^000000 for normal Item each"; 
        mes "Item you give me, and";
        mes "^0055FF"+.Points[1]+" Points^000000 for Items.";
        mes "You can trade those points";
        mes "for items later on.";
        mes "How does that sound?";
        emotion ET_MONEY;
        close;
    case 2:
        mes "[Item Trader]";
        mes "Select the Items 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 "item_shopp",2;
        npcshopattach "item_shopp";
        end;
    case 3:
        mes "[Item Trader]";
        mes "You have ^0055FF"+getd(.Points$)+"^000000 Point"+((getd(.Points$) == 1)?".":"s.");
        callshop "item_shopp",1;
        npcshopattach "item_shopp";
        end;
    case 4:
        mes "[Item Trader]";
        mes "*yawn*";
        mes "See you later!";
        emotion ET_SLEEPY;
        close;        
    }

OnSellItem:
    mes "Items 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 `DropItemid` = "+@sold_nameid[.@i],.@lv);
                if (.@lv < .Level) {
                    dispbottom getitemname(@sold_nameid[.@i])+" is under the minimum level.";
                    continue;
                }
            }
            set .@Item_id[getarraysize(.@Item_id)], @sold_nameid[.@i];
            set .@Item_amt[getarraysize(.@Item_amt)], @sold_quantity[.@i];
            set .@item, compare(.ITEM$,""+@sold_nameid[.@i]);
            mes ((.@item)?"  ^FF0000":"  ^777777")+@sold_quantity[.@i]+"x "+getitemname(@sold_nameid[.@i])+"^000000";
            set .@Item_total, .@Item_total+(@sold_quantity[.@i]*((.@item)?.Points[1]:.Points[0]));
        }
    deletearray @sold_nameid[0], getarraysize(@sold_nameid);
    deletearray @sold_quantity[0], getarraysize(@sold_quantity);
    if (!.@Item_id) {
        mes "  ^777777(none)^000000";
        emotion ET_SWEAT;
        close;
    }
    mes " ";
    mes "---------- Total: ^0055FF"+.@Item_total+" pt.^000000 -------";
    next;
    if(select(" > ^0055FFComplete trade...^000000: > ^777777Cancel^000000") == 2) {
        mes "[Item Trader]";
        mes "Oh, okay...";
        emotion ET_SCRATCH;
        close;
    }
    for(set .@i,0; .@i<getarraysize(.@Item_id); set .@i,.@i+1)
        delitem .@Item_id[.@i],.@Item_amt[.@i];
    setd .Points$, getd(.Points$)+.@Item_total;
    mes "[Item Trader]";
    mes "All done!";
    emotion ET_DELIGHT;
    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 "[Item Trader]";
        mes "You don't have enough Points.";
        emotion ET_HUK;
    }
    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 ET_MONEY;
    }
    deletearray @bought_nameid[0], getarraysize(@bought_nameid);
    deletearray @bought_quantity[0], getarraysize(@bought_quantity);
    close;

OnInit:
    //waitingroom "Item Trader",0;
    set .Level,0;           // Minimum monster level to trade corresponding Items.  
    set .Points$,"#Item_Points";    // Variable to store points.
    setarray .Shop[0],        // Item Shop items: <ID>,<point cost>
    512,10; 
    setarray .Points[0],1,1,1,1;    // Points per <normal Item>,<Item> 
    set .ITEM$,            // List of Items.
    "2504,2311"+
    "2403,2103";

    
    npcshopdelitem "item_shopp",909;
    for(set .@i,0; .@i<getarraysize(.Shop); set .@i,.@i+2)
        npcshopadditem "item_shopp",.Shop[.@i],.Shop[.@i+1];
    end;
}
-    shop    item_shopp    -1,909:-1

 

Edited by Emistry
codebox

1 answer to this question

Recommended Posts

  • 0
Posted

Please use CODE BOX next time.

You can change it here:

OnInit:
    //waitingroom "Item Trader",0;
    set .Level,0;           // Minimum monster level to trade corresponding Items.  
    set .Points$,"#Item_Points";    // Variable to store points.
    setarray .Shop[0],        // Item Shop items: <ID>,<point cost>
    512,10; 
    setarray .Points[0],1,1,1,1;    // Points per <normal Item>,<Item> 
    set .ITEM$,            // List of Items.
    "2504,2311"+
    "2403,2103"; 

 

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...