Jump to content

Rivers

Members
  • Posts

    152
  • Joined

  • Last visited

  • Days Won

    1

Community Answers

  1. Rivers's post in Refiner NPC won't read Requirements was marked as the answer   
    Couldn't find what the issue in the above script was, so I replaced it with this one and it worked to the refine rate specified in the script.
    veil,111,199,0 script Vestri#cash 87,{ disable_items; mes "[Vestri]"; mes "I am the Armsmith"; mes "I can refine all kinds of weapons,"; mes "armor and equipment, so let me"; mes "know what you want to refine."; next; setarray [email protected][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; for(set [email protected],1; [email protected]<=10; set [email protected],[email protected]+1) { if (getequipisequiped([email protected][[email protected]])) { set [email protected]$, [email protected]$ + F_getpositionname([email protected][[email protected]]) + "-[" + getequipname([email protected][[email protected]]) + "]"; set [email protected],1; } set [email protected]$, [email protected]$ + ":"; } if ([email protected] == 0) { mes "[Vestri]"; mes "I don't think I can refine any items you have..."; close; } set [email protected], [email protected][ select([email protected]$) ]; if (!getequipisequiped([email protected])) //custom check close; if (!getequipisenableref([email protected])) { mes "[Vestri]"; mes "Go find another Blacksmith. You can't refine this thing."; close; } if (getequiprefinerycnt([email protected]) >= 13) { mes "[Vestri]"; mes "Hmm... someone perfected this already. I don't think I can work on it further."; close; } [email protected] = getequipid([email protected]); // save id of the item [email protected] = getequiprefinerycnt([email protected]); //save refinery count [email protected] = getequiprefinecost([email protected], REFINE_COST_ENRICHED, REFINE_ZENY_COST); [email protected] = getequiprefinecost([email protected], REFINE_COST_ENRICHED, REFINE_MATERIAL_ID); // Make sure you have the necessary items and Zeny to refine your items // Determines chance of failure and verifies that you want to continue. callsub S_RefineValidate,getequipweaponlv([email protected]),[email protected],[email protected],[email protected],[email protected],[email protected]; mes "[Vestri]"; mes "Clang! Clang! Clang!"; if (getequippercentrefinery([email protected], true) > rand(100)) { successrefitem [email protected]; next; emotion ET_BEST; mes "[Vestri]"; mes "There you go! It's done."; mes "It's been a while since I've made such a fine "+((getequipweaponlv([email protected]))?"weapon":"armor")+". You must be happy because it has become stronger!"; close; } failedrefitem [email protected]; next; emotion (!rand(5))?ET_MONEY:ET_HUK; mes "[Vestri]"; mes "Uuuuuuuuuummmmmph!!!"; next; mes "[Vestri]"; mes "..."; mes "....."; mes ".......Huhuhuhuhu~"; mes "........It was your choice and my ability, no regret."; close; S_RefineValidate: [email protected]_lvl = getarg(0); [email protected]_req = getarg(1); [email protected] = getarg(2); [email protected] = getarg(3); setarray [email protected][0], getequipcardid([email protected],0), getequipcardid([email protected],1), getequipcardid([email protected],2), getequipcardid([email protected],3); // If the VIP system is enabled, the prices for non-VIP players are considerably higher. if (VIP_SCRIPT && !vip_status(VIP_STATUS_ACTIVE)) { switch([email protected]_lvl){ case 0: set [email protected], [email protected] * 10; break; case 1: set [email protected], [email protected] * 40; break; case 2: set [email protected], [email protected] * 50; break; case 3: set [email protected], [email protected] * 2; break; case 4: set [email protected], [email protected] * 2; break; } } mes "[Vestri]"; if ([email protected]_lvl) mes "You want to refine a level "+ [email protected]_lvl +" weapon?"; mes "To refine that, you'll need to have one ^ff9999"+ getitemname([email protected]_req) +"^000000 and "+ [email protected] +" zeny."; mes "Would you like to continue?"; next; if(select("Yes:No") == 1) { if (getequippercentrefinery([email protected]) < 100) { if ([email protected]_lvl) { mes "[Vestri]"; mes "Wow!!"; mes "This weapon probably"; mes "looks like it's been refined..."; mes "many times..."; mes "It may break if"; mes "you refine it again."; next; mes "And if it breaks,"; mes "you can't use it anymore!"; mes "All the cards in it and the properties ^ff0000will be lost^000000!"; mes "^ff0000Besides, the equipment will break!^000000"; mes "Are you sure you still want to continue?"; next; if(select("Yes:No") == 2) { mes "[Vestri]"; mes "Good."; mes "Because if the weapon breaks from unreasonable refining, then I get a bad mood, too."; close; } } else { mes "[Vestri]"; mes "Giggle. Giggle. Oh, you have guts, daring to refine this."; mes "You know it's pretty risky, don't you?"; next; mes "If your defensive equipment is broken, you'll never be able to use it again."; mes "Even your cards and your modifications will ^ff0000completely disappear^000000."; //mes "Everything will disappear. As in... GONE!"; mes "Do you really wish to continue?"; next; if(select("Yes:No") == 2) { mes "[Vestri]"; mes "What nonsense. You waste my precious time."; mes "Get lost, punk."; close; } } } if (countitem([email protected]_req) > 0 && Zeny > [email protected]) { delitem [email protected]_req,1; set Zeny, Zeny - [email protected]; // anti-hack if (callfunc("F_IsEquipIDHack", [email protected], getarg(4)) || callfunc("F_IsEquipRefineHack", [email protected], getarg(5)) || callfunc("F_IsEquipCardHack", [email protected], [email protected][0], [email protected][1], [email protected][2], [email protected][3])) { mes "[Holink]"; emotion ET_FRET; mes "Wait a second..."; mes "Do you think I'm stupid?!"; mes "You switched the item while I wasn't looking! Get out of here!"; close; } return; } mes "[Vestri]"; mes "Are these all you have?"; mes "I'm very sorry, but I can't do anything without all the materials. Besides, I deserve some payments for my work, don't I?"; close; } mes "[Vestri]"; mes "I can't help it even if you're not happy about it..."; close; }  
  2. Rivers's post in Is there a way to make Trans Costume with itemDB? was marked as the answer   
    Couldn't find a simple resolution, so I took the long way.
     
    35251,2nd_Class_Costume,2nd Class Costume,4,20,,0,,0,,0,0xFFFFFFFF,63,2,8192,,0,0,,{ bonus bAllStats,1; },{ if(BaseJob==Job_Knight) { changebase 7; } if(BaseJob==Job_Wizard) { changebase 9; } if(BaseJob==Job_Hunter) { changebase 11; } if(BaseJob==Job_Priest) { changebase 8; } if(BaseJob==Job_Blacksmith) { changebase 10; } if(BaseJob==Job_Assassin) { changebase 12; } if(BaseJob==Job_Crusader) { changebase 14; } if(BaseJob==Job_Sage) { changebase 16; } if(BaseJob==Job_Bard) { changebase 19; } if(BaseJob==Job_Dancer) { changebase 20; } if(BaseJob==Job_Monk) { changebase 15; } if(BaseJob==Job_Alchemist) { changebase 18; } if(BaseJob==Job_Rogue) { changebase 17; } },{ changebase Class; }  
  3. Rivers's post in Change lottery rewards from zeny to items was marked as the answer   
    Thanks, I was able to resolve this with adding
        set Zeny, Zeny+$L_Prize_Money_Small;
        getitem 35011,25;    
    to the line you pointed out. Thank you.
  4. Rivers's post in Where can I modify Rankers Status? was marked as the answer   
    Found it in char_athena.conf, just in case anyone else is looking.
    conf/char_athena.conf
    Find & change values to however high you need:
    // Size for the fame-lists
    fame_list_alchemist: 10
    fame_list_blacksmith: 10
    fame_list_taekwon: 10
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use and Privacy Policy.