diff options
Diffstat (limited to 'npc')
-rw-r--r-- | npc/012-1/andrei.txt | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/npc/012-1/andrei.txt b/npc/012-1/andrei.txt index 0bb3b11e6..de7bd0ad0 100644 --- a/npc/012-1/andrei.txt +++ b/npc/012-1/andrei.txt @@ -10,12 +10,72 @@ 012-1,75,58,0 script Andrei Sakar NPC_ANDREI,{ mesn l("Andrei Sakar, Legendary Hero"); + if ($NLIB_DAY) goto L_Quizz; + +L_Default: if (strcharinfo(0) == $MOST_HEROIC$) mesq l("Hi, @@.", strcharinfo(0)); else mesq l("Hi."); close; +L_Quizz: + .@q=getq3(Q_NivalisLibday); + if (.@q == 0) { + setq3 Q_NivalisLibday, 100; + .@q=100; + } else if (.@q > 100) { + goto L_Default; + } + + mesq l("We are assembling forces to take Nivalis back."); + mesq l("I'll make you five questions about lore and general knowledge. You'll have 30 seconds to read and answer each."); + mesq l("If you finish everything, and answer everything right, you may get a reward."); + mesq l("If you take too long you'll be penalized."); + mesq l("Do you want to start?"); + next; + if (askyesno() == ASK_NO) + close; + + mes ""; + addtimer(30000, "Andrei Sakar::OnTooLong"); + .@q=getq3(Q_NivalisLibday); + setq3 Q_NivalisLibday, .@q-7; + mesn; + mesq l("Did you really thought I would allow you to read the question answers on the source code?"); + select + l("Yes."), + l("You really should."), + l("Of course."), + l("It was worth the shot."); + mes ""; + deltimer("Andrei Sakar::OnTooLong"); + if (@menu == 4) { + .@q=getq3(Q_NivalisLibday); + setq3 Q_NivalisLibday, .@q+7; + mesn; + mesq l("That's right."); + next; + } else { + mesn; + mesq l("Sorry, but that's wrong."); + close; + } + + + mesn; + mesq l("Rewards still weren't defined, sorry."); + .@q=getq3(Q_NivalisLibday); + getexp .@q*BaseLevel, .@q*JobLevel; + setq3 Q_NivalisLibday, 9999; + close; + +OnTooLong: + .@q=getq3(Q_NivalisLibday); + setq3 Q_NivalisLibday, .@q-21; + npctalk3 l("You took too long to answer."); + close; + OnInit: .sex = G_MALE; .distance = 5; |