// Card removal NPC by TyrNemesis^ prt_in.gat,28,73,4 script Wise Old Woman 78,{ UPGRADEROOT: mes "[Wise Old Woman]"; mes "Good day, young one. I have the power to remove cards that you have compounded onto your equipment. Does this idea please you?"; next; menu "Yes, it does.",REMOVEMENU, "What do you charge?",REMOVEPRICE, "No thanks.",CLOSEOUT; REMOVEPRICE: mes "[Wise Old Woman]"; mes "I charge a flat fee of 200000 zeny, plus 25000 zeny for each card I remove from the item. In addition, I need a star crumb and a yellow gemstone to work my magic."; next; menu "Very well. Let's do it.",REMOVEMENU, "No thanks.",CLOSEOUT; REMOVEMENU: mes "[Wise Old Woman]"; mes "Very well. Which item shall I examine for you?"; next; menu "I changed my mind.",CLOSEOUT, getequipname(1),SLOT1, getequipname(2),SLOT2, getequipname(3),SLOT3, getequipname(4),SLOT4, getequipname(5),SLOT5, getequipname(6),SLOT6, getequipname(7),SLOT7, getequipname(8),SLOT8, getequipname(9),SLOT9, getequipname(10),SLOT10; SLOT1: set @part,1; goto CARDNUMCHECK; SLOT2: set @part,2; goto CARDNUMCHECK; SLOT3: set @part,3; goto CARDNUMCHECK; SLOT4: set @part,4; goto CARDNUMCHECK; SLOT5: set @part,5; goto CARDNUMCHECK; SLOT6: set @part,6; goto CARDNUMCHECK; SLOT7: set @part,7; goto CARDNUMCHECK; SLOT8: set @part,8; goto CARDNUMCHECK; SLOT9: set @part,9; goto CARDNUMCHECK; SLOT10: set @part,10; goto CARDNUMCHECK; CARDNUMCHECK: if(getequipcardcnt(@part) == 0) goto DENYCARDCOUNT; set @cardcount,getequipcardcnt(@part); if(@cardcount > 1) goto CARDNUMMULTIMSG; mes "[Wise Old Woman]"; mes "This item has " + @cardcount + " card compounded on it. To perform my magic, I will need 225000 zeny, a ^0000FFStar Crumb^000000, and a ^0000FFYellow Gemstone^000000."; goto CARDNUMPOSTMSG; CARDNUMMULTIMSG: mes "[Wise Old Woman]"; mes "This item has " + @cardcount + " cards compounded on it. To perform my magic, I will need " + (200000+(@cardcount * 25000)) + " zeny, a ^0000FFStar Crumb^000000, and a ^0000FFYellow Gemstone^000000."; CARDNUMPOSTMSG: next; menu "Very well. Do it.",REMOVECARDWARNING, "Never mind.",CLOSEOUT; REMOVECARDWARNING: mes "[Wise Old Woman]"; mes "Before I begin, I must warn you--I may fail. If I do, I may destroy the cards, the item, or both. I do not give refunds. That being said, which is more important to you: The cards, or the item?"; next; menu "I changed my mind about this.",CLOSEOUT, "The item.",PRIORITYITEM, "The cards.",PRIORITYCARD; PRIORITYITEM: set @failtype,1; goto REMOVECARD; PRIORITYCARD: set @failtype,2; goto REMOVECARD; REMOVECARD: mes "[Wise Old Woman]"; mes "Very well. I shall begin."; next; if((zeny < (200000+(@cardcount * 25000))) || (countitem(1000) < 1) || (countitem(715) < 1)) goto DENYMATERIAL; set zeny,zeny - (200000+(@cardcount * 25000)); delitem 1000,1; delitem 715,1; // Replace the constants in the next 3 lines with failure chance values defined in refine_db.txt // First value = Total failure chance (item and cards destroyed) // Second value = Partial failure chance (one or the other is destroyed, player decides which one is safe) // Third value = Harmless failure chance (all that's lost is your investment) set @failchance,rand(100); // if(@failchance < 2) goto FAILREMOVECARD0; // if((@failchance < 8) && (@failtype == 1)) goto FAILREMOVECARD1; // if((@failchance < 8) && (@failtype == 2)) goto FAILREMOVECARD2; if(@failchance < 10) goto FAILREMOVECARD3; successremovecards @part; mes "[Wise Old Woman]"; mes "The process was a success. Here are your cards and your item. Farewell."; close; FAILREMOVECARD0: mes "[Wise Old Woman]"; mes "The process was a total failure. I am afraid the item and the cards were destroyed."; failedremovecards @part,0; close; FAILREMOVECARD1: mes "[Wise Old Woman]"; mes "While I have managed to remove the cards from the item, they were destroyed in the process. The item, however, is okay."; failedremovecards @part,1; close; FAILREMOVECARD2: mes "[Wise Old Woman]"; mes "Most unfortunate. I succeeded at removing the cards, but the item itself was destroyed in the process."; failedremovecards @part,2; close; FAILREMOVECARD3: mes "[Wise Old Woman]"; mes "I have failed to remove the cards. Luckily, however, both the item and the cards are still okay."; failedremovecards @part,3; close; DENYCARDCOUNT: mes "[Wise Old Woman]"; mes "Young one... There are no cards compounded on this item. I can do nothing with it, I'm afraid."; close; DENYMATERIAL: mes "[Wise Old Woman]"; mes "You do not have all the items I require to work my magic, child. Come again when you do."; close; CLOSEOUT: mes "[Wise Old Woman]"; mes "Very well. Return at once if you seek my services."; close; }