Jump to content

ItsFree

Members
  • Posts

    121
  • Joined

  • Last visited

  • Days Won

    1

Everything posted by ItsFree

  1. Tested, Working but i found a "bug" after i get enough points to get the next rank, i talk with the npc and yeah tell me the rank but, when i click again just it dont talk to me :c no console error~
  2. i tried fix it, but still error, for that reason i put this as request and no support did think about that?, and not building atm, thx for help ^^ btw what was the fix ¿? to check my mistake Tested and not working the script no error on console, but not counting points, no message, even the npc also "0 points" :c
  3. so the npc is like this: https://pastebin.com/PHdacipd i've edit this OnPCDieEvent: if(getmapxy(0) == $@pvpMaps$[0] || getmapxy(0) == $@pvpMaps$[1]){ pvpPoints--; to this ? OnPCDieEvent: if(getmapxy(0) == $@pvpMaps$[0] || getmapxy(0) == $@pvpMaps$[1]){ pvpPoints-1; same with the other giht ¿? also dont need be something like " . pvpPoints " ¿? also about something said stolao some days ago Also $randmap can probably be .@randmap or .randmap since it doesn't need to be a server variable. not tested yet just saying to try avoid problems on console well i gonna try on a minutes anyway... not working :c trying to fix problems with = , ; ( { on console but they keep happening posting a screenshot... firs was my mistake about 2 missing } then something about ) happen i change to , as the console said but then a new problem :/
  4. Hi, i found these scripts and are kinda similar what i want but no what i really want... https://rathena.org/board/topic/80649-pvp-points/ https://rathena.org/board/topic/72509-pvp-points-system/ what i want is this... If you kill a player on X, Y and Z Maps, you get +2 Points. If you die by a player on X, Y and Z Maps, you get -1 Point. a NPC that "Check" for those points i mean you have 0~100 points the NPC give you a "set" i mean ( set PvPRank,1; ) but if you have less than "100" will remove that rank if you have something like 101~200 a new rank... Also i want more than 1 rank something like.... Rank1, 2, 3, 4, 5, 6, 7...10 i need that, to use other an Euphy's Quest Shop and check if have that rank to sell stuff PD: i already have that Euphy's Quest Shop, just requesting the NPC Rank with check & Ranks, and the script that if you kill +2, if you die -1, con X,Y,Z Maps... i saw something similar on a server years ago... so i guess is possible but i dont know how do it... Thx! ^^
  5. Thx gonna try it and check if everything fine then posting c:
  6. some problems on consoble about , ; () but i fix them, but script not working... the idea of this npc is to use with "taming monsters" i mean they spawn on those maps random and everything these are the scripts that im using and not working... but function script getRandMap { //this function is to assign a random map name to a variable .randMap = rand(0,4); if (.randMap = 0){ setd .mapName = "prontera", return; } if (.randMap == 1){ setd .mapName = "payon", return; } if (.randMap == 2){ setd .mapName = "morocc", return; } if (.randMap == 3){ setd .mapName = "izlude", return; } if (.randMap == 4){ setd .mapName = "prt_fild08", return; } else { debugmes "ERROR: Random Map generation failed!"; end; } } payon,170,91,5 script Taming Monsters::tamingmonster 111,{ //this can be floating NPC, i forget how OnInterIfInitOnce: callfunc "getRandMap"; monster .mapName,0,0,"Taming Monster",2845,1,"tamingmonster::OnRespawnMonster"; debugmes "DEBUG: EVENT MONSTER SPAWNED SUCCESSFULLY "+.mapName; end; OnRespawnMonster: announce strcharinfo(0)+" ah Matado al Taming Monster...", callfunc ("getRandMap"); monster .mapName,0,0,"Taming Monster",2845,1,"tamingmonster::OnRespawnMonster"; debugmes "DEBUG: EVENT MONSTER RESPAWNED @"+.mapName; end; } on console i only got the debug message about failed each time i click the npc also... how can i make it a floating npc? ^^ Thx!!
  7. no error on console after using it :/ also the CustomBox Script: function script CustomBox { //start of settings //amount and chances .@req_amt = 1; //change to how many items is needed to open .@good_chance = 10; //10 = 10% .@best_chance = 1; //1 = 1% .@announce = 0; //change to 0 if you want to turn off or 1 to turn on announce //arrays setarray .@rew_basic,4853,4854,4855,4856,4857,4858; //your reward items id [basic] setarray .@rew_good,4853,4854,4855,4856,4857,4858; //your reward items id [good] setarray .@rew_best,4853,4854,4855,4856,4857,4858; //your reward items id [best] setarray .@rew_amt_basic,1,1,1,1,1,1; //your reward amount [basic] setarray .@rew_amt_good,2,2,2,2,2,2; //your reward amount [good] setarray .@rew_amt_best,3,3,3,3,3,3; //your reward amount [best /* Note #1: This can still be simplified into a more compact snippet, but for sake of basicness, i will not make it into that */ /* Note #2: Make sure your amount and rewards match, if you have 5 items in the reward category, make sure you have 5 amounts in your amount category too */ //size of arrays .@basic_size = getarraysize(.@rew_basic); .@good_size = getarraysize(.@rew_good); .@best_size = getarraysize(.@rew_best); /* Note: Why we do this is because we want subtract one value from the output of getarraysize, because our array index starts at 0 (we did not specify it to start at 1)*/ //end of settings if(getarg(1) < 1){ //if required amount is less than 1, warning will pop up and consumed item will be returned message strcharinfo(0),"You require [ "+getitemname(getarg(1))+" ] x"+.@req_amt+" to open this item."; getitem 501,1; end; } .@rand = rand(0,100); //randomize chance to get rewards above delitem getarg(1),.@req_amt; //required item is deleted before giving out rewards if(.@rand <= .@best_chance){ //this produces the "best" items .@item = rand(0,.@best_size); //item is randomly chosen from the list if(.@announce) //if announce is active or 1, will announce announce "Congratulations! "+strcharinfo(0)+" has won "+getitemname(.@item)+" from opening a [ "+getitemname(getarg(0))+" ] !!",0; getitem .@rew_best[.@item],.@rew_amt_best[.@item]; end; } if(.@rand <= .@good_chance){ //since we already catch anything that is either 1 or 0 above, no need to add check for <= 1 .@item = rand(0,.@good_size); //item is randomly chosen from the list if(.@announce) //if announce is active or 1, will announce announce "Congratulations! "+strcharinfo(0)+" has won "+getitemname(.@item)+" from opening a [ "+getitemname(getarg(0))+" ] !!",0; getitem .@rew_good[.@item],.@rew_amt_good[.@item]; end; } //they get basic reward .@item = rand(0,.@basic_size); //item is randomly chosen from the list if(.@announce) //if announce is active or 1, will announce announce "Congratulations! "+strcharinfo(0)+" has won "+getitemname(.@item)+" from opening a [ "+getitemname(getarg(0))+" ] !!",0; getitem .@rew_basic[.@item],.@rew_amt_basic[.@item]; end; }
  8. well if the item is get back i mean the box, if i use without a key would be fine, but at this moment just consume :c
  9. sorry for delay to answer... yeah solved about the "null" but still consuming :c 12189,Red_Box_,Old Red Box,0,50,,70,,,,,0xFFFFFFFF,7,2,,,,,,{ if(countitem(512) > 0) {callfunc "CustomBox",501,512;} end; },{},{} using that
  10. nice i gonna try that from stolao, also i got this... @SpiritD also if can put a "working" example would be helpful kinda slow about understand some stuff...
  11. no >< what i want i set 1 monster but is spawn on different maps, for example that wild rose could spawn on pronter, or payon, or izlude, or aldebaran, etc after wild rose die, the next respawn woul be at random again to one of the maps designed.
  12. Hi, rAthena Community i've a new request i dont know if possible but i'll try to explain it the better way i can do.... as i know this is a normal mob spawn... prontera,0,0 monster Wild Rose 1261,1,7200000,3600000 Ok... what i want for example is that, that "wild rose" spawn between prontera, payon, louyang, morocc, alberta & izlude.... i mean if i set 1, or 2, o 3 mobs they spawn "random" on all those maps... is there a way to do something like that ¿? If need more info tell me i'll try explain better ^^
  13. Yeah same situation here... i was thinking to buy it when was 10$ and when i gonna buy it, increased to 15, and then 20... and now 25$ ¿? WTF.... at least a reason to change that so many times x.x
  14. Sorry for delay answer... both working, thx ^^ just a little question about { set .wbchance,5; } i can change that to anything right ¿? or.... if i want put more scripts like this i can do it ¿? i mean different script but same "set" ¿?
  15. Ok Solved NPC: //===== rAthena Script ======================================= //= Euphy's Quest Shop //===== By: ================================================== //= Euphy //===== Current Version: ===================================== //= 1.6c //===== Compatible With: ===================================== //= rAthena Project //===== Description: ========================================= //= A dynamic quest shop based on Lunar's, with easier config. //= Includes support for multiple shops & cashpoints. //= Item Preview script by ToastOfDoom. //===== Additional Comments: ================================= //= 1.0 Initial script. //= 1.2 Added category support. //= 1.3 More options and fixes. //= 1.4 Added debug settings. //= 1.5 Replaced categories with shop IDs. //= 1.6 Added support for purchasing stackables. //= 1.6a Added support for previewing costumes and robes. //= 1.6b Added 'disable_items' command. //= 1.6c Replaced function 'A_An' with "F_InsertArticle". //============================================================ // Shop NPCs -- supplying no argument displays entire menu. // callfunc "qshop"{,<shop ID>{,<shop ID>{,...}}}; //============================================================ payon,166,100,6 script Quest Shop#SQ0 998,{ callfunc "myquest"; } // Script Core //============================================================ - script quest_shop -1,{ function Addm; function Chk; function Slot; OnInit: freeloop(1); // ----------------------------------------------------------- // Basic shop settings. // ----------------------------------------------------------- set .Announce,0; // Announce quest completion? (1: yes / 0: no) set .ShowSlot,1; // Show item slots? (2: all equipment / 1: if slots > 0 / 0: never) set .ShowID,0; // Show item IDs? (1: yes / 0: no) set .ShowZeny,0; // Show Zeny cost, if any? (1: yes / 0: no) set .MaxStack,100; // Max number of quest items purchased at one time. // ----------------------------------------------------------- // Random Chance Settings // ----------------------------------------------------------- set .SuccessRate, 20; setarray .add_reward_items[0], 501, 1, 502, 2; // <id, amount> setarray .fail_reward_items[0], 501, 1, 502, 2; // <id, amount> // ----------------------------------------------------------- // Points variable -- optional quest requirement. // setarray .Points$[0],"<variable name>","<display name>"; // ----------------------------------------------------------- setarray .Points$[0],"QUESTPOINTS","Quest Points"; // ----------------------------------------------------------- // Shop IDs -- to add shops, copy dummy data at bottom of file. // setarray .Shops$[1],"<Shop 1>","<Shop 2>"{,...}; // ----------------------------------------------------------- setarray .Shops$[1],"Weapons","Armors","Other"; // ----------------------------------------------------------- // Quest items -- do NOT use a reward item more than once! // Add(<shop ID>,<reward ID>,<reward amount>, // <Zeny cost>,<point cost>, // <required item ID>,<required item amount>{,...}); // ----------------------------------------------------------- Add(1,1208,1,0,0,7757,5,12698,3,969,10); Add(1,1117,1,0,0,7757,5,12698,3,969,10); Add(2,2306,1,0,0,7757,3,12691,969,5); Add(2,2502,1,0,0,7757,3,12693,969,5); // ----------------------------------------------------------- freeloop(0); set .menu$,""; for(set .@i,1; .@i<=getarraysize(.Shops$); set .@i,.@i+1) { set .menu$, .menu$+.Shops$[.@i]+":"; npcshopdelitem "myshop"+.@i,909; } end; OnMenu: set .@size, getarraysize(@i); if (!.@size) set @shop_index, select(.menu$); else if (.@size == 1) set @shop_index, @i[0]; else { for(set .@j,0; .@j<.@size; set .@j,.@j+1) set .@menu$, .@menu$+.Shops$[@i[.@j]]+":"; set @shop_index, @i[select(.@menu$)-1]; } deletearray @i[0],getarraysize(@i); if (.Shops$[@shop_index] == "") { message strcharinfo(0),"An error has occurred."; end; } dispbottom "Select one item at a time."; callshop "myshop"+@shop_index,1; npcshopattach "myshop"+@shop_index; end; OnBuyItem: // .@q[] : RewardID, BoughtAmt, RewardAmt, BaseAmt, ReqZeny, ReqPts, { ReqItem, ReqAmt, ... } setarray .@q[0],@bought_nameid[0],((@bought_quantity[0] > .MaxStack)?.MaxStack:@bought_quantity[0]); copyarray .@q[3],getd(".q_"+@shop_index+"_"+.@q[0]+"[0]"),getarraysize(getd(".q_"+@shop_index+"_"+.@q[0])); set .@q[2],.@q[1]*.@q[3]; if (!.@q[2] || .@q[2] > 30000) { message strcharinfo(0),"You can't purchase that many "+getitemname(.@q[0])+"."; end; } mes "[Quest Shop]"; mes "Reward: ^0055FF"+((.@q[2] > 1)?.@q[2]+"x ":"")+Slot(.@q[0])+"^000000"; mes "Requirements:"; disable_items; if (.@q[4]) mes " > "+Chk(Zeny,.@q[4]*.@q[1])+(.@q[4]*.@q[1])+" Zeny^000000"; if (.@q[5]) mes " > "+Chk(getd(.Points$[0]),.@q[5]*.@q[1])+(.@q[5]*.@q[1])+" "+.Points$[1]+" ("+getd(.Points$[0])+"/"+(.@q[5]*.@q[1])+")^000000"; if (.@q[6]) for(set .@i,6; .@i<getarraysize(.@q); set .@i,.@i+2) mes " > "+Chk(countitem(.@q[.@i]),.@q[.@i+1]*.@q[1])+((.ShowID)?"{"+.@q[.@i]+"} ":"")+Slot(.@q[.@i])+" ("+countitem(.@q[.@i])+"/"+(.@q[.@i+1]*.@q[1])+")^000000"; next; setarray @qe[1], getiteminfo(.@q[0],5), getiteminfo(.@q[0],11); if (@qe[2] > 0 && ((@qe[1] & EQP_HEAD_LOW) || (@qe[1] & EQP_HEAD_TOP) || (@qe[1] & EQP_HEAD_MID) || (@qe[1] & EQP_COSTUME_HEAD_TOP) || (@qe[1] & EQP_COSTUME_HEAD_MID) || (@qe[1] & EQP_COSTUME_HEAD_LOW) || (@qe[1] & EQP_GARMENT) || (@qe[1] & EQP_COSTUME_GARMENT))) set .@preview,1; addtimer 1000, strnpcinfo(0)+"::OnEnd"; while(1) { switch(select(" ~ Purchase ^0055FF"+getitemname(.@q[0])+"^000000:"+((.@preview && !@qe[7])?" ~ Preview...":"")+": ~ ^777777Cancel^000000")) { case 1: if (@qe[0]) { mes "[Forging For Newbies]"; mes "You're missing one or more quest requirements."; close; } if (!checkweight(.@q[0],.@q[2])) { mes "[Quest Shop]"; mes "^FF0000You need "+(((.@q[2]*getiteminfo(.@q[0],6))+Weight-MaxWeight)/10)+" additional weight capacity to complete this trade.^000000"; close; } if (.@q[4]) set Zeny, Zeny-(.@q[4]*.@q[1]); if (.@q[5]) setd .Points$[0], getd(.Points$[0])-(.@q[5]*.@q[1]); if (.@q[6]) for(set .@i,6; .@i<getarraysize(.@q); set .@i,.@i+2) delitem .@q[.@i],.@q[.@i+1]*.@q[1]; if (rand(1,100) <= .SuccessRate) { getitem .@q[0],.@q[2]; for(.@z = 0; .@z < getarraysize(.add_reward_items); .@z += 2) { getitem .add_reward_items[.@z], .add_reward_items[.@z+1]; } } else { // FAIL! for(.@z = 0; .@z < getarraysize(.fail_reward_items); .@z += 2) { getitem .fail_reward_items[.@z], .fail_reward_items[.@z+1]; } } if (.Announce) announce strcharinfo(0)+" has created "+((.@q[2] > 1)?.@q[2]+"x "+getitemname(.@q[0]):callfunc("F_InsertArticle",getitemname(.@q[0])))+"!",0; specialeffect2 EF_FLOWERLEAF; close; case 2: setarray @qe[3], getlook(LOOK_HEAD_BOTTOM), getlook(LOOK_HEAD_TOP), getlook(LOOK_HEAD_MID), getlook(LOOK_ROBE), 1; if ((@qe[1] & 1) || (@qe[1] & 4096)) changelook LOOK_HEAD_BOTTOM, @qe[2]; else if ((@qe[1] & 256) || (@qe[1] & 1024)) changelook LOOK_HEAD_TOP, @qe[2]; else if ((@qe[1] & 512) || (@qe[1] & 2048)) changelook LOOK_HEAD_MID, @qe[2]; else if ((@qe[1] & 4) || (@qe[1] & 8192)) changelook LOOK_ROBE, @qe[2]; break; case 3: close; } } OnEnd: if (@qe[7]) { changelook LOOK_HEAD_BOTTOM, @qe[3]; changelook LOOK_HEAD_TOP, @qe[4]; changelook LOOK_HEAD_MID, @qe[5]; changelook LOOK_ROBE, @qe[6]; } deletearray @qe[0],8; end; function Add { if (getitemname(getarg(1)) == "null") { debugmes "Quest reward #"+getarg(1)+" invalid (skipped)."; return; } setarray .@j[0],getarg(2),getarg(3),getarg(4); for(set .@i,5; .@i<getargcount(); set .@i,.@i+2) { if (getitemname(getarg(.@i)) == "null") { debugmes "Quest requirement #"+getarg(.@i)+" invalid (skipped)."; return; } else setarray .@j[.@i-2],getarg(.@i),getarg(.@i+1); } copyarray getd(".q_"+getarg(0)+"_"+getarg(1)+"[0]"),.@j[0],getarraysize(.@j); npcshopadditem "myshop"+getarg(0),getarg(1),((.ShowZeny)?getarg(3):0); return; } function Chk { if (getarg(0) < getarg(1)) { set @qe[0],1; return "^FF0000"; } else return "^00FF00"; } function Slot { set .@s$,getitemname(getarg(0)); switch(.ShowSlot) { case 1: if (!getitemslots(getarg(0))) return .@s$; case 2: if (getiteminfo(getarg(0),2) == 4 || getiteminfo(getarg(0),2) == 5) return .@s$+" ["+getitemslots(getarg(0))+"]"; default: return .@s$; } } } function script qshop { deletearray @i[0],getarraysize(@i); for(set .@i,0; .@i<getargcount(); set .@i,.@i+1) set @i[.@i],getarg(.@i); doevent "my_shop::OnMenu"; end; } // Dummy shop data -- copy as needed. //============================================================ - shop mshop1 -1,909:-1 - shop mshop2 -1,909:-1 - shop mshop3 -1,909:-1 - shop mshop4 -1,909:-1 - shop mshop5 -1,909:-1 Explanation: Add: // ----------------------------------------------------------- // Basic shop settings. // ----------------------------------------------------------- set .Announce,1; // Announce quest completion? (1: yes / 0: no) set .ShowSlot,1; // Show item slots? (2: all equipment / 1: if slots > 0 / 0: never) set .ShowID,0; // Show item IDs? (1: yes / 0: no) set .ShowZeny,0; // Show Zeny cost, if any? (1: yes / 0: no) set .MaxStack,100; // Max number of quest items purchased at one time. // ----------------------------------------------------------- // Random Chance Settings // ----------------------------------------------------------- set .SuccessRate, 20; setarray .add_reward_items[0], 501, 1, 502, 2; // <id, amount> setarray .fail_reward_items[0], 501, 1, 502, 2; // <id, amount> and if (rand(1,100) <= .SuccessRate) { getitem .@q[0],.@q[2]; for(.@z = 0; .@z < getarraysize(.add_reward_items); .@z += 2) { getitem .add_reward_items[.@z], .add_reward_items[.@z+1]; } } else { // FAIL! for(.@z = 0; .@z < getarraysize(.fail_reward_items); .@z += 2) { getitem .fail_reward_items[.@z], .fail_reward_items[.@z+1]; } } Solved by @Z3R0
  16. Hi, rAthena Community can someone help me with this fast script... trying to find a similar script but i cant like i want... Effect: Autocast 1% 'Skill' If refine +9 o more => +0.5% chance to autocast if refine +10 or more => +0.5% chance to autocast total = 2%. bonus3 bAutoSpellWhenHit,"NPC_WIDEBLEEDING",1,10; Thx!
  17. Hi, rAthena Community i've a new Requestion/Question is there a way to put on the Euphy's Quest Shop these 2 things: 1.- Add option reward i mean... something like 20% Success creation and give you the item also a Miscellaneous Item and about... 80% to Fail and give you other Miscellaneous Item for Ex: 20% to Create a Main Gauche [4] +1 Gold bonus<--- that if Success and 80% to give you "Coal".... <--- that if Fail 2.- uhm.... i forgot about the second... trying to remember for now... this ^^ //===== rAthena Script ======================================= //= Euphy's Quest Shop //===== By: ================================================== //= Euphy //===== Current Version: ===================================== //= 1.6 //===== Compatible With: ===================================== //= rAthena SVN r16862+ //===== Description: ========================================= //= A dynamic quest shop based on Lunar's, with easier config. //= Includes support for multiple shops & cashpoints. //= Item Preview script by ToastOfDoom. //============================================================ // Shop NPCs -- supplying no argument displays entire menu. // callfunc "qshop"{,<shop ID>{,<shop ID>{,...}}}; //============================================================ prontera,164,203,6 script Quest Shop#1 998,{ callfunc "qshop"; } // Script Core //============================================================ - script quest_shop -1,{ function Add; function Chk; function Slot; function A_An; OnInit: freeloop(1); // ----------------------------------------------------------- // Basic shop settings. // ----------------------------------------------------------- set .Announce,1; // Announce quest completion? (1: yes / 0: no) set .ShowSlot,1; // Show item slots? (2: all equipment / 1: if slots > 0 / 0: never) set .ShowID,0; // Show item IDs? (1: yes / 0: no) set .ShowZeny,0; // Show Zeny cost, if any? (1: yes / 0: no) set .MaxStack,100; // Max number of quest items purchased at one time. // ----------------------------------------------------------- // Points variable -- optional quest requirement. // setarray .Points$[0],"<variable name>","<display name>"; // ----------------------------------------------------------- setarray .Points$[0],"#CASHPOINTS","Cash Points"; // ----------------------------------------------------------- // Shop IDs -- to add shops, copy dummy data at bottom of file. // setarray .Shops$[1],"<Shop 1>","<Shop 2>"{,...}; // ----------------------------------------------------------- setarray .Shops$[1],"Headgears","Weapons","Other"; // ----------------------------------------------------------- // Quest items -- do NOT use a reward item more than once! // Add(<shop ID>,<reward ID>,<reward amount>, // <Zeny cost>,<point cost>, // <required item ID>,<required item amount>{,...}); // ----------------------------------------------------------- Add(1,5022,1,0,0,7086,1,969,10,999,40,1003,50,984,2); Add(1,5032,1,0,0,1059,250,2221,1,2227,1,7063,600); Add(1,5027,1,0,0,2252,1,1036,400,7001,50,4052,1); Add(1,5045,1,0,0,2252,1,1054,450,943,1200); Add(2,1224,1,0,0,7297,30,969,10,999,50,714,10); Add(2,1225,1,0,0,7292,30,969,10,999,50,714,10); Add(3,531,1,3,0,512,1,713,1); Add(3,532,1,3,0,513,1,713,1); Add(3,533,1,3,0,514,1,713,1); Add(3,534,1,3,0,515,1,713,1); // ----------------------------------------------------------- freeloop(0); set .menu$,""; for(set .@i,1; .@i<=getarraysize(.Shops$); set .@i,.@i+1) { set .menu$, .menu$+.Shops$[.@i]+":"; npcshopdelitem "qshop"+.@i,909; } end; OnMenu: set .@size, getarraysize(@i); if (!.@size) set .@i, select(.menu$); else if (.@size == 1) set .@i, @i[0]; else { for(set .@j,0; .@j<.@size; set .@j,.@j+1) set .@menu$, .@menu$+.Shops$[@i[.@j]]+":"; set .@i, @i[select(.@menu$)-1]; } deletearray @i[0],getarraysize(@i); if (.Shops$[.@i] == "") { message strcharinfo(0),"An error has occurred."; end; } dispbottom "Select one item at a time."; callshop "qshop"+.@i,1; npcshopattach "qshop"+.@i; end; OnBuyItem: // .@q[] : RewardID, BoughtAmt, RewardAmt, BaseAmt, ReqZeny, ReqPts, { ReqItem, ReqAmt, ... } setarray .@q[0],@bought_nameid[0],((@bought_quantity[0] > .MaxStack)?.MaxStack:@bought_quantity[0]); copyarray .@q[3],getd(".q_"+.@q[0]+"[0]"),getarraysize(getd(".q_"+.@q[0])); set .@q[2],.@q[1]*.@q[3]; if (!.@q[2] || .@q[2] > 30000) { message strcharinfo(0),"You can't purchase that many "+getitemname(.@q[0])+"."; end; } mes "[Quest Shop]"; mes "Reward: ^0055FF"+((.@q[2] > 1)?.@q[2]+"x ":"")+Slot(.@q[0])+"^000000"; mes "Requirements:"; if (.@q[4]) mes " > "+Chk(Zeny,.@q[4]*.@q[1])+(.@q[4]*.@q[1])+" Zeny^000000"; if (.@q[5]) mes " > "+Chk(getd(.Points$[0]),.@q[5]*.@q[1])+(.@q[5]*.@q[1])+" "+.Points$[1]+" ("+getd(.Points$[0])+"/"+(.@q[5]*.@q[1])+")^000000"; if (.@q[6]) for(set .@i,6; .@i<getarraysize(.@q); set .@i,.@i+2) mes " > "+Chk(countitem(.@q[.@i]),.@q[.@i+1]*.@q[1])+((.ShowID)?"{"+.@q[.@i]+"} ":"")+Slot(.@q[.@i])+" ("+countitem(.@q[.@i])+"/"+(.@q[.@i+1]*.@q[1])+")^000000"; next; setarray @qe[1], getiteminfo(.@q[0],5), getiteminfo(.@q[0],11); if (((@qe[1] & 1) || (@qe[1] & 256) || (@qe[1] & 512)) && @qe[2] > 0) set .@preview,1; addtimer 1000, strnpcinfo(0)+"::OnEnd"; while(1) { switch(select(" ~ Purchase ^0055FF"+getitemname(.@q[0])+"^000000:"+((.@preview && !@qe[6])?" ~ Preview...":"")+": ~ ^777777Cancel^000000")) { case 1: if (@qe[0]) { mes "[Quest Shop]"; mes "You're missing one or more quest requirements."; close; } if (!checkweight(.@q[0],.@q[2])) { mes "[Quest Shop]"; mes "^FF0000You need "+(((.@q[2]*getiteminfo(.@q[0],6))+Weight-MaxWeight)/10)+" additional weight capacity to complete this trade.^000000"; close; } if (.@q[4]) set Zeny, Zeny-(.@q[4]*.@q[1]); if (.@q[5]) setd .Points$[0], getd(.Points$[0])-(.@q[5]*.@q[1]); if (.@q[6]) for(set .@i,6; .@i<getarraysize(.@q); set .@i,.@i+2) delitem .@q[.@i],.@q[.@i+1]*.@q[1]; getitem .@q[0],.@q[2]; if (.Announce) announce strcharinfo(0)+" has created "+((.@q[2] > 1)?.@q[2]+"x "+getitemname(.@q[0]):A_An(getitemname(.@q[0])))+"!",0; specialeffect2 699; close; case 2: setarray @qe[3], getlook(LOOK_HEAD_BOTTOM), getlook(LOOK_HEAD_TOP), getlook(LOOK_HEAD_MID), 1; if (@qe[1] & 1) changelook LOOK_HEAD_BOTTOM, @qe[2]; if (@qe[1] & 256) changelook LOOK_HEAD_TOP, @qe[2]; if (@qe[1] & 512) changelook LOOK_HEAD_MID, @qe[2]; break; case 3: close; } } OnEnd: if (@qe[6]) { changelook LOOK_HEAD_BOTTOM, @qe[3]; changelook LOOK_HEAD_TOP, @qe[4]; changelook LOOK_HEAD_MID, @qe[5]; } deletearray @qe[0],7; end; function Add { if (getitemname(getarg(1)) == "null") { debugmes "Quest reward #"+getarg(1)+" invalid (skipped)."; return; } setarray .@j[0],getarg(2),getarg(3),getarg(4); for(set .@i,5; .@i<getargcount(); set .@i,.@i+2) { if (getitemname(getarg(.@i)) == "null") { debugmes "Quest requirement #"+getarg(.@i)+" invalid (skipped)."; return; } else setarray .@j[.@i-2],getarg(.@i),getarg(.@i+1); } copyarray getd(".q_"+getarg(1)+"[0]"),.@j[0],getarraysize(.@j); npcshopadditem "qshop"+getarg(0),getarg(1),((.ShowZeny)?getarg(3):0); return; } function Chk { if (getarg(0) < getarg(1)) { set @qe[0],1; return "^FF0000"; } else return "^00FF00"; } function Slot { set .@s$,getitemname(getarg(0)); switch(.ShowSlot) { case 1: if (!getitemslots(getarg(0))) return .@s$; case 2: if (getiteminfo(getarg(0),2) == 4 || getiteminfo(getarg(0),2) == 5) return .@s$+" ["+getitemslots(getarg(0))+"]"; default: return .@s$; } } function A_An { setarray .@A$[0],"a","e","i","o","u"; set .@B$, "_"+getarg(0); for(set .@i,0; .@i<5; set .@i,.@i+1) if (compare(.@B$,"_"+.@A$[.@i])) return "an "+getarg(0); return "a "+getarg(0); } } function script qshop { deletearray @i[0],getarraysize(@i); for(set .@i,0; .@i<getargcount(); set .@i,.@i+1) set @i[.@i],getarg(.@i); doevent "quest_shop::OnMenu"; end; } // Dummy shop data -- copy as needed. //============================================================ - shop qshop1 -1,909:-1 - shop qshop2 -1,909:-1 - shop qshop3 -1,909:-1 - shop qshop4 -1,909:-1 - shop qshop5 -1,909:-1 PD: If thinks there's other npc that can work with this feel free to add it c: i said "euphy's quest shop" because usually is the one used as base to edit...
  18. Nice! thx is what i wanted <3 Max 128, see mob skill_idx type if need this higher so can be even higher than 128?
  19. sure on a moment, i add some skills to a mob alot of skills to test then add a custom mob with a similar skills 2845,Drops Ringleader@NPC_POWERUP,attack,349,5,10000,0,50000,no,self,myhpltmaxrate,90,,,,,,6, 2845,Drops Ringleader@NPC_POWERUP,attack,349,5,10000,0,50000,no,self,myhpltmaxrate,80,,,,,,6, //2845,Drops Ringleader@NPC_POWERUP,attack,349,5,10000,0,50000,no,self,myhpltmaxrate,70,,,,,,6, //2845,Drops Ringleader@NPC_POWERUP,attack,349,5,10000,0,50000,no,self,myhpltmaxrate,65,,,,,,6, //2845,Drops Ringleader@NPC_POWERUP,attack,349,5,10000,0,50000,no,self,myhpltmaxrate,60,,,,,,6, 2845,Drops Ringleader@NPC_POWERUP,attack,349,5,10000,0,50000,no,self,myhpltmaxrate,55,,,,,,6, //2845,Drops Ringleader@NPC_POWERUP,attack,349,5,10000,0,50000,no,self,myhpltmaxrate,50,,,,,,6, //2845,Drops Ringleader@NPC_POWERUP,attack,349,5,10000,0,50000,no,self,myhpltmaxrate,45,,,,,,6, //2845,Drops Ringleader@NPC_POWERUP,attack,349,5,10000,0,50000,no,self,myhpltmaxrate,40,,,,,,6, //2845,Drops Ringleader@NPC_POWERUP,attack,349,5,10000,0,50000,no,self,myhpltmaxrate,35,,,,,,6, 2845,Drops Ringleader@NPC_POWERUP,attack,349,5,10000,0,50000,no,self,myhpltmaxrate,30,,,,,,6, //2845,Drops Ringleader@NPC_POWERUP,attack,349,5,10000,0,50000,no,self,myhpltmaxrate,25,,,,,,6, //2845,Drops Ringleader@NPC_POWERUP,attack,349,5,10000,0,50000,no,self,myhpltmaxrate,20,,,,,,6, 2845,Drops Ringleader@NPC_POWERUP,attack,349,5,10000,0,50000,no,self,myhpltmaxrate,15,,,,,,6, 2845,Drops Ringleader@NPC_POWERUP,attack,349,5,10000,0,50000,no,self,myhpltmaxrate,10,,,,,,6, 2845,Drops Ringleader@NPC_POWERUP,attack,349,5,10000,0,50000,no,self,myhpltmaxrate,5,,,,,,6, 2845,Drops Ringleader@NPC_WIDEFREEZE,chase,664,5,10000,0,20000,yes,self,myhpltmaxrate,80,,,,,,32, 2845,Drops Ringleader@NPC_WIDEFREEZE,attack,664,5,10000,0,20000,yes,self,myhpltmaxrate,80,,,,,,32, //2845,Drops Ringleader@NPC_WIDEFREEZE,chase,664,5,10000,0,20000,yes,self,myhpltmaxrate,60,,,,,,32, //2845,Drops Ringleader@NPC_WIDEFREEZE,attack,664,5,10000,0,20000,yes,self,myhpltmaxrate,60,,,,,,32, //2845,Drops Ringleader@NPC_WIDEFREEZE,chase,664,5,10000,0,20000,yes,self,myhpltmaxrate,50,,,,,,32, //2845,Drops Ringleader@NPC_WIDEFREEZE,attack,664,5,10000,0,20000,yes,self,myhpltmaxrate,50,,,,,,32, //2845,Drops Ringleader@NPC_WIDEFREEZE,chase,664,5,10000,0,20000,yes,self,myhpltmaxrate,30,,,,,,32, //2845,Drops Ringleader@NPC_WIDEFREEZE,attack,664,5,10000,0,20000,yes,self,myhpltmaxrate,30,,,,,,32, 2845,Drops Ringleader@NPC_WIDEFREEZE,chase,664,5,10000,0,20000,yes,self,myhpltmaxrate,15,,,,,,32, 2845,Drops Ringleader@NPC_WIDEFREEZE,attack,664,5,10000,0,20000,yes,self,myhpltmaxrate,15,,,,,,32, 2845,Drops Ringleader@NPC_WIDEFREEZE,chase,664,5,10000,0,20000,yes,self,myhpltmaxrate,5,,,,,,32, 2845,Drops Ringleader@NPC_WIDEFREEZE,attack,664,5,10000,0,20000,yes,self,myhpltmaxrate,5,,,,,,32, 2845,Drops Ringleader@MO_BODYRELOCATION,chase,264,1,2000,500,5000,no,target,always,,,,,,,6, 2845,Drops Ringleader@PR_LEXAETERNA,attack,78,1,500,1000,5000,yes,target,always,,,,,,,6, 2845,Drops Ringleader@PR_LEXAETERNA,chase,78,1,500,1000,5000,yes,target,always,,,,,,,6, 2845,Drops Ringleader@AL_TELEPORT,idle,26,1,5000,0,5000,yes,self,rudeattacked,,,,,,,, 2845,Drops Ringleader@AL_TELEPORT,walk,26,1,5000,0,5000,yes,self,rudeattacked,,,,,,,, //2845,Drops Ringleader@AL_TELEPORT,attack,26,1,500,0,5000,yes,self,myhpltmaxrate,50,,,,,,, //2845,Drops Ringleader@AL_TELEPORT,attack,26,1,500,0,5000,yes,self,myhpltmaxrate,40,,,,,,, //2845,Drops Ringleader@AL_TELEPORT,attack,26,1,500,0,5000,yes,self,myhpltmaxrate,30,,,,,,, //2845,Drops Ringleader@AL_TELEPORT,attack,26,1,500,0,5000,yes,self,myhpltmaxrate,20,,,,,,, //2845,Drops Ringleader@AL_TELEPORT,attack,26,1,500,0,5000,yes,self,myhpltmaxrate,10,,,,,,, //2845,Drops Ringleader@AL_TELEPORT,attack,26,1,500,0,5000,yes,self,myhpltmaxrate,5,,,,,,, 2845,Drops Ringleader@AL_TELEPORT,attack,26,1,500,0,5000,yes,self,myhpltmaxrate,4,,,,,,, 2845,Drops Ringleader@AL_TELEPORT,attack,26,1,500,0,5000,yes,self,myhpltmaxrate,3,,,,,,, 2845,Drops Ringleader@AL_TELEPORT,attack,26,1,500,0,5000,yes,self,myhpltmaxrate,2,,,,,,, 2845,Drops Ringleader@AL_TELEPORT,attack,26,1,500,0,5000,yes,self,myhpltmaxrate,1,,,,,,, //2845,Drops Ringleader@NPC_TELEKINESISATTACK,attack,191,5,500,0,5000,yes,target,always,,,,,,,6, //2845,Drops Ringleader@NPC_WATERATTACK,attack,184,3,500,500,5000,no,target,always,,,,,,,19, //2845,Drops Ringleader@NPC_FIREATTACK,attack,186,1,2000,0,5000,yes,target,always,,,,,,,, 2845,Drops Ringleader@NPC_RANDOMATTACK,attack,183,8,1000,500,5000,no,target,always,0,,,,,,, 2845,Drops Ringleader@CR_AUTOGUARD,attack,249,5,500,0,300000,yes,self,always,,,,,,,, 2845,Drops Ringleader@CR_AUTOGUARD,chase,249,5,500,0,300000,yes,self,longrangeattacked,,,,,,,, 2845,Drops Ringleader@CR_REFLECTSHIELD,attack,252,3,1000,0,200000,no,self,always,,,,,,,7, //2845,Drops Ringleader@NPC_PULSESTRIKE,attack,661,5,2000,0,30000,yes,self,always,,,,,,,, //2845,Drops Ringleader@NPC_PULSESTRIKE,chase,661,5,2000,0,30000,yes,self,always,,,,,,,, 2845,Drops Ringleader@NPC_SLOWCAST,attack,672,5,10000,0,30000,yes,self,always,,,,,,,, 2845,Drops Ringleader@NPC_WIDECURSE,attack,677,5,5000,800,5000,no,self,always,,,,,,,, 2845,Drops Ringleader@NPC_WIDECURSE,chase,677,5,5000,800,5000,no,self,always,,,,,,,, 2845,Drops Ringleader@SA_DISPELL,attack,289,5,100,0,30000,yes,target,always,,,,,,,, 2845,Drops Ringleader@SA_DISPELL,chase,289,5,100,0,30000,yes,target,always,,,,,,,, 2845,Drops Ringleader@AL_PNEUMA,idle,25,1,10000,0,1000,yes,self,longrangeattacked,,,,,,,, 2845,Drops Ringleader@AL_PNEUMA,attack,25,1,2000,0,5000,yes,target,longrangeattacked,0,,,,,,18, 2845,Drops Ringleader@AL_PNEUMA,chase,25,1,2000,0,5000,yes,target,longrangeattacked,0,,,,,,18, 2845,Drops Ringleader@WZ_METEOR,chase,83,3,1000,500,10000,no,target,always,,,,,,,, 2845,Drops Ringleader@WZ_METEOR,chase,83,3,3000,500,10000,no,target,skillused,18,,,,,,, 2845,Drops Ringleader@WZ_QUAGMIRE,attack,92,5,500,500,5000,no,target,always,,,,,,,11, 2845,Drops Ringleader@WZ_QUAGMIRE,chase,92,5,500,200,5000,no,target,always,,,,,,,11, //2845,Drops Ringleader@CR_ACIDDEMONSTRATION,chase,490,10,10000,500,10000,no,target,always,0,,,,,,, //2845,Drops Ringleader@CR_ACIDDEMONSTRATION,attack,490,10,10000,500,10000,no,target,always,0,,,,,,, 2845,Drops Ringleader@KN_BOWLINGBASH,attack,62,5,1000,0,10000,yes,target,always,0,,,,,,, 2845,Drops Ringleader@MO_EXTREMITYFIST,attack,271,5,10000,500,10000,no,target,always,0,,,,,,6, 2845,Drops Ringleader@AS_SONICBLOW,attack,136,1,2000,0,5000,yes,target,always,0,,,,,,, 2845,Drops Ringleader@AL_TELEPORT,attack,26,1,500,0,5000,yes,self,myhpltmaxrate,10,,,,,,, even i tested with those with "//" but still happen and for produce_db i just changed some that already exit for other recipes but that message show //---- Metals ---------------------------------- //-- Iron <-- BS_IRON & 1 Iron Ore //-- 112,998,21,94,1,1002,1 //-- Gold <-- BS_IRON & 5 Gold Ore 266,969,21,94,1,7231,5 //-- Gold Bullion <-- BS_IRON & 3 Gold 267,7228,21,94,1,969,3 //-- Gold Anvil <-- BS_IRON //-- 268, //-- Gold Coin <-- BS_IRON //-- 269, //-- Mithril <-- BS_IRON & 5 Mithril Ore 270,7757,21,94,1,7233,5 //===== Potions === ItemLV=22 ================== //---- Health Potions -------------------------- //-- Red Potion <-- AM_PHARMACY & Potion Creation Guide & 1 Red Herb, 1 Empty Potion Bottle //-- 119,501,22,228,1,7144,0,507,1,1093,1 //---- Mix Cooking --- ItemLV=27 --------------- //-- Savage BBQ <-- GN_MIX_COOKING Lv1, Mix Cook Book, 1 Melange Pot, 1 Savage Meat, 1 Cooking Skewer, 1 Black Charcoal //-- 240,12429,20,2495,1,11022,0,6248,1,6249,1,6250,1,6251,1 //-- Wug Blood Cocktail <-- GN_MIX_COOKING Lv1, Mix Cook Book, 1 Melange Pot, 3 Wolf Blood, 2 Cold Ice //-- 241,12430,20,2495,1,11022,0,6248,1,6252,3,6253,2 //-- Minor Brisket <-- GN_MIX_COOKING Lv1, Mix Cook Book, 1 Melange Pot, 2 Beef Head Meat, 1 Large Cookpot //-- 242,12431,20,2495,1,11022,0,6248,1,6254,2,6255,1 //-- Siroma Icetea <-- GN_MIX_COOKING Lv1, Mix Cook Book, 1 Melange Pot, 3 Ice Fragment, 2 Ice Crystal, 1 Comodo Tropic Fruit //-- 243,12432,20,2495,1,11022,0,6248,1,6256,3,6257,2,6258,1 //-- Drocera Herb Stew <-- GN_MIX_COOKING Lv1, Mix Cook Book, 3 Red Herb, 3 White Herb, 3 Blue Herb, 1 Melange Pot, 1 Large Cookpot, 1 Drocera Tentacle //-- 244,12433,20,2495,1,11022,0,507,3,509,3,510,3,6248,1,6255,1,6259,3 //-- Petti Tail Noodle <-- GN_MIX_COOKING Lv1, Mix Cook Book, 1 Melange Pot, 2 Petti Tail, 1 Fine Noodle, 1 Cool Gravy //-- 245,12434,20,2495,1,11022,0,6248,1,6260,2,6261,1,6262,1 //-- HP Increase Potion (Small) <-- GN_S_PHARMACY Lv1, Increase Stamina Study, 10 White Herb, 5 Monster's Feed, 10 Empty Bottle, 1 Hot Sauce //-- 254,12422,22,2497,1,11023,0,509,10,528,5,713,10,7455,1 //-- HP Increase Potion (Medium) <-- GN_S_PHARMACY Lv1, Increase Stamina Study, 10 Yellow Herb, 10 White Herb, 10 Empty Bottle, 1 Hot Sauce //-- 255,12423,22,2497,1,11023,0,508,10,509,10,713,10,7455,1 //-- HP Increase Potion (Large) <-- GN_S_PHARMACY Lv1, Increase Stamina Study, 15 White Herb, 3 Fruit Of Mastela, 1 Holy Water, 10 Empty Bottle, 1 Hot Sauce //-- 256,12424,22,2497,1,11023,0,509,15,522,3,523,1,713,10,7455,1 //-- SP Increase Potion (Small) <-- GN_S_PHARMACY Lv1, Vital Drink CB, 10 Grape, 10 Lemon, 10 Empty Bottle, 1 Sweet Sauce //-- 257,12425,22,2497,1,11024,0,514,10,568,10,713,10,7453,1 //-- SP Increase Potion (Medium) <-- GN_S_PHARMACY Lv1, Vital Drink CB, 10 Blue Herb, 10 Honey, 10 Empty Bottle, 1 Sweet Sauce //-- 258,12426,22,2497,1,11024,0,510,10,518,10,713,10,7453,1 //-- SP Increase Potion (Large) <-- GN_S_PHARMACY Lv1, Vital Drink CB, 15 Blue Herb, 10 Royal Jelly, 10 Empty Bottle, 1 Sweet Sauce //-- 259,12427,22,2497,1,11024,0,510,15,526,10,713,10,7453,1 //-- Enrich White Potion Z <-- GN_S_PHARMACY Lv1, Quality Potion Book, 20 White Potion, 10 White Herb, 1 Alchol, 10 Empty Cylinder //-- 260,12428,22,2497,1,6285,0,504,20,509,10,970,1,1092,10 //-- Vitata 500 <-- GN_S_PHARMACY Lv1, Quality Potion Book, 10 Blue Herb, 10 Grape, 10 Honey, 10 Empty Cylinder //-- 261,12436,22,2497,1,6285,0,510,10,514,10,518,10,1092,10 //-- Enrich Celermine Juice <-- GN_S_PHARMACY Lv1, Quality Potion Book, 5 Center Potion, 5 Awakening Potion, 10 Empty Cylinder, 5 Hot Sauce //-- 262,12437,22,2497,1,6285,0,645,5,656,5,1092,10,7455,5 //-- Cure Free <-- GN_S_PHARMACY Lv1, Quality Potion Book, 20 Green Herb, 1 Fruit Of Mastela, 5 Panacea, 1 Leaf Of Yggdrasil, 10 Empty Cylinder //-- 263,12475,22,2497,1,6285,0,511,20,522,1,525,5,610,1,1092,10 the "metals" is working but i dont know why that message show :/ PD: is for a server pre-re for that reason trying to add stuff from rene to pre-re like recipes...
  20. Hi, rAthena Community i've some problems and i need some answers... 1.- Is there a limit about how many skills for 1 mob or custom mob ¿? i try adding some skills on import/mob_skill_db.txt but something about "too many skills" ... 2.- about the 1st screenshot below is there also a limit about produce ¿? 3.- if the 1st or 2nd question is "yes its a limit" is there a way to increase that limit ¿? i mean editing source or something.... ¿? 4.- also what means that error on the 2nd screenshot
  21. Thx, last 2 questions: 1.- Is there a way to the "box" item not consume if i dont have the "key" item ¿? i mean if i've the key is consume and work without problems, but i dont dont have the "key" also consume and yeah dont give anything but the "box consume..." that i want is that dont let to consume the box if i dont have the "key" 2.- so i just change this //size of arrays .@basic_size = getarraysize(.@rew_basic) - 1; .@good_size = getarraysize(.@rew_good) - 1; .@best_size = getarraysize(.@rew_best) - 1; to this //size of arrays .@basic_size = getarraysize(.@rew_basic); .@good_size = getarraysize(.@rew_good); .@best_size = getarraysize(.@rew_best); i mean "remove the - 1" ¿?
  22. Looks like is working. not error and anything just editing like i want, for now 2 questions... so... if i wanna create more "boxes" with this script stucture, i just have to rename... 1.- function script CustomBox to something differente like dunno... 'DarkBox', 'LightBox' etc... right ¿? 2.- if i want to add more "chances" i just have to create them ¿? i mean... .@good_chance = 10; //10 = 10% .@best_chance = 1; //1 = 1% setarray .@rew_good,501,502,503,504,505; //your reward items id [good] setarray .@rew_best,501,502,503,504,505; //your reward items id [best] here i guess understand but here.... .@rand = rand(0,100); //randomize chance to get rewards above delitem getarg(1),.@req_amt; //required item is deleted before giving out rewards if(.@rand <= .@best_chance){ //this produces the "best" items .@item = rand(0,.@best_size); //item is randomly chosen from the list if(.@announce) //if announce is active or 1, will announce announce "Congratulations! "+strcharinfo(0)+" has won "+getitemname(.@item)+" from opening a [ "+getitemname(getarg(0))+" ] !!",0; getitem .@rew_best[.@item],.@rew_amt_best[.@item]; end; } if(.@rand <= .@good_chance){ //since we already catch anything that is either 1 or 0 above, no need to add check for <= 1 .@item = rand(0,.@good_size); //item is randomly chosen from the list if(.@announce) //if announce is active or 1, will announce announce "Congratulations! "+strcharinfo(0)+" has won "+getitemname(.@item)+" from opening a [ "+getitemname(getarg(0))+" ] !!",0; getitem .@rew_good[.@item],.@rew_amt_good[.@item]; end; is just change those ".@best_chance" and ".@rew_best" , ".@rew_amt_best" to the new ¿? also... how fix the "null" ><
  23. Tested and worked but... just a question is there a way to put that can "enchant" all equipments ¿? i mean on this part //--------------------------------------------------------------// //if specific put the IDs here //--------------------------------------------------------------// setarray .Weapons$,1601,1201,1204,1207,1210,1213,1216,1219,1222,1247,1248,1249; //right handed weapons setarray .Armors$,2301,2303,2305,2307,2307,2309,2312,2314,2316,2321,2323,2325,2328,2330,2332; //Armors setarray .Shields$,2101,2103,2105,2107,2113,2117; //Shields and left hand weapons setarray .Germents$,2512,2501,2503,2505; //Germents setarray .Shoses$,2416,2401,2403,2405,2411; //Shoses setarray .Accessarys$,2628,2608,2609,2612,2613,2627; //Accessarys setarray .Uppers$,2206,2208,2211,2216; //Uppers setarray .Middels$,2218,2241; //Middels setarray .Lowers$,2628,2206; //Lowers i've to put the ID of the equip that can be able to enchant, but is there a way to put "all equiptments" without taking care this ¿? Edit: Ok.... my bad... is here: //--------------------------------------------------------------// //if you want to put specific IDs for kind of gear put it to 1 //--------------------------------------------------------------// .specific_Weapons = 1; .specific_Armors = 0; .specific_Shields = 0; .specific_Germents = 0; .specific_Shoses = 0; .specific_Accessarys = 0; .specific_Uppers = 0; .specific_Middels = 0; .specific_Lowers = 0;
×
×
  • Create New...