Leaderboard
Popular Content
Showing content with the highest reputation on 11/27/17 in all areas
-
I´m meowf*ing back! rA get ready for me again :33!!!!!!!!!!!!!!!!!!3 points
-
View File Devil Tower Hello peoples, I've been asked recently to create official instances that aren't release on rathena yet. So here's my version of Devil Tower instance, based over infos took here and there, videos and divine-pride database, and DanielArt initial script. In the rar, you'll find all you need, including Instance file, mob, item and quest db. You'll still need up to date client (I personnaly use 20160201) to ensure the mobs are created client side. Have fun. Please, leave the credits and do not claim my work as yours. Submitter Alayne Submitted 11/12/2017 Category Games, Events, Quests Video Content Author Alayne1 point
-
Hello guys! I have been messing around with @Alayne's Sky Fortress script, and came across a problem: Vicious Mind Weapons Options. I have been searching around the Forum and learned the basic about Random Options, and it worked properly, but there is one thing that i don't know if i am doing right. Since Vicious Mind Weapons have 3 Slots of possible Options, and lets say for example, 3 kinds of Bonuses for each Slot (So lets say, Slot 1: Bonus A,B,C/ Slot 2: Bonus D,E,F / Slot 3: Bonus G,H,J), do i really have to write down a line for every single possibility (Line1 : A,D,G / Line 2, A,D,H) or is there some more cleaner way? It gets even harder when it comes to the random percentage on each Bonus :(. Please don't judge me as lazy or something like that, because i have already done this tideous and time consuming method, the problem is how huge the script is now :L. Thanks in advance and sorry for my bad english!1 point
-
Ok so ROC is now cleaned. Tell me if you still have issues. For the LR, I changed the warp out and the mob db, but the Fruit itself is supposed to work. The .@possibleReward[rand(getarraysize(.@possibleReward) - 1)] get an item from rank 0 to 2, so each one in the array as a chance to be looted, no need to add countitem in the array, as it's always 1.1 point
-
Yeah actually that's cause I'm used to work a bit from work (code only) and to test it when coming home. So you should always wait for me to post that you can go (or I'll add something in the commit comment so you'll be able to know if you can use it or no ^^)1 point
-
Version 1.0.0
232 downloads
Terms of Use * Do not claim this work as yours. * Do not edit, or alter any files, and matters associated with them, without approval from Kinx. * Do not distribute the files without permission from Kinx. Totoro Ballon , ea 1 Colors Totoro Ballon is a Old Custom I did it for TotoRo. This File Includes: Totoro Ballon Aura Spr and Act File BMP Item Icon BMP Collection Icon Inventory Spr and Act FileFree1 point -
1 point
-
Hum that's not the code portion I thought. I'll need to check that. So you say that leader create instance and enter, but no teammate can enter after that, is it?1 point
-
this the full npc not only the first part lhz_dun_n,135,264,4 script Memory of Tears 10092,{ disable_items; mes "I can Convert some items to energy debris in random from 1 to 5 what do you want"; next; menu "Exchange Items to Energy Debris",Z_EE,"Create Costume",Z_EEE,"Leave",Z_EXIT; Z_EE: mes "Done Thank you"; setarray .@itemsid,1284,1285,1290,18109,18110,18111,1745,18103,1647,1659,1654,2004,2005,13431,1196,13421,1584,13061,13062,13070,13046,13047,16017,16010,16000,16001,1433,1435,1490,1930,1963,1830,1393,1392; for(.@i=0;.@i<getarraysize(.@itemsid);.@i++){ callsub getitemsub,.@itemsid[.@i]; } goto Z_NOITEM; end; getitemsub: if(getequipid(EQI_HAND_R) == getarg(0) && countitem(getarg(0)) > 1){ delitem getarg(0),1; getitem 6820,rand(1,5); end; }else if(getequipid(EQI_HAND_R) != getarg(0) && countitem(getarg(0)) > 0){ delitem getarg(0),1; getitem 6820,rand(1,5); end; } return; Z_EEE: mes "I can also Exchange 50pcs energy debris and 1 3rd job head gear to 1 costume 3rd job items"; next; setarray .@options$,"Costume Rune Circlet:Costume Mitra:Costume Driver Band:Costume Driver Band (Yellow):Costume Shadow Crown:Costume Minstrel Song:Costume Midas Whisper:Costume Magic Stone Hat:Costume Burning Spirit:Costume Wispers of Wind:Costume Circlet of Bone:Costume Guardian Crown:Costume Camouflage of Rabbit Hood:Leave"; set .@choose,select(.@options$) - 1; setarray .@itemid1,18971,18972,18973,18974,18983,18976,18977,18978,18979,18980,18982,18983,18984;//items require setarray .@itemid2,19961,19962,19963,19964,19965,19966,19967,19968,19969,19970,19971,19972,19974;//items get if(.@choose == 13){//here the last option it's number is 13 if you added more items you need to change this goto Z_EXIT; } if(getequipid(EQI_HEAD_TOP) == .@itemid1[.@choose] && countitem(.@itemid1[.@choose]) > 1){ if(countitem(6820) < 50) goto Z_NOITEM; delitem 6820,50; delitem .@itemid1[.@choose],1; getitem .@itemid2[.@choose],1; mes "Thank you very very much!"; end; }else if(getequipid(EQI_HEAD_TOP) != .@itemid1[.@choose] && countitem(.@itemid1[.@choose]) > 0){ if(countitem(6820) < 50) goto Z_NOITEM; delitem 6820,50; delitem .@itemid1[.@choose],1; getitem .@itemid2[.@choose],1; mes "Thank you very very much!"; end; } Z_NOITEM: mes "You dont have enought items i need"; mes "Good bye."; close; Z_EXIT: mes "[Reaper]"; mes callfunc("F_Bye"); close; }1 point
-
1 point
-
i did optimize the first part in the script to make it work as you wanted lhz_dun_n,135,264,4 script Memory of Tears 10092,{ disable_items; mes "I can Convert some items to energy debris in random from 1 to 5 what do you want"; next; menu "Exchange Items to Energy Debris",Z_EE,"Create Costume",Z_EEE,"Leave",Z_EXIT; Z_EE: mes "Done Thank you"; setarray .@itemsid,1284,1285,1290,18109,18110,18111,1745,18103,1647,1659,1654,2004,2005,13431,1196,13421,1584,13061,13062,13070,13046,13047,16017,16010,16000,16001,1433,1435,1490,1930,1963,1830,1393,1392; for(.@i=0;.@i<getarraysize(.@itemsid);.@i++){ callsub getitemsub,.@itemsid[.@i]; } goto Z_NOITEM; end; getitemsub: if(getequipid(EQI_HAND_R) == getarg(0) && countitem(getarg(0)) > 1){ delitem getarg(0),1; getitem 6820,rand(1,5); end; }else if(getequipid(EQI_HAND_R) != getarg(0) && countitem(getarg(0)) > 0){ delitem getarg(0),1; getitem 6820,rand(1,5); end; } return; //if(countitem(1284) > 0) goto one; // if(countitem(1285) > 0) goto two; // if(countitem(1290) > 0) goto three; // if(countitem(18109) > 0) goto four; // if(countitem(18110) > 0) goto five; // if(countitem(18111) > 0) goto six; // if(countitem(1745) > 0) goto seven; // if(countitem(18103) > 0) goto eight; // if(countitem(1647) > 0) goto nine; // if(countitem(1659) > 0) goto ten; // if(countitem(1654) > 0) goto eleven; // if(countitem(2004) > 0) goto twelve; // if(countitem(2005) > 0) goto thirteen; // if(countitem(13431) > 0) goto fourteen; // if(countitem(1196) > 0) goto fifteen; // if(countitem(13421) > 0) goto sixteen; // if(countitem(1584) > 0) goto seventeen; // if(countitem(13061) > 0) goto eightteen; // if(countitem(13062) > 0) goto nineteen; // if(countitem(13070) > 0) goto twenty; // if(countitem(13046) > 0) goto twentyone; // if(countitem(13047) > 0) goto twentytwo; // if(countitem(16017) > 0) goto twentythree; // if(countitem(16010) > 0) goto twentyfour; // if(countitem(16000) > 0) goto twentyfive; // if(countitem(16001) > 0) goto twentysix; // if(countitem(1433) > 0) goto twentyseven; // if(countitem(1435) > 0) goto twentyeight; // if(countitem(1490) > 0) goto twentynine; // if(countitem(1930) > 0) goto thirty; // if(countitem(1963) > 0) goto thirtyone; // if(countitem(1830) > 0) goto thirtytwo; // if(countitem(1393) > 0) goto thirtythree; // if(countitem(1392) > 0) goto thirtyfour; // goto Z_NOITEM; //one: // delitem 1284,1; // getitem 6820,rand(1,5); // end; //two: // delitem 1285,1; // getitem 6820,rand(1,5); // end; //three: // delitem 1290,1; // getitem 6820,rand(1,5); // end; //four: // delitem 18109,1; // getitem 6820,rand(1,5); // end; //five: // delitem 18110,1; // getitem 6820,rand(1,5); // end; //six: // delitem 18111,1; // getitem 6820,rand(1,5); // end; //zeven: // delitem 1745,1; // getitem 6820,rand(1,5); // end; //eight: // delitem 18103,1; // getitem 6820,rand(1,5); // end; //nine: // delitem 1647,1; // getitem 6820,rand(1,5); // end; //ten: // delitem 1659,1; // getitem 6820,rand(1,5); // end; //eleven: // delitem 1654,1; // getitem 6820,rand(1,5); // end; //twelve: // delitem 2004,1; // getitem 6820,rand(1,5); // end; //thirteen: // delitem 2005,1; // getitem 6820,rand(1,5); // end; //fourteen: // delitem 13431,1; // getitem 6820,rand(1,5); // end; //fifteen: // delitem 1196,1; // getitem 6820,rand(1,5); // end; //sixteen: // delitem 13421,1; // getitem 6820,rand(1,5); // end; //seventeen: // delitem 1584,1; // getitem 6820,rand(1,5); // end; //eightteen: // delitem 13061,1; // getitem 6820,rand(1,5); //nineteen: // delitem 13062,1; // getitem 6820,rand(1,5); // end; //twenty: // delitem 13070,1; // getitem 6820,rand(1,5); // end; //twentyone: // delitem 13046,1; // getitem 6820,rand(1,5); // end; //twentytwo: // delitem 13047,1; // getitem 6820,rand(1,5); // end; //twentythree: // delitem 16017,1; // getitem 6820,rand(1,5); // end; //twentyfour: // delitem 16010,1; // getitem 6820,rand(1,5); // end; //twentyfive: // delitem 16000,1; // getitem 6820,rand(1,5); // end; //twentysix: // delitem 16001,1; // getitem 6820,rand(1,5); // end; //twentyseven: // delitem 1433,1; // getitem 6820,rand(1,5); // end; //twentyeight: // delitem 1435,1; // getitem 6820,rand(1,5); // end; //twentynine: // delitem 1490,1; // getitem 6820,rand(1,5); // end; //thirty: // delitem 1930,1; // getitem 6820,rand(1,5); // end; //thirtyone: // delitem 1963,1; // getitem 6820,rand(1,5); // end; //thirtytwo: // delitem 1830,1; // getitem 6820,rand(1,5); // end; //thirtythree: // delitem 1393,1; // getitem 6820,rand(1,5); // end; //thirtyfour: // delitem 1392,1; // getitem 6820,rand(1,5); // end; Z_EEE: mes "I can also Exchange 50pcs energy debris and 1 3rd job head gear to 1 costume 3rd job items"; next; menu "Costume Rune Circlet",Z_EEEE,"Costume Mitra",Z_EEEEE,"Costume Driver Band",Z_EEEEEE,"Costume Driver Band (Yellow)",Z_EEEEEEE,"Costume Shadow Crown",Z_EEEEEEEE,"Costume Minstrel Song",Z_EEEEEEEEE,"Costume Midas Whisper",Z_EEEEEEEEEE,"Costume Magic Stone Hat",Z_EEEEEEEEEEE,"Costume Burning Spirit",Z_EEEEEEEEEEEE,"Costume Wispers of Wind",Z_EEEEEEEEEEEEE,"Costume Circlet of Bone",Z_EEEEEEEEEEEEEE,"Costume Guardian Crown",Z_EEEEEEEEEEEEEEE,"Costume Camouflage of Rabbit Hood",Z_EEEEEEEEEEEEEEEE,"Leave",Z_EXIT; Z_EEEE: if(countitem(6820) < 50 || countitem(18971) < 1) GOTO Z_NOITEM; delitem 6820,50;//Items: Sombrero, delitem 18971,1;//Items: Feather_of_Birds, getitem 19961,1;//Items: Bird_Nest, mes "Thank you very very much!"; end; Z_EEEEE: if(countitem(6820) < 50 || countitem(18972) < 1) GOTO Z_NOITEM; delitem 6820,50;//Items: Sombrero, delitem 18972,1;//Items: Feather_of_Birds, getitem 19962,1;//Items: Bird_Nest, mes "Thank you very very much!"; end; Z_EEEEEE: if(countitem(6820) < 50 || countitem(18973) < 1) GOTO Z_NOITEM; delitem 6820,50;//Items: Sombrero, delitem 18973,1;//Items: Feather_of_Birds, getitem 19963,1;//Items: Bird_Nest, mes "Thank you very very much!"; end; Z_EEEEEEE: if(countitem(6820) < 50 || countitem(18974) < 1) GOTO Z_NOITEM; delitem 6820,50;//Items: Sombrero, delitem 18974,1;//Items: Feather_of_Birds, getitem 19964,1;//Items: Bird_Nest, mes "Thank you very very much!"; end; Z_EEEEEEEE: if(countitem(6820) < 50 || countitem(18974) < 1) GOTO Z_NOITEM; delitem 6820,50;//Items: Sombrero, delitem 18983,1;//Items: Feather_of_Birds, getitem 19965,1;//Items: Bird_Nest, mes "Thank you very very much!"; end; Z_EEEEEEEEE: if(countitem(6820) < 50 || countitem(18974) < 1) GOTO Z_NOITEM; delitem 6820,50;//Items: Sombrero, delitem 18976,1;//Items: Feather_of_Birds, getitem 19966,1;//Items: Bird_Nest, mes "Thank you very very much!"; end; Z_EEEEEEEEEE: if(countitem(6820) < 50 || countitem(18974) < 1) GOTO Z_NOITEM; delitem 6820,50;//Items: Sombrero, delitem 18977,1;//Items: Feather_of_Birds, getitem 19967,1;//Items: Bird_Nest, mes "Thank you very very much!"; end; Z_EEEEEEEEEEE: if(countitem(6820) < 50 || countitem(18974) < 1) GOTO Z_NOITEM; delitem 6820,50;//Items: Sombrero, delitem 18978,1;//Items: Feather_of_Birds, getitem 19968,1;//Items: Bird_Nest, mes "Thank you very very much!"; end; Z_EEEEEEEEEEEE: if(countitem(6820) < 50 || countitem(18974) < 1) GOTO Z_NOITEM; delitem 6820,50;//Items: Sombrero, delitem 18979,1;//Items: Feather_of_Birds, getitem 19969,1;//Items: Bird_Nest, mes "Thank you very very much!"; end; Z_EEEEEEEEEEEEE: if(countitem(6820) < 50 || countitem(18974) < 1) GOTO Z_NOITEM; delitem 6820,50;//Items: Sombrero, delitem 18980,1;//Items: Feather_of_Birds, getitem 19970,1;//Items: Bird_Nest, mes "Thank you very very much!"; end; Z_EEEEEEEEEEEEEE: if(countitem(6820) < 50 || countitem(18974) < 1) GOTO Z_NOITEM; delitem 6820,50;//Items: Sombrero, delitem 18982,1;//Items: Feather_of_Birds, getitem 19971,1;//Items: Bird_Nest, mes "Thank you very very much!"; end; Z_EEEEEEEEEEEEEEE: if(countitem(6820) < 50 || countitem(18974) < 1) GOTO Z_NOITEM; delitem 6820,50;//Items: Sombrero, delitem 18983,1;//Items: Feather_of_Birds, getitem 19972,1;//Items: Bird_Nest, mes "Thank you very very much!"; end; Z_EEEEEEEEEEEEEEEE: if(countitem(6820) < 50 || countitem(18974) < 1) GOTO Z_NOITEM; delitem 6820,50;//Items: Sombrero, delitem 18984,1;//Items: Feather_of_Birds, getitem 19974,1;//Items: Bird_Nest, mes "Thank you very very much!"; end; Z_NOITEM: mes "You dont have enought items i need"; mes "Good bye."; close; Z_EXIT: mes "[Reaper]"; mes callfunc("F_Bye"); close; }1 point
-
how about like this one: if(getequipid(EQI_HAND_R) == 1284){ if(countitem(1284) == 1) goto Z_NOITEM; }else{ delitem 1284,1; getitem 6820,rand(1,5); end; }1 point
-
well that change every thing XD you need to write a check for it the item equiped is the same item the npc want it something like this if(getequipid(EQI_HAND_R) == 16001){ if(countitem(16001) > 1) goto twentysix; }else{ if(countitem(16001) > 0) goto twentysix; } or you need to make a sub or function and optimize the script to write this only once not one every id and make sure you use the right getequipid *getequipid({<equipment slot>,<char_id>}) EQI_COMPOUND_ON (-1) - Item slot that calls this script (In context of item script) EQI_ACC_L (0) - Accessory 1 EQI_ACC_R (1) - Accessory 2 EQI_SHOES (2) - Footgear (shoes, boots) EQI_GARMENT (3) - Garment (mufflers, hoods, manteaux) EQI_HEAD_LOW (4) - Lower Headgear (beards, some masks) EQI_HEAD_MID (5) - Middle Headgear (masks, glasses) EQI_HEAD_TOP (6) - Upper Headgear EQI_ARMOR (7) - Armor (jackets, robes) EQI_HAND_L (8) - Left hand (weapons, shields) EQI_HAND_R (9) - Right hand (weapons) EQI_COSTUME_HEAD_TOP (10) - Upper Costume Headgear EQI_COSTUME_HEAD_MID (11) - Middle Costume Headgear EQI_COSTUME_HEAD_LOW (12) - Lower Costume Headgear EQI_COSTUME_GARMENT (13) - Costume Garment EQI_AMMO (14) - Arrow/Ammunition EQI_SHADOW_ARMOR (15) - Shadow Armor EQI_SHADOW_WEAPON (16) - Shadow Weapon EQI_SHADOW_SHIELD (17) - Shadow Shield EQI_SHADOW_SHOES (18) - Shadow Shoes EQI_SHADOW_ACC_R (19) - Shadow Accessory 2 EQI_SHADOW_ACC_L (20) - Shadow Accessory 11 point
-
i test it and it work if i am wearing the item 16001 it take it from me and give me Energy Debris1 point
-
lhz_dun_n,135,264,4 script Memory of Tears 10092,{ disable_items; mes "I can Convert some items to energy debris in random from 1 to 5 what do you want"; next; menu "Exchange Items to Energy Debris",Z_EE,"Create Costume",Z_EEE,"Leave",Z_EXIT; Z_EE: mes "Done Thank you"; if(countitem(1284) > 0) goto one; if(countitem(1285) > 0) goto two; if(countitem(1290) > 0) goto three; if(countitem(18109) > 0) goto four; if(countitem(18110) > 0) goto five; if(countitem(18111) > 0) goto six; if(countitem(1745) > 0) goto seven; if(countitem(18103) > 0) goto eight; if(countitem(1647) > 0) goto nine; if(countitem(1659) > 0) goto ten; if(countitem(1654) > 0) goto eleven; if(countitem(2004) > 0) goto twelve; if(countitem(2005) > 0) goto thirteen; if(countitem(13431) > 0) goto fourteen; if(countitem(1196) > 0) goto fifteen; if(countitem(13421) > 0) goto sixteen; if(countitem(1584) > 0) goto seventeen; if(countitem(13061) > 0) goto eightteen; if(countitem(13062) > 0) goto nineteen; if(countitem(13070) > 0) goto twenty; if(countitem(13046) > 0) goto twentyone; if(countitem(13047) > 0) goto twentytwo; if(countitem(16017) > 0) goto twentythree; if(countitem(16010) > 0) goto twentyfour; if(countitem(16000) > 0) goto twentyfive; if(countitem(16001) > 0) goto twentysix; if(countitem(1433) > 0) goto twentyseven; if(countitem(1435) > 0) goto twentyeight; if(countitem(1490) > 0) goto twentynine; if(countitem(1930) > 0) goto thirty; if(countitem(1963) > 0) goto thirtyone; if(countitem(1830) > 0) goto thirtytwo; if(countitem(1393) > 0) goto thirtythree; if(countitem(1392) > 0) goto thirtyfour; goto Z_NOITEM; one: delitem 1284,1; getitem 6820,rand(1,5); end; two: delitem 1285,1; getitem 6820,rand(1,5); end; three: delitem 1290,1; getitem 6820,rand(1,5); end; four: delitem 18109,1; getitem 6820,rand(1,5); end; five: delitem 18110,1; getitem 6820,rand(1,5); end; six: delitem 18111,1; getitem 6820,rand(1,5); end; zeven: delitem 1745,1; getitem 6820,rand(1,5); end; eight: delitem 18103,1; getitem 6820,rand(1,5); end; nine: delitem 1647,1; getitem 6820,rand(1,5); end; ten: delitem 1659,1; getitem 6820,rand(1,5); end; eleven: delitem 1654,1; getitem 6820,rand(1,5); end; twelve: delitem 2004,1; getitem 6820,rand(1,5); end; thirteen: delitem 2005,1; getitem 6820,rand(1,5); end; fourteen: delitem 13431,1; getitem 6820,rand(1,5); end; fifteen: delitem 1196,1; getitem 6820,rand(1,5); end; sixteen: delitem 13421,1; getitem 6820,rand(1,5); end; seventeen: delitem 1584,1; getitem 6820,rand(1,5); end; eightteen: delitem 13061,1; getitem 6820,rand(1,5); nineteen: delitem 13062,1; getitem 6820,rand(1,5); end; twenty: delitem 13070,1; getitem 6820,rand(1,5); end; twentyone: delitem 13046,1; getitem 6820,rand(1,5); end; twentytwo: delitem 13047,1; getitem 6820,rand(1,5); end; twentythree: delitem 16017,1; getitem 6820,rand(1,5); end; twentyfour: delitem 16010,1; getitem 6820,rand(1,5); end; twentyfive: delitem 16000,1; getitem 6820,rand(1,5); end; twentysix: delitem 16001,1; getitem 6820,rand(1,5); end; twentyseven: delitem 1433,1; getitem 6820,rand(1,5); end; twentyeight: delitem 1435,1; getitem 6820,rand(1,5); end; twentynine: delitem 1490,1; getitem 6820,rand(1,5); end; thirty: delitem 1930,1; getitem 6820,rand(1,5); end; thirtyone: delitem 1963,1; getitem 6820,rand(1,5); end; thirtytwo: delitem 1830,1; getitem 6820,rand(1,5); end; thirtythree: delitem 1393,1; getitem 6820,rand(1,5); end; thirtyfour: delitem 1392,1; getitem 6820,rand(1,5); end; Z_EEE: mes "I can also Exchange 50pcs energy debris and 1 3rd job head gear to 1 costume 3rd job items"; next; menu "Costume Rune Circlet",Z_EEEE,"Costume Mitra",Z_EEEEE,"Costume Driver Band",Z_EEEEEE,"Costume Driver Band (Yellow)",Z_EEEEEEE,"Costume Shadow Crown",Z_EEEEEEEE,"Costume Minstrel Song",Z_EEEEEEEEE,"Costume Midas Whisper",Z_EEEEEEEEEE,"Costume Magic Stone Hat",Z_EEEEEEEEEEE,"Costume Burning Spirit",Z_EEEEEEEEEEEE,"Costume Wispers of Wind",Z_EEEEEEEEEEEEE,"Costume Circlet of Bone",Z_EEEEEEEEEEEEEE,"Costume Guardian Crown",Z_EEEEEEEEEEEEEEE,"Costume Camouflage of Rabbit Hood",Z_EEEEEEEEEEEEEEEE,"Leave",Z_EXIT; Z_EEEE: if(countitem(6820) < 50 || countitem(18971) < 1) GOTO Z_NOITEM; delitem 6820,50;//Items: Sombrero, delitem 18971,1;//Items: Feather_of_Birds, getitem 19961,1;//Items: Bird_Nest, mes "Thank you very very much!"; end; Z_EEEEE: if(countitem(6820) < 50 || countitem(18972) < 1) GOTO Z_NOITEM; delitem 6820,50;//Items: Sombrero, delitem 18972,1;//Items: Feather_of_Birds, getitem 19962,1;//Items: Bird_Nest, mes "Thank you very very much!"; end; Z_EEEEEE: if(countitem(6820) < 50 || countitem(18973) < 1) GOTO Z_NOITEM; delitem 6820,50;//Items: Sombrero, delitem 18973,1;//Items: Feather_of_Birds, getitem 19963,1;//Items: Bird_Nest, mes "Thank you very very much!"; end; Z_EEEEEEE: if(countitem(6820) < 50 || countitem(18974) < 1) GOTO Z_NOITEM; delitem 6820,50;//Items: Sombrero, delitem 18974,1;//Items: Feather_of_Birds, getitem 19964,1;//Items: Bird_Nest, mes "Thank you very very much!"; end; Z_EEEEEEEE: if(countitem(6820) < 50 || countitem(18974) < 1) GOTO Z_NOITEM; delitem 6820,50;//Items: Sombrero, delitem 18983,1;//Items: Feather_of_Birds, getitem 19965,1;//Items: Bird_Nest, mes "Thank you very very much!"; end; Z_EEEEEEEEE: if(countitem(6820) < 50 || countitem(18974) < 1) GOTO Z_NOITEM; delitem 6820,50;//Items: Sombrero, delitem 18976,1;//Items: Feather_of_Birds, getitem 19966,1;//Items: Bird_Nest, mes "Thank you very very much!"; end; Z_EEEEEEEEEE: if(countitem(6820) < 50 || countitem(18974) < 1) GOTO Z_NOITEM; delitem 6820,50;//Items: Sombrero, delitem 18977,1;//Items: Feather_of_Birds, getitem 19967,1;//Items: Bird_Nest, mes "Thank you very very much!"; end; Z_EEEEEEEEEEE: if(countitem(6820) < 50 || countitem(18974) < 1) GOTO Z_NOITEM; delitem 6820,50;//Items: Sombrero, delitem 18978,1;//Items: Feather_of_Birds, getitem 19968,1;//Items: Bird_Nest, mes "Thank you very very much!"; end; Z_EEEEEEEEEEEE: if(countitem(6820) < 50 || countitem(18974) < 1) GOTO Z_NOITEM; delitem 6820,50;//Items: Sombrero, delitem 18979,1;//Items: Feather_of_Birds, getitem 19969,1;//Items: Bird_Nest, mes "Thank you very very much!"; end; Z_EEEEEEEEEEEEE: if(countitem(6820) < 50 || countitem(18974) < 1) GOTO Z_NOITEM; delitem 6820,50;//Items: Sombrero, delitem 18980,1;//Items: Feather_of_Birds, getitem 19970,1;//Items: Bird_Nest, mes "Thank you very very much!"; end; Z_EEEEEEEEEEEEEE: if(countitem(6820) < 50 || countitem(18974) < 1) GOTO Z_NOITEM; delitem 6820,50;//Items: Sombrero, delitem 18982,1;//Items: Feather_of_Birds, getitem 19971,1;//Items: Bird_Nest, mes "Thank you very very much!"; end; Z_EEEEEEEEEEEEEEE: if(countitem(6820) < 50 || countitem(18974) < 1) GOTO Z_NOITEM; delitem 6820,50;//Items: Sombrero, delitem 18983,1;//Items: Feather_of_Birds, getitem 19972,1;//Items: Bird_Nest, mes "Thank you very very much!"; end; Z_EEEEEEEEEEEEEEEE: if(countitem(6820) < 50 || countitem(18974) < 1) GOTO Z_NOITEM; delitem 6820,50;//Items: Sombrero, delitem 18984,1;//Items: Feather_of_Birds, getitem 19974,1;//Items: Bird_Nest, mes "Thank you very very much!"; end; Z_NOITEM: mes "You dont have enought items i need"; mes "Good bye."; close; Z_EXIT: mes "[Reaper]"; mes callfunc("F_Bye"); close; } disable item is used for every npc work with items that can be equip like refine npcs or enchant etc *enable_items; *disable_items; These commands toggle the ability to change equipment while interacting with an NPC. To avoid possible exploits, the commands affect the particular script instance only. Note that if a different script also calls enable_items, it will override the last call (so you may want to call this command at the start of your script without assuming it is still in effect). The default setting, 'item_enabled_npc', is defined in 'conf/battle/items.conf'.1 point
-
you mean like this lhz_dun_n,135,264,4 script Memory of Tears 10092,{ mes "I can Convert some items to energy debris in random from 1 to 5 what do you want"; next; menu "Exchange Items to Energy Debris",Z_EE,"Create Costume",Z_EEE,"Leave",Z_EXIT; Z_EE: mes "Done Thank you"; if(countitem(1284) > 0) goto one; if(countitem(1285) > 0) goto two; if(countitem(1290) > 0) goto three; if(countitem(18109) > 0) goto four; if(countitem(18110) > 0) goto five; if(countitem(18111) > 0) goto six; if(countitem(1745) > 0) goto seven; if(countitem(18103) > 0) goto eight; if(countitem(1647) > 0) goto nine; if(countitem(1659) > 0) goto ten; if(countitem(1654) > 0) goto eleven; if(countitem(2004) > 0) goto twelve; if(countitem(2005) > 0) goto thirteen; if(countitem(13431) > 0) goto fourteen; if(countitem(1196) > 0) goto fifteen; if(countitem(13421) > 0) goto sixteen; if(countitem(1584) > 0) goto seventeen; if(countitem(13061) > 0) goto eightteen; if(countitem(13062) > 0) goto nineteen; if(countitem(13070) > 0) goto twenty; if(countitem(13046) > 0) goto twentyone; if(countitem(13047) > 0) goto twentytwo; if(countitem(16017) > 0) goto twentythree; if(countitem(16010) > 0) goto twentyfour; if(countitem(16000) > 0) goto twentyfive; if(countitem(16001) > 0) goto twentysix; if(countitem(1433) > 0) goto twentyseven; if(countitem(1435) > 0) goto twentyeight; if(countitem(1490) > 0) goto twentynine; if(countitem(1930) > 0) goto thirty; if(countitem(1963) > 0) goto thirtyone; if(countitem(1830) > 0) goto thirtytwo; if(countitem(1393) > 0) goto thirtythree; if(countitem(1392) > 0) goto thirtyfour; goto Z_NOITEM; one: delitem 1284,1; getitem 6820,rand(1,5); end; two: delitem 1285,1; getitem 6820,rand(1,5); end; three: delitem 1290,1; getitem 6820,rand(1,5); end; four: delitem 18109,1; getitem 6820,rand(1,5); end; five: delitem 18110,1; getitem 6820,rand(1,5); end; six: delitem 18111,1; getitem 6820,rand(1,5); end; zeven: delitem 1745,1; getitem 6820,rand(1,5); end; eight: delitem 18103,1; getitem 6820,rand(1,5); end; nine: delitem 1647,1; getitem 6820,rand(1,5); end; ten: delitem 1659,1; getitem 6820,rand(1,5); end; eleven: delitem 1654,1; getitem 6820,rand(1,5); end; twelve: delitem 2004,1; getitem 6820,rand(1,5); end; thirteen: delitem 2005,1; getitem 6820,rand(1,5); end; fourteen: delitem 13431,1; getitem 6820,rand(1,5); end; fifteen: delitem 1196,1; getitem 6820,rand(1,5); end; sixteen: delitem 13421,1; getitem 6820,rand(1,5); end; seventeen: delitem 1584,1; getitem 6820,rand(1,5); end; eightteen: delitem 13061,1; getitem 6820,rand(1,5); nineteen: delitem 13062,1; getitem 6820,rand(1,5); end; twenty: delitem 13070,1; getitem 6820,rand(1,5); end; twentyone: delitem 13046,1; getitem 6820,rand(1,5); end; twentytwo: delitem 13047,1; getitem 6820,rand(1,5); end; twentythree: delitem 16017,1; getitem 6820,rand(1,5); end; twentyfour: delitem 16010,1; getitem 6820,rand(1,5); end; twentyfive: delitem 16000,1; getitem 6820,rand(1,5); end; twentysix: delitem 16001,1; getitem 6820,rand(1,5); end; twentyseven: delitem 1433,1; getitem 6820,rand(1,5); end; twentyeight: delitem 1435,1; getitem 6820,rand(1,5); end; twentynine: delitem 1490,1; getitem 6820,rand(1,5); end; thirty: delitem 1930,1; getitem 6820,rand(1,5); end; thirtyone: delitem 1963,1; getitem 6820,rand(1,5); end; thirtytwo: delitem 1830,1; getitem 6820,rand(1,5); end; thirtythree: delitem 1393,1; getitem 6820,rand(1,5); end; thirtyfour: delitem 1392,1; getitem 6820,rand(1,5); end; Z_EEE: mes "I can also Exchange 50pcs energy debris and 1 3rd job head gear to 1 costume 3rd job items"; next; menu "Costume Rune Circlet",Z_EEEE,"Costume Mitra",Z_EEEEE,"Costume Driver Band",Z_EEEEEE,"Costume Driver Band (Yellow)",Z_EEEEEEE,"Costume Shadow Crown",Z_EEEEEEEE,"Costume Minstrel Song",Z_EEEEEEEEE,"Costume Midas Whisper",Z_EEEEEEEEEE,"Costume Magic Stone Hat",Z_EEEEEEEEEEE,"Costume Burning Spirit",Z_EEEEEEEEEEEE,"Costume Wispers of Wind",Z_EEEEEEEEEEEEE,"Costume Circlet of Bone",Z_EEEEEEEEEEEEEE,"Costume Guardian Crown",Z_EEEEEEEEEEEEEEE,"Costume Camouflage of Rabbit Hood",Z_EEEEEEEEEEEEEEEE,"Leave",Z_EXIT; Z_EEEE: if(countitem(6820) < 50 || countitem(18971) < 1) GOTO Z_NOITEM; delitem 6820,50;//Items: Sombrero, delitem 18971,1;//Items: Feather_of_Birds, getitem 19961,1;//Items: Bird_Nest, mes "Thank you very very much!"; end; Z_EEEEE: if(countitem(6820) < 50 || countitem(18972) < 1) GOTO Z_NOITEM; delitem 6820,50;//Items: Sombrero, delitem 18972,1;//Items: Feather_of_Birds, getitem 19962,1;//Items: Bird_Nest, mes "Thank you very very much!"; end; Z_EEEEEE: if(countitem(6820) < 50 || countitem(18973) < 1) GOTO Z_NOITEM; delitem 6820,50;//Items: Sombrero, delitem 18973,1;//Items: Feather_of_Birds, getitem 19963,1;//Items: Bird_Nest, mes "Thank you very very much!"; end; Z_EEEEEEE: if(countitem(6820) < 50 || countitem(18974) < 1) GOTO Z_NOITEM; delitem 6820,50;//Items: Sombrero, delitem 18974,1;//Items: Feather_of_Birds, getitem 19964,1;//Items: Bird_Nest, mes "Thank you very very much!"; end; Z_EEEEEEEE: if(countitem(6820) < 50 || countitem(18974) < 1) GOTO Z_NOITEM; delitem 6820,50;//Items: Sombrero, delitem 18983,1;//Items: Feather_of_Birds, getitem 19965,1;//Items: Bird_Nest, mes "Thank you very very much!"; end; Z_EEEEEEEEE: if(countitem(6820) < 50 || countitem(18974) < 1) GOTO Z_NOITEM; delitem 6820,50;//Items: Sombrero, delitem 18976,1;//Items: Feather_of_Birds, getitem 19966,1;//Items: Bird_Nest, mes "Thank you very very much!"; end; Z_EEEEEEEEEE: if(countitem(6820) < 50 || countitem(18974) < 1) GOTO Z_NOITEM; delitem 6820,50;//Items: Sombrero, delitem 18977,1;//Items: Feather_of_Birds, getitem 19967,1;//Items: Bird_Nest, mes "Thank you very very much!"; end; Z_EEEEEEEEEEE: if(countitem(6820) < 50 || countitem(18974) < 1) GOTO Z_NOITEM; delitem 6820,50;//Items: Sombrero, delitem 18978,1;//Items: Feather_of_Birds, getitem 19968,1;//Items: Bird_Nest, mes "Thank you very very much!"; end; Z_EEEEEEEEEEEE: if(countitem(6820) < 50 || countitem(18974) < 1) GOTO Z_NOITEM; delitem 6820,50;//Items: Sombrero, delitem 18979,1;//Items: Feather_of_Birds, getitem 19969,1;//Items: Bird_Nest, mes "Thank you very very much!"; end; Z_EEEEEEEEEEEEE: if(countitem(6820) < 50 || countitem(18974) < 1) GOTO Z_NOITEM; delitem 6820,50;//Items: Sombrero, delitem 18980,1;//Items: Feather_of_Birds, getitem 19970,1;//Items: Bird_Nest, mes "Thank you very very much!"; end; Z_EEEEEEEEEEEEEE: if(countitem(6820) < 50 || countitem(18974) < 1) GOTO Z_NOITEM; delitem 6820,50;//Items: Sombrero, delitem 18982,1;//Items: Feather_of_Birds, getitem 19971,1;//Items: Bird_Nest, mes "Thank you very very much!"; end; Z_EEEEEEEEEEEEEEE: if(countitem(6820) < 50 || countitem(18974) < 1) GOTO Z_NOITEM; delitem 6820,50;//Items: Sombrero, delitem 18983,1;//Items: Feather_of_Birds, getitem 19972,1;//Items: Bird_Nest, mes "Thank you very very much!"; end; Z_EEEEEEEEEEEEEEEE: if(countitem(6820) < 50 || countitem(18974) < 1) GOTO Z_NOITEM; delitem 6820,50;//Items: Sombrero, delitem 18984,1;//Items: Feather_of_Birds, getitem 19974,1;//Items: Bird_Nest, mes "Thank you very very much!"; end; Z_NOITEM: mes "You dont have enought items i need"; mes "Good bye."; close; Z_EXIT: mes "[Reaper]"; mes callfunc("F_Bye"); close; }1 point
-
there is no case for { goto Z_NOITEM; } so just type it without bracket and do disable_items; at the script start1 point
-
i would suggest you try this> rename the npc folder restart the server(there is no warps/npcs/monsters/etc) you can still @commands etc try to test your server in this state and see if you will get the error this wont fix the error it's only let's you know if there is script/ command script doing this for the server and read the terminal seek for anyerror if you did get this again then it's not from scripts/command scripts it's from the vps system / src or even from sql i think your best option is see what's not causing the problem to know what cause it unless someone here know what happen for you1 point
-
server are not multithreaded for now, so a long action will make other char freeze. It's usually cause by intense computing for that loop. Exanple a very consuming script or some stats etc..1 point
-
Please post version of beta. Seems it converted the file successfully and then failed in some another part. What happens if you launch the client once more ? http://aesir.perfontain.ru/forum/topic/20-beta-v035/ Also there's one new beta. Key change is fixed some bugs when loading RSM models, so now all the models on all the maps should be able to load. If not, please post their names from the log.1 point
-
Version 1.2.2b
2357 downloads
[NOTE] For now on I will keep release all of my work for free , I hope most people can enjoy my script without paid. But if you still want to support my work, please consider donate or become my patron. Thank you. Tired of boring odd base fishing game which just click and wait for the reward? Then maybe you will need this simulate fishing game. Idea from a Japanese Video Game. The Legend of Heroes VI: Sora no Kiseki Feature: Easy add / modify / remove local database Not bound to npc when fishing, that mean you can walk freely, but there are timeout there. Everyone can look and hear how you fish Sound Effect included Easy setup and configure each fishing spot Can easily duplicate the npc and will not conflict to each other Global Rod / Bait / Fish Database Example: Each Spot Npc Example: This script need my release of: If you bought this script and need help on setting the npc, feel free to pm me on rAthena mailbox. Suggestion are welcome. Upcoming List: Leaderboard Fishing Contest Private Pond & Public Pond By downloading this script, you agree to these terms: You are not allowed to redistribute this script in any way, shape, or form. Chargeback scams are not tolerated and will get you punished on rAthena. I still retain all rights to this script and sound. Terms above may be changed or adjusted without prior notification. Copyright © - Yuchinin 2017 - All Rights ReservedFree1 point -
Hope this is the right section! This is my WONDERFUL experience with nanakiwurtz Making my very own server, just for fun, i've always met insurmountable tasks that I never could overcome. I'd always take these to the help sections and occassionally didnt get replies. Some people whom i approached would brush me aside immediately. On 5 separate occassions, without any incentives whatsoever, nanakiwurtz never failed to help me out. From the tiniest error in a 1000 line script to patiently teaching how to fix errors caused by scripts and even to problems not related to rAthena but just my comp in general. Forking out time just to help someone out, I am extremely grateful. So thank you nanakiwurtz for everything.1 point
-
Version 1.0.1
432 downloads
Hey peoples! This script is an instance based over the Voluspa, the Devineress. You'll have to fight against her anger against the God, to free her from her grief. For this, you'll have to fight against the ordeal she'll raise against you and your team. Also, I use a function of mine to give special points. It is therefor possible to give some points when fulfiling and instance, but you'll have to define a "AddPoints" function (I can release it too if necessary), or to change the reward mode. FInally, 4 level are available, with increasing monster count and influencing mobs size: Easy, Normal, Hard and Apocalypse (all big) Have funFree1 point -
Version 1.0.1
509 downloads
Hey peoples! This script is an instance based over the manga D.Gray Man Your goal here is to defeat the Maker, which create monsters from dead bodies. But he's invincible, as long as you won't have defeated his family, the Noas. For that, find one, kill him and seal him in the Akuma Factory. Also, I use a function of mine to give special points. It is therefor possible to give some points when fulfiling and instance, but you'll have to define a "AddPoints" function (I can release it too if necessary), or to change the reward mode. FInally, 4 level are available, with increasing monster count and influencing mobs size: Easy, Normal, Hard and Apocalypse (all big) Have funFree1 point -
Version 1.0.1
885 downloads
Hey peoples! This script is an instance based over the Nine Worlds of Nordic Mythology. You'll have to go over the 5 most dangerous Realm, Jotunheim, Muspelheim, Helheim, Niflheim and Asgard to defeat the 4 Evil Rulers and Protect the Valhalla Gardens. Also, I use a function of mine to give special points. It is therefor possible to give some points when fulfiling and instance, but you'll have to define a "AddPoints" function (I can release it too if necessary), or to change the reward mode. FInally, 3 level are available, with increasing monster count and influencing mobs size: Easy, Normal, Hard. Have funFree1 point -
Version 1.0.1
585 downloads
Hey peoples! This script is an instance based over the weakest mob: the Poring. You'll be asked by the Poring Realm to help the poring race to fight against Devilikan, the Evil Poring. But for that, and to prove that you're worth the fight, you'll have to encounter the life of a Poring! Also, I use a function of mine to give special points. It is therefor possible to give some points when fulfiling and instance, but you'll have to define a "AddPoints" function (I can release it too if necessary), or to change the reward mode. FInally, 4 level are available, with increasing monster count and influencing mobs size: Easy, Normal, Hard and Apocalypse (all big) Have funFree1 point -
Version 1.0.2
593 downloads
Hey peoples! This script is an instance based over mobs level. You'll have to crawl over the levels to kill all monsters, and the matching guardians. Each level is harder than the previous one, and the mobs and guardian level increase with it, starting to lvl 50 up to lvl 100. Also, I use a function of mine to give special points. It is therefor possible to give some points when fulfiling and instance, but you'll have to define a "AddPoints" function (I can release it too if necessary), or to change the reward mode. FInally, 4 level are available, with increasing monster count and influencing mobs size: Easy, Normal, Hard and Apocalypse (all big) Have funFree1 point -
Version 1.0.2
935 downloads
Hey peoples! Here's one of the first instances I ever made, and finally release after years. This one is based over Saint Seya - Battle of the Sanctuary and the Zodiac Hats. It's purpose is to go over the 12 Zodiac Houses to defeat guardians and progress til the Horde Master, who attacked and corrupted the Temple. For this, you'll have to activate the Stars, spread around the floor, which represents the constellation, and guarded by monsters, matching the Zodiac House you're in, to call the guardian. The one defeating it get some chance to get the matching Zodiac Hat. Also, I use a function of mine to give special points. It is therefor possible to give some points when fulfiling and instance, but you'll have to define a "AddPoints" function (I can release it too if necessary), or to change the reward mode. FInally, 4 level are available, with increasing monster count and influencing mobs size: Easy, Normal, Hard and Apocalypse (all big) Have funFree1 point -
Version 1.0.1
668 downloads
Hey peoples! This script is an instance based over Bilbo The Hobbit's story. You'll have to defeat the Dragon ruling the Mountain to free it and allow peoples to get back to it. But he's invincible as long as you don't kill and seal all the army leaders he has under his command. Also, I use a function of mine to give special points. It is therefor possible to give some points when fulfiling and instance, but you'll have to define a "AddPoints" function (I can release it too if necessary), or to change the reward mode. FInally, 3 level are available, with increasing monster count and influencing mobs size: Easy, Normal, Hard. Have funFree1 point -
Version 1.0.0
546 downloads
Hello peoples, I've been asked recently to create official instances that aren't release on rathena yet. So here's my version of Devil Tower instance, based over infos took here and there, videos and divine-pride database, and DanielArt initial script. In the rar, you'll find all you need, including Instance file, mob, item and quest db. You'll still need up to date client (I personnaly use 20160201) to ensure the mobs are created client side. Have fun. Please, leave the credits and do not claim my work as yours.Free1 point -
setarray .@position$[1], EQI_HEAD_TOP, EQI_ARMOR, EQI_HAND_L, EQI_HAND_R, EQI_GARMENT, EQI_SHOES, EQI_ACC_L, EQI_ACC_R, EQI_HEAD_MID, EQI_HEAD_LOW; change according to these values... EQI_ACC_L (0) - Accessory 1 EQI_ACC_R (1) - Accessory 2 EQI_SHOES (2) - Footgear (shoes, boots) EQI_GARMENT (3) - Garment (mufflers, hoods, manteaux) EQI_HEAD_LOW (4) - Lower Headgear (beards, some masks) EQI_HEAD_MID (5) - Middle Headgear (masks, glasses) EQI_HEAD_TOP (6) - Upper Headgear EQI_ARMOR (7) - Armor (jackets, robes) EQI_HAND_L (8) - Left hand (weapons, shields) EQI_HAND_R (9) - Right hand (weapons)1 point
-
prontera,156,191,4 script Summon Man 53,{ mes "[Summon Man]"; mes "Want to start the Poring hunt?"; next; if (select("Yes.:No.") == 2) { mes "[Summon Man]"; mes "Come back later."; close; } // Summon 10 Porings. // Using coordinates 0,0 will spawn them in a random location. monster "prontera",0,0,"Quest Poring",1002,10,"Summon Man::OnPoringKilled"; mes "[Summon Man]"; mes "Now go and kill all the Porings I summoned."; close; OnPoringKilled: $PoringKilled++; if ($PoringKilled >= 10) { // announce "Summon Man: Well done. All the Porings are dead!",3; $PoringKilled = 0; enablenpc "WarpPortal#1"; sleep 120000; // wait 2 minute disablenpc "WarpPortal#1"; } end; } prontera,156,187,0 script WarpPortal#1 45,2,2,{ warp "prontera",156,181; end; OnInit: disablenpc strnpcinfo(0); end; }1 point
-
1 point
-
I believe he meant to add another category aside from the Normal and MVP cards. Anyway, here it is. All cards are categorized as class 1 by default. You have to specify which will be class 2, 3 and 4 in the script. Note: I did not edit the information part so you have to edit it yourself. //===== rAthena Script ======================================= //= Card Trader //===== By: ================================================== //= Euphy //===== Current Version: ===================================== //= 1.1 //===== Compatible With: ===================================== //= rAthena SVN //===== Description: ========================================= //= Exchange cards for points. //============================================================ ruhel,74,58,4 script Card Captor Sakura 10044,{ mes "[^995050Card Captor Sakura^000000]"; mes "Hi, "+strcharinfo(0)+"!"; mes "What can I do for you?"; next; switch(select(" > Information: > Trade in cards: > Point shop (^0055FF"+getd(.Points$)+"^000000): > Leave")) { case 1: mes "[^995050Card Captor Sakura^000000]"; mes "Do you find that you've got"; mes "useless cards 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 ^0055FF"+.Points[0]+" Point"+((.Points[0] == 1)?"":"s")+"^000000 for each"; mes "card you give me, and"; mes "^0055FF"+.Points[1]+" Points^000000 for MVP cards."; 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$,"#CASHPOINTS"; // 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],3,5,10,25; // Points per <Class 1>,<Class 2>,<Class 3>,<Class 4> set .class2$, // Class 2 cards | Those not within Class 2 ~4 are all Class 1 "4268,4194,4222,4275"; set .class3$, "4054,4047,4174"; set .class4$, // List of MVP cards. | Previously .MVP$ "4121,4123,4128,4131,4132,4134,4135,4137,4142,4143,4144,4145,4146,4147,4148,4168,4236,"+ "4241,4263,4276,4302,4305,4318,4324,4330,4342,4357,4359,4361,4363,4365,4399,4403,4407"; 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:-11 point