Jump to content

hardelite

Members
  • Posts

    44
  • Joined

  • Last visited

Everything posted by hardelite

  1. The game seems to work fine, however, it shows this error on the console: [Error]: script:run_script_main: infinity loop ! [Debug]: Source (NPC): BG_config (invisible/not on a map) [Debug]: Source (NPC): BG_config is located in: npc/battleground/bg_common.txt The error usually appears after the char entry, when authorized to start the BG via '@startbg'. Any solution for this error? Thank you very much!
  2. Hey, masters! It is good too? Guys, could you help me with this question? I would like to make a modification to Euphy's Quest Shop script. How can I add 'Itenlink' to requirements and rewards? Like the image below: Script: //===== 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>{,...}}}; // ADD YOUR NPC HERE //============================================================ prontera,164,203,6 script Quest Shop#1 998,{ callfunc "qshop"; } // prontera,165,203,6 script Quest Shop#2 998,{ callfunc "qshop",1,2; } // call the shop 1 and 2 defined below // etc.. Add your Shop NPCs 'Quest Shop#XXX' here //============================================================ // Script Core - DO NOT DUPLICATE THIS NPC !!!!!!!!!!!!! //============================================================ - script quest_shop -1,{ function Add; function Chk; function Slot; 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"; //===================================================================================== // ------------------- ADD YOUR SHOPS NAME AND ITEMS SHOPS STARTING HERE -------------- //===================================================================================== // ----------------------------------------------------------- // Shop IDs -- to add shops, copy dummy data at bottom of file. // setarray .Shops$[1],"<Shop 1>","<Shop 2>"{,...}; // ----------------------------------------------------------- setarray .Shops$[1], "Headgears", // Shop Named 1 "Weapons", // Shop Named 2 "Other"; // Shop Named 3 // ----------------------------------------------------------- // 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>{,...}); // ----------------------------------------------------------- // Shop 1 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); // Shop 2 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); // Shop 3 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); // ----------------------------------------------------------- //===================================================================================== // ------------------- YOUR SHOPS AND ITEMS SHOPS HAVE BEEN ADDED --------------------- //===================================================================================== 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 @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 "qshop"+@shop_index,1; npcshopattach "qshop"+@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], ITEMINFO_LOCATIONS), getiteminfo(.@q[0], ITEMINFO_VIEW); 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 "[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], ITEMINFO_WEIGHT))+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]):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 "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), ITEMINFO_TYPE) == 4 || getiteminfo(getarg(0), ITEMINFO_TYPE) == 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 "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 Can someone help me? Honestly, it's too complex for me to understand. Thank you very much.
  3. Thank you all for your help. I don't have any active VIP system, so I think the '' vip_status '' command doesn't work well for me, or maybe it's my trunk version. I used another way, and it seems to be working well for me. I'll leave it below for anyone who has the same problem as mine. if(getgmlevel() >= 1) setarray .@max[1],450,50,80; else setarray .@max[1],150,20,30; setarray .@Look[1],LOOK_CLOTHES_COLOR,LOOK_HAIR,LOOK_HAIR_COLOR; SOLVED!
  4. Thank you very much mr @BeWan But there is a problem. VIP players are failing to exceed the limit of 150, 20, 30. The script contains no errors.
  5. Hi, how are you guys? Could you help me with my npc stylist? Please. If possible, I would like to limit hair styles, colors and clothing for VIP players. Players lv: 1 (VIP) Max cloth color: 450 Max hair style: 50 Max hair color: 80 Players lv: 0 (Normal) Max cloth color: 150 Max hair style: 20 Max hair color: 30 Script: Thank you very much.
  6. It's amazing how you organize the scripts. Congratulations! I am very grateful for your kindness and commitment to helping people. I'm really happy! Thank you very much mr. @Cretino
  7. Mr. @Cretino, Script: Would this error be because the script is trying to pull a ranking table? I tried unsuccessfully to add a ranking using the example of another script, in which case this would be: https://nopaste.xyz/?4ce66c86678ee8e9#9uYl6pv+zIoW+neWMzZGGBvUhnGJDb1RlHu3qsqCHgw= But, due to the script pulling the 'login' and 'guild' table, this caused a lot of delay. I think it would be too complex for me to try to add a ranking. And maybe it would be better if I remove that ranking. I would no longer like to abuse your kindness, sir, but how to fix it?
  8. Thank you Master @Cretino It works perfectly. Just a question about the warning on the map-server. Is this warning normal?
  9. Hello community friends, how are you ?a Please, I wish someone could help me with the prize for this event. Due to the event's award being in points loaded directly into the 'login' and 'guild' tables this generates a huge delay on my server. The award works as follows: Whoever destroys the monsters will receive 100 cashpoints and 100 wotpoints. And the rest of the clan players who manage to survive the event will receive 50 wotpoints. And I would like to change it. But I have no idea how I do it. Is it possible, instead of adding points, to add item? for example: Whoever destroys the mafia will win 100 PoringCoin (7539) And the rest of the clan that survives on the map will win 50 PoringCoin? Script: Honestly, thank you very much!
  10. Thanks for the reply, but it will not do for me. The options mentioned by you in NEMO, are to disable the effect of the skill, which in this case is the skill chat dialog. I want the skill dialog, as it is in my txt files to work correctly.
  11. Hello community, how are you? Please, I wish someone could help me. I'm having trouble with the BA_FROSTJOKER skill. It looks like it's not reading the files ba_frostjoke.txt and dc_scream.txt. I'm using client 2017-06-14bRagexeRE. ba_frostjoke.txt: dc_scream.txt: Sincerely, thank you very much!
  12. Hello community, how are you? Please, can someone explain to me how to edit hair color pallets? Most pallets available for download on the forum have a small spot on the character's face. I don't know if it is an attempt to create a lipstick or mustache, but in my view it didn't match the ragnarok, it doesn't have enough pixel to look like a mustache, but it does look like a stain. After finishing editing, I will make pallets available for download without these stains. How can I remove these spots from image 1, and make it look like image 2? in advance, thank you very much!
  13. Hello community, how are you? Could someone please answer my question? I'm using Extended Vending 2.0 And I want to know how do I remove the TCG Card and Mithril Coin? And replace it with another coin. Sincerely, thank you very much!
  14. Hello community, how are you? Please, could someone give me a grf pack with hair styles and clothes, No mustache and lipstick. thanks in advance!
  15. @edit. I should have added custom as ROBE. I followed this tutorial for anyone with questions: @Sorted out! @NarutoThanks for trying to help.
  16. Hey community, how are you doing? I have a problem with a custom visual that I extracted from an official client. As you can see in the image, the custom is overtaking in front of the character. I added it as a custom custom on my server. Could someone tell me if this is a sprite issue, or would I have to add it as a visual item? SPRITE: _GiantCatBag.rar Thanks in advance!
  17. Congratulations, one of the best skins available. @Elfin, can you explain how you edit the news? please!
  18. Oh, thank you so much mr. @Litro Endemic The example was exceptional. I didn't know what the value "0" meant. Now I understand and can use in the other scripts. Thanks! I will study more. @edit problem solved!
  19. Thanks for the answer @Litro Endemic But this is too complex for me. I can understand this in the simplest script. But in this script specifically I can not understand. My script level is very basic, I try to learn more every day, but when I have these functions "(@map $, @ mapx, ...)" together I get lost. Could you fix this so I can follow suit? Please. if (getmapxy(@mapa$,@mapx,@mapy,0,strcharinfo(0)) != 0) end;
  20. Good afternoon ladies and gentlemen! After updating the rAthena version, I encountered a problem with some old Zephyrus Housing System scripting functions.Error: [Warning]: script: buildin_getmapxy: Invalid type 0. [Debug]: Source (NPC): Piano#Rb1 at rentinb1 (19,15) [Warning]: script: buildin_getmapxy: Invalid type 0. [Debug]: Source (NPC): Interruptor PvP#Rb1 at rentinb1 (23,21) Script: Could someone help me solve them? Please. In advance, thank you very much.
  21. @Cretino, Thanks for the explanation of the error itself. With every script problem, I've been learning and understanding more thanks to people like you. @Mabuhay, thanks for the attention my friend! If you can update the script fix on the original link, I will be grateful. Link: @Problem solved!
  22. Hey, community friends, how are you ?! Please could someone help me fix this script? His problem is as follows: The first time the event starts, everything happens normally, ok! But the next time the event occurs (2nd time), the player simply receives the direct prize, and no bombring is summoned. The event ends before it starts and everyone gets the prize. Script: Best regards, thank you very much!
×
×
  • Create New...