viewing paste Unknown #43330 | Text

Posted on the
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105
//Made by Lunar
//Version 1.6
//6.1.09
 
-       shop    mydonate412     -1,501:50
prontera,116,151,5,     script  3D Costumes     479,{
        set @i,0;
        mes "[3D Quest]";
        mes "Which item do you wish to obtain?";
        mes "Select only one.";
        callshop "mydonate412",1;
        npcshopattach "mydonate412";
        end;
 
OnBuyItem:
        if(.BuildQuest) {
                for(set .e,0; !compare(getarg(.e+1) + "","Zeny"); set .e,.e+2) {}
                npcshopadditem "mydonate412",getarg(.e+2),getarg(.e)*compare(getarg(.e+1) + "","SZeny");
                setarray .Shop[.i],getarg(.e+2);
                set .i,.i+1;
                goto Quest_Setup;
        }
        if(.Shop[@i]!=@bought_nameid) for(set @i,1; 1; set @i,@i+1) if(.Shop[@i]==@bought_nameid) { set .i,@i; callsub Quest_Setup; }
        for(set @i,1; !@e; set @i,@i+1) if(.Shop[@i]==@bought_nameid) { set @e,1; set .i,@i; callsub Quest_Setup; }
        mes "[Dynamic Quest NPC]";
        mes "I require the following:";
        for(set @i,0; !compare(getarg(@i+1) + "","Zeny"); set @i,@i+2) mes "^FF0000" + ((countitem(getarg(@i))>=getarg(@i+1))? "^00FF00":"") + "" + getarg(@i+1) + " " + getitemname(getarg(@i)) + " [" + countitem(getarg(@i)) + "/" + getarg(@i+1) + "]";
        if(getarg(@i)) mes "^FF0000" + ((Zeny>=getarg(@i))? "^00FF00":"") + "" + getarg(@i) + " Zeny";
        mes "^000000In exchange, I will give you:^0000FF";
        for(set @i,@i+2; getarg(@i+1,0); set @i,@i+2) mes getarg(@i+1) + " " + getitemname(getarg(@i));
        switch(select("Exchange:" + (((((getiteminfo(@bought_nameid,5) & 1) || (getiteminfo(@bought_nameid,5) & 256) || (getiteminfo(@bought_nameid,5) & 512)) && @equip==0))? "Preview Item":"") + ":No thanks")) {
                case 1:
                        for(set @i,0; !compare(getarg(@i+1) + "","Zeny"); set @i,@i+2) if(countitem(getarg(@i)) < getarg(@i+1)) {
                                next;
                                mes "You have " + countitem(getarg(@i)) + " " + getitemname(getarg(@i)) + ", while I require " + getarg(@i+1) + ".";
                                mes "Please obtain ^FF0000" + (getarg(@i+1)-countitem(getarg(@i))) + " more " + getitemname(getarg(@i)) + "^000000.";
                                close;
                        }
                        if(Zeny < getarg(@i)) {
                                next;
                                mes "You do not have enough Zeny.";
                                mes "Please obtain ^FF0000" + (getarg(@i)-Zeny) + " more Zeny^000000.";
                                close;
                        }
                        for(set @i,0; !compare(getarg(@i+1) + "","Zeny"); set @i,@i+2) delitem getarg(@i),getarg(@i+1);
                        set Zeny,Zeny-getarg(@i);
                        for(set @i,@i+2; getarg(@i+1,0); set @i,@i+2) getitem getarg(@i),getarg(@i+1);
                        if (compare(getarg(@i,0) + "","announce")) announce strcharinfo(0) + " has just made " + getitemname(@bought_nameid) + "!",bc_all;
                        close;
                case 2:
                        set @bottomview, getlook(3);
                        set @topview, getlook(4);
                        set @midview, getlook(5);
                        addtimer 1000, strnpcinfo(3)+"::On_Leave";
                        set @equip,getiteminfo(@bought_nameid, 5);
                        set @view, getiteminfo(@bought_nameid, 11);
                        if(@equip != -1 && @view > 0) {
                                if(@equip & 1) atcommand "@changelook 3 " + @view;
                                if(@equip & 256) atcommand "@changelook 1 " + @view;
                                if(@equip & 512) atcommand "@changelook 2 " + @view;
                        }
                        next;
                        goto OnBuyItem;
                case 3:
                        close;
        }
On_Leave:
        atcommand "@changelook 1 " + @topview;
        atcommand "@changelook 2 " + @midview;
        atcommand "@changelook 3 " + @bottomview;
        set @equip,0;
        set @view,0;
        set @topview,0;
        set @midview,0;
        set @bottomview,0;
        end;
OnInit:
        npcshopdelitem "mydonate412",501;
        set .BuildQuest,1;
        set .i,1;
Quest_Setup:
    switch(.i) {
        default: set .BuildQuest,0; set .e,0; set .i,0; end;
         case 1: callsub OnBuyItem,670,20,31218,4,31196,4,6242,500,7227,500,0,"SZeny",31313,1,"announce";
         case 2: callsub OnBuyItem,670,20,31214,4,31192,4,6242,500,7227,500,0,"SZeny",31286,1,"announce";
         case 3: callsub OnBuyItem,670,20,31215,4,31193,4,6242,500,7227,500,0,"SZeny",31292,1,"announce";
         case 4: callsub OnBuyItem,670,20,31216,4,31194,4,6242,500,7227,500,0,"SZeny",31289,1,"announce";      
         case 5: callsub OnBuyItem,670,20,31217,4,31195,4,6242,500,7227,500,0,"SZeny",31285,1,"announce";      
         case 6: callsub OnBuyItem,670,20,31111,3,31223,3,31234,3,6242,500,7227,500,0,"SZeny",31249,1,"announce";
         case 7: callsub OnBuyItem,670,20,31114,3,31226,3,31231,3,6242,500,7227,500,0,"SZeny",31272,1,"announce";      
         case 8: callsub OnBuyItem,670,20,31113,3,31225,3,31230,3,6242,500,7227,500,0,"SZeny",31253,1,"announce";
         case 9: callsub OnBuyItem,670,20,31112,3,31224,3,31229,3,6242,500,7227,500,0,"SZeny",31252,1,"announce";
         case 10: callsub OnBuyItem,670,20,31115,20,31227,3,31233,3,6242,500,7227,500,0,"SZeny",31245,1,"announce";
         case 11: callsub OnBuyItem,670,20,5361,4,31238,4,6242,500,7227,500,0,"SZeny",31314,1,"announce";      
         case 12: callsub OnBuyItem,670,20,31190,4,31235,4,6242,500,7227,500,0,"SZeny",31290,1,"announce";
         case 13: callsub OnBuyItem,670,20,31191,4,31239,4,6242,500,7227,500,0,"SZeny",31266,1,"announce";
         case 14: callsub OnBuyItem,670,20,31186,4,31236,4,6242,500,7227,500,0,"SZeny",31315,1,"announce";
         case 15: callsub OnBuyItem,670,20,31189,4,31237,4,6242,500,7227,500,0,"SZeny",31278,1,"announce";
 
 
    }
}
 
 
 
Viewed 586 times, submitted by unknown.