From 65419729f95e0cc219802b6d12a231be21b70345 Mon Sep 17 00:00:00 2001 From: Stolao Date: Mon, 23 May 2016 05:10:34 -0700 Subject: [PATCH] updated resetnpc --- npc/custom/resetnpc.txt | 84 ++++++++++++++++++----------------------- 1 file changed, 36 insertions(+), 48 deletions(-) diff --git a/npc/custom/resetnpc.txt b/npc/custom/resetnpc.txt index 518a65af34..d0b20f6b89 100644 --- a/npc/custom/resetnpc.txt +++ b/npc/custom/resetnpc.txt @@ -3,7 +3,7 @@ //===== By: ================================================== //= rAthena Dev Team //===== Current Version: ===================================== -//= 1.3 +//= 1.7 //===== Compatible With: ===================================== //= rAthena Project //===== Description: ========================================= @@ -13,56 +13,44 @@ //= 1.1 Optimized for the greater good. [Kisuka] //= 1.2 Cleaning [Euphy] //= 1.3 All statuses removed upon skill reset. [Euphy] +//= 1.4 Compressed Script [Stolao] +//= 1.5 Added limit use option [Stolao] +//= 1.6 Changed set -> setarray [Stolao] +//= 1.7 Improved text with F_InsertPlural [Stolao] //============================================================ - prontera,150,193,4 script Reset Girl 124,{ - - .@ResetStat = 5000; // Zeny for stat reset - .@ResetSkill = 5000; // Zeny for skill reset - .@ResetBoth = 9000; // Zeny for resetting both together - + // Skills, Stats, Both, Limit + setarray .@Reset, 5000, 5000, 9000, 0; mes "[Reset Girl]"; - mes "I am the Reset Girl."; - mes "Reset Stats: " + callfunc("F_InsertComma", .@ResetStat) + "z"; - mes "Reset Skills: " + callfunc("F_InsertComma", .@ResetSkill) + "z"; - mes "Reset Both: " + callfunc("F_InsertComma", .@ResetBoth) + "z"; - mes "Please select the service you want:"; - next; - switch(select("^FF3355Reset Skills:Reset Stats:Reset Both^000000:Cancel")) { - case 1: - mes "[Reset Girl]"; - if (Zeny < .@ResetSkill) { - mes "Sorry, you don't have enough Zeny."; - close; - } - Zeny -= .@ResetSkill; - sc_end SC_ALL; - resetskill; - mes "There you go!"; - close; - case 2: - mes "[Reset Girl]"; - if (Zeny < .@ResetStat) { - mes "Sorry, you don't have enough Zeny."; - close; - } - Zeny -= .@ResetStat; - resetstatus; - mes "There you go!"; - close; - case 3: - mes "[Reset Girl]"; - if (Zeny < .@ResetBoth) { - mes "Sorry, you don't have enough Zeny."; - close; - } - Zeny -= .@ResetBoth; - sc_end SC_ALL; - resetskill; - resetstatus; - mes "There you go!"; - close; - case 4: + if(.@Reset[3] && reset_limit > .@Reset[3]) { + mes "Sorry you can only reset "+callfunc("F_InsertPlural",.@Reset[3],"time")+" in your life."; close; } + mes "I am the Reset Girl."; + mes "Reset Stats: "+ callfunc("F_InsertComma",.@Reset[1]) +"z"; + mes "Reset Skills: "+ callfunc("F_InsertComma",.@Reset[0]) +"z"; + mes "Reset Both: "+ callfunc("F_InsertComma",.@Reset[2]) +"z"; + if(.@Reset[3]) mes "You may only reset "+callfunc("F_InsertPlural",.@Reset[3],"time")+", so use "+((.@Reset[3]>1)?"them":"it")+" wisely."; + mes "Please select the service you want:"; + next; + set .@i,(select("^FF3355Reset Skills:Reset Stats:Reset Both^000000:Cancel")); + if(.@i > 3) close; + mes "[Reset Girl]"; + if (Zeny < .@Reset[.@i-1]) { + mes "Sorry, you don't have enough Zeny."; + close; + } + if(.@Reset[3]){ + mes "You can only reset "+callfunc("F_InsertPlural",.@Reset[3],"time")+" in your life, are you sure?"; + if(select("Let me think:That's fine") == 1) close; + } + set Zeny, Zeny-.@Reset[.@i-1]; + if(.@i&1){ + sc_end SC_ALL;// TODO make a sc_end current classes sc only + ResetSkill; + } + if(.@i&2) ResetStatus; + mes "There you go!"; + if(.@Reset[3]) set reset_limit,reset_limit + 1; + close; }