diff options
Diffstat (limited to 'npc/014-5-1')
-rw-r--r-- | npc/014-5-1/sagratha.txt | 68 |
1 files changed, 61 insertions, 7 deletions
diff --git a/npc/014-5-1/sagratha.txt b/npc/014-5-1/sagratha.txt index b84e6c6ff..f59e277c9 100644 --- a/npc/014-5-1/sagratha.txt +++ b/npc/014-5-1/sagratha.txt @@ -56,6 +56,14 @@ function script SaggyMobCount { goto L_Unhappy; .@q=getq(HurnscaldQuest_Sagratha); + .@m=getq(HurnscaldQuest_InjuriedMouboo); + + // Safety - Impossible Situation + if (.@m < 2 || .@m > 3 || .@q < 6) { + Exception("Player found cheating/breaking the rules. Character banned. Please contact GM Staff if you believe this is an error.", RB_DEFAULT|RB_SPEECH); + atcommand "@jail 7h "+strcharinfo(0); + close; + } mesn; @@ -69,12 +77,11 @@ function script SaggyMobCount { mesq l("Hello."); next; - if (.@q == 6) + if (.@m == 2 && .@q == 6) goto L_Reward; + if (.@q == 6) + goto L_Finish; - // TODO: What's your name etc etc - Maybe before the dialog, in the dungeon - // TODO: Handle the curse (menu option) - // TODO: Collect reward (set quest status to 7) // TODO: Allow to return to the Sealed Shrine // TODO: Learn Magic // TODO: Request help with stuff (eg. protecting mouboos?) @@ -83,6 +90,46 @@ function script SaggyMobCount { close; +L_Finish: + // WHAT + if (.@m != 3) { + Exception("Player found cheating/breaking the rules. Character banned. Please contact GM Staff if you believe this is an error.", RB_DEFAULT|RB_SPEECH); + atcommand "@jail 7h "+strcharinfo(0); + close; + } + mesn; + mesq l("I haven't thanked you yet."); + next; + select + l("You're welcome."), + l("For the rescue? You didn't seemed to be in need of aid."), + l("Yes, I'm awesome, praise me more."), + l("For the mouboo? I was only doing my duty."); + mes ""; + mesn; + if (@menu != 4) + mesq l("Not for that! For helping out the injuried mouboo, of course."); + else + mesq l("Hmpf, it's good to see you're at least trying to follow Wyara's example."); + next; + mesn; + mesq l("Anyway, Wyara told me about the assassins. I'm surprised they followed me until the ruins."); + next; + mesn; + mesq l("I thought I would be safe in the shrine, but seems like they are after the Moubootaur. Great danger will befall all forest creatures if they accomplish that."); + next; + mesn; + mesq l("This will affect humans, too, so don't act as if it is not your bussiness either."); + next; + mesn; + mesq l("For now, take this @@. I hope that you will use this power for something good now.", getitemlink(AlchemyBlueprintB)); + inventoryplace AlchemyBlueprintB, 1; + getitem AlchemyBlueprintB, 1; + getexp 24000, 0; // ~70% from level 40 (quest estimate level) + Zeny+=3000; // About 50 carps sold + setq HurnscaldQuest_Sagratha, 7; + close; + L_Reward: select l("Hi! My name is @@.", strcharinfo(0)), @@ -126,13 +173,20 @@ L_Reward: mesq l("The curse was done by nobody less than... the Moubootaur."); next; mesn; - mesq l(""); + mesq l("Well. I'll take care of that, don't worry with that."); + next; + mesn; + mesq l("It's my duty to protect the beings in the forest... Not all of them are monsters as @@s like you think.", get_race()); + compareandsetq HurnscaldQuest_InjuriedMouboo, 3; close; L_HatAttack: mesn; mesc l("@@ seems to be trembling with disgust as she stares at your headgear.", .name$); - mes l("\"Do you think that is funny?\" she snarls."); + next; + mesn; + mesq l("Do you think that is funny?"); + mesc l("@@ snarls.", .name$); next; mesn; mesq l("You have no idea what that poor creature felt!"); @@ -141,7 +195,7 @@ L_HatAttack: mesc l("She snaps her fingers."); mesq l("Let me show you..."); specialeffect 312, SELF, getcharid(3); - heal -300, 0; + percentheal -30, 0; close; L_Unhappy: |