summaryrefslogblamecommitdiff
path: root/npc/009-2/librarian.txt
blob: 8b0c137c1a271cd861bf91a31e804f8540c12ed1 (plain) (tree)
1
2
3
4
5
6
7
8
9








                                                    





                                                                                                                 
         
                                                                                      




                                                                                            

                               
                          

                        
                                                             
                                           
                                     


                                                  







                                                              
                         
                          
                        
 
         





                                                                                                                                                      


           













                                                                                                                
                                                                                                                                                                  
                             
                                                


                                                                                                                                                           


























                                                                                                                                        
                                          

























                                                                                                                                                     

                                                                                                                 

         



                                                                                                                                                                                      
         
                                       

                                             
                                                                         

                                                                   
                                


                                                  
                             


          
                               

                                                       
                                                    









                                                      
// TMW2 scripts.
// Authors:
//    Jesusalva
// Description:
//    Main Storyline
//      NPC_SAMANTHA

009-2,67,60,2	script	Book Keeper	NPC_FEMALE,{
    .@n = getq(General_Narrator);
    if (.@n == 9) mesn;
    if (.@n == 9) mesc l("Anyway, I think you should go to Hurnscald Townhall again, and speak with the mayor.");
    if (.@n == 9) next;
    if (.@n >= 9) goto L_Complete;
    if (.@n == 8) goto L_Report;
    if (.@n == 6 || .@n == 7) goto L_Advance;
    mesn;
    mesq l("Hello. I am the book keeper, responsible for keeping Halinarzo History.");
    // TODO: Import data from BR-002-5 (Royal Library) and make available story about TMW-BR
    close;

L_Advance:
    .@nt = getq2(General_Narrator);
    // Initial Value is 0.
    // .@nt tracks future value
    if (!.@nt || .@n == 6)
        goto L_Prologue;

    // If you wait 7 - instead of 2 - hours, you are abusing.
    // So now, you must wait an extra hour.
    if (.@nt > santime()+(60*60*7)) {
        setq2 General_Narrator, santime()+(60*60);
        .@nt=santime()+(60*60);
    }

    // You got magic, so, why waiting so long. Chop half hour.
    // Should be plenty to instantly finish.
    if (MAGIC_LVL && !@halinskip) {
        setq2 General_Narrator, .@nt-1800;
        @halinskip=true;
    }

    // Wait time is over!
    if (.@nt <= santime())
        goto L_Complete;

    mesn;
    mesq l("Have you found out magic already? It should not be possible, but the girl reading the book says it is. I don't know in what to believe.");
    next;
    mesn;
    mesq l("Anyway, I still need @@. You have plenty of time to do things at your own pace.", FuzzyTime(.@nt));
    // Rule #99999999: Never tell players to grind for 3 hours you lazy dev
    //mesq l("Please help us with the bandits on the Canyon, and meanwhile, I'll seek the records for you. Just @@ more.", FuzzyTime(.@nt));
    close;

L_Prologue:
    mesn strcharinfo(0);
    mesq l("Hi! Apparently, I came from here and moved at the age of 4, but I had amnesia and can't remember!");
    next;
    mesn strcharinfo(0);
    mesq l("It would be very kind of you, if you could seek who I am!");
    next;
    mesn;
    mesq l("What are you talking about? You are who you are right now. There's no other you.");
    mesc l("Unless, of course, if Saulc cloned you. But then we must blame Saulc!");
    next;
    mesn;
    mesq l("Ah... I see. You are a lost soul, without parents, lost on the world with only some basic stuff.");
    next;
    mesn;
    mesq l("Alright, I'll look in the archives. I'll have an answer for you in @@. Meanwhile, why don't you suppress the bandits on the cliff?", l("45 minutes"));
    // Please wait 45 minutes
    setq General_Narrator, 7, santime()+(60*45);
    next;
    mesn;
    mesq l("Also, Halinarzo is famous for the depleted mana mines in the town. You probably won't find a mana stone there, but it might be cool to look.");
    close;

L_Complete:
    mesn;
    mesq l("So, I looked the records. There was nothing really useful.");
    mesq lg("Like, I know you are female.", "Like, I know you are male.");
    next;
    mesn;
    mesq l("But, I found something really interesting! Ah... I hope you like history?");
    next;
    mesn l("HISTORY BOOK");
    mesc l("In these dark times, countless souls moved away from Halinarzo. All hope seemed lost.");
    mesc l("But then, Andrei Sakar appeared. Hope was not lost. We could still defend it.");
    next;
    mesn l("HISTORY BOOK");
    mesc l("Many sacrifices were done, but it was lost.");
    mesc l("Even the mighty Andrei Sakar could only barely escape alive. The Monster King was too strong.");
    mesc l("All hope was lost. We failed to protect it. We lost everyone who challenged the Monster King. Killed without mercy.");
    next;
    mesn l("HISTORY BOOK");
    mesc l("The Monster King was so powerful! It is impossible to recover the artifact now, and everyone will die!");
    mesc l("A few families, also known as the Ancient Families of the Soul Menhir (for whatever reasons that may be), departed.");
    next;
    mesn l("HISTORY BOOK");
    mesc l("They promised to travel to the ##BWorld Edge##b to fetch a Mana Fragment. The wisest of them said it was the only chance.");
    mesc l("They were never again seen. None of them. We burnt all records about everyone here, and blamed the Monster King.");
    mesc l("They must never know we had it. Their sacrifices must be forgotten. For the sake of all.");
    compareandsetq General_Narrator, 7, 8;
    close;

L_Report:
    mesn;
    mesq l("Do you want to read the story again? Or should we get to the most obvious point?");
    next;
    select
        l("I want to know what you found out again"),
        l("I want to know why you shown me that.");
    if (@menu == 1)
        goto L_Complete;
    mesn;
    mesq l("We have three vanishing sort of people on the story.");
    next;
    mesn;
    mes l("1- The coward families, who ran away when outlook was bad.");
    mes l("2- The defenders of the artifact, who lost their lives and left people behind.");
    mes l("3- The ancient families.");
    next;
    mesn;
    mesq l("You probably was only 4 when all that happened. And opposed to official story, the Monster King never enter this building.");
    next;
    mesn;
    mesq l("In other words: If Lua couldn't find your record, your parents were part of this story! But, on which of these three groups were them?");
    next;
    mesn;
    mes l("Well, if you were from the defenders, you would have been adopted by a family which left Halinarzo.");
    mesq l("And if your family, real or adoptive, was coward, there would be no lead at all.");
    next;
    mesn;
    mesq l("So, let's work with the last proposal, that you're from an ancient family. We can backtrace what they did.");
    next;
    mesn;
    mesq l("Their first stop was Hurnscald, so please go to Hurnscald Townhall, and speak with the mayor, he can help you getting there. You can't reach there normally, after all.");
    next;
    inventoryplace ScholarshipBadge, 1;
    mesn;
    mesq l("Good luck, @@!", strcharinfo(0));
    mesc l("@@ hands you an @@.", .name$, getitemlink(ScholarshipBadge));
    next;
    getexp BaseLevel*750, JobLevel*50;// Reference Levels: (40, 15)
    getitem ScholarshipBadge, 1;
    mesc b(l(".:: Main Quest 2-3 ::.")), 3;
    mesc l("* Talk to Librarian in Halinarzo"), 2;
    mesc l("* Return to Hurnscald Townhall"), 9;
    setq General_Narrator, 9;
    close;

OnInit:
    .@npcId = getnpcid(.name$);
    setunitdata(.@npcId, UDT_HEADTOP, FancyHat);
    setunitdata(.@npcId, UDT_HEADMIDDLE, CreasedShirt);
    //setunitdata(.@npcId, UDT_HEADBOTTOM, NPCEyes);
    setunitdata(.@npcId, UDT_WEAPON, JeansShorts);
    setunitdata(.@npcId, UDT_HAIRSTYLE, any(8,11,20));
    setunitdata(.@npcId, UDT_HAIRCOLOR, 5);
    npcsit;

    .sex=G_FEMALE;
    .distance=5;
    end;
}