diff options
author | +seeds <abby.hulka@gmail.com> | 2023-03-05 00:18:54 +0000 |
---|---|---|
committer | Jesusalva Jesusalva <jesusalva@themanaworld.org> | 2023-03-05 00:48:58 +0000 |
commit | ec95a5c75d0ce36ae0cfec18726d346018c04cbc (patch) | |
tree | 5f71528bfdb5a8859040f6dee43ee0466693acfb /npc/006-2-5/pouf.txt | |
parent | f123b04e54885559000b799e73373e5b99affc71 (diff) | |
download | serverdata-ec95a5c75d0ce36ae0cfec18726d346018c04cbc.tar.gz serverdata-ec95a5c75d0ce36ae0cfec18726d346018c04cbc.tar.bz2 serverdata-ec95a5c75d0ce36ae0cfec18726d346018c04cbc.tar.xz serverdata-ec95a5c75d0ce36ae0cfec18726d346018c04cbc.zip |
Merge branch 'PiouIsles_quests' into 'master'cherry-pick-181de88c
Update db/constants.conf
See merge request ml/serverdata!94
(cherry picked from commit 181de88c329902299082dfb61f8a8e644b8e89bf)
88800735 Update db/constants.conf
c32b5649 Upload New File
a2f38cb8 Upload New File
2caf4ba1 Upload New File
f407a2a0 Upload New File
2081d905 Upload New File
21606ee2 Upload New File
7073e232 Upload New File
1522ab30 Replace quest_db.conf
b356ff2c Replace item_db.conf
Diffstat (limited to 'npc/006-2-5/pouf.txt')
-rw-r--r-- | npc/006-2-5/pouf.txt | 151 |
1 files changed, 151 insertions, 0 deletions
diff --git a/npc/006-2-5/pouf.txt b/npc/006-2-5/pouf.txt new file mode 100644 index 000000000..6b42846c4 --- /dev/null +++ b/npc/006-2-5/pouf.txt @@ -0,0 +1,151 @@ +// TMW-2 scripts. +// Original Authors: Hal9000 & Qwerty Dragon +// TMW-2 Authors: +// dangerDuck +// +seeds +// Description: +// Piou royal who asks players to prove themselves against piou knights. + +function script PoufMobCount { + .@q=getq(LilitQuest_Pouf); + .@t=getq2(LilitQuest_Pouf); + if (.@q == 1 && killedrid == PiouKnight) + { + setq2(LilitQuest_Pouf, .@t+1); + } + if (.@t+1 >= 10) + { + setq(LilitQuest_Pouf, 2); + } + + // Report progress + dispbottom l("@@/@@", .@t+1, 10); + + return; +} + +006-2-5,38,23,0 script Princess Pouf NPC_PIOU_QUEEN,{ + function poufChallenge; + function poufQuest; + function poufQuestReport; + function poufQuestReward; + function poufQuestFinished; + if (BaseLevel < 60) + { + mesn; + mesq l("You are too weak to pass my test."); + next; + mesn; + mesc l("Return when you are stronger."); + } + else + { + poufChallenge(); + } + closedialog; + close; + +function poufChallenge { + .@q=getq(LilitQuest_Pouf); + if (.@q == 0) + { + mesn; + mesq l("Welcome to my Isles, traveller."); + next; + mesc l("To show you are worthy of remaining here, you must prove yourself to me! Do you accept my challenge?"), 1; + if (askyesno() == ASK_NO) + return; + poufQuest(); + } + else if (.@q == 1) + { + poufQuestReport(); + } + else if (.@q == 2) + { + poufQuestReward(); + } + else + { + poufQuestFinished(); + } + return; +} + +function poufQuest { + mes ""; + mesn; + mesq l("Defeat 10 of my bravest @@ to prove yourself a warrior, brave of heart and strong of arm!", getmonsterlink(PiouKnight)); + next; + select + l("Point the way! Little yellow birds can't be that hard."), + l("Scary pious with armor? No thank you!"); + mes ""; + switch (@menu) { + case 1: + mesn; + mesq l("Excellent. You will find them in the training room beneath this chamber."); + next; + setq(LilitQuest_Pouf, 1, 0); + break; + case 2: + next; + mesq l("You are clearly not brave enough for this test. Leave my sight at once, chicken."); + break; + } + return; +} + +function poufQuestReport { + mesn; + mesq l("You've only killed @@/10 @@! You must defeat more to win my favor.", getq2(LilitQuest_Pouf),getmonsterlink(PiouKnight)); + next; + return; +} + +function poufQuestReward { + mesn; + mesq l("You've defeated 10 of my knights without flinching! You are truly a brave warrior."); + next; + mesn; + mesc l("The princess flies off her perch and alights upon your right and left shoulder in succession."); + next; + mesn; + mesq l("I dub thee Honorary Piou Knight @@, with all the rewards and duties of the position.", strcharinfo(0)); + next; + mesn; + mesc l("The princess produces a small, shiny bronze feather and pins it to your lapel, then returns to her perch."); + next; + mesn; + mesq l("Make me proud, knight!"); + inventoryplace BronzePin, 1; + getitem BronzePin, 1; + getexp(91479, 24989); + setq(LilitQuest_Pouf, 3); + next; + return; +} + +function poufQuestFinished { + mesn; + .@r = rand2(3); + if (.@r == 0) + { + npctalk3 l("I bid you a good %s, brave knight.", (is_night() ? l("evening") : l("day"))); + } + else if (.@r == 1) + { + npctalk3 l("Fight bravely for Queen +seeds and our isles, honorable knight!"); + } + else + { + npctalk3 l("I wish you success on your ventures, Knight @@.", strcharinfo(0)); + } + return; +} + +OnInit: + .sex = G_OTHER; + .distance = 3; + end; +} |