// 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; }