summaryrefslogblamecommitdiff
path: root/npc/020-7-1/pagefinders.txt
blob: 3fa639c1953be59cb30153a111120ed21b7cea58 (plain) (tree)
1
2
3
4
5
6
7
8
9




                
                                                               
                      
  
                                            
            
                  
            
                                 
 
                                                       












































                                                                                                                                                                                                                 

       
                   

                





           




















 
                                                               





                                                                                      













                                                                                                       
        
                                        

                                          
                                                     
                                                   
             


































                                                                                                                                                                                                                                                                     

       

                  








           




















 
                                                       







                                                                                                                                                                               









                                                                          
        
                                        

                                          
                                                     
                                                   
             

















                                                                                                                                

                                                              




                         

       
                   

                



           
// TMW2 scripts.
// Authors:
//    Jesusalva
//    TMW Org.
// Description:
//    Responsible for recovering the lost pages (SpellBookPage)
//    helperBookpages*
//
// NivalisQuest_BlueSagePagefinder STRUCTURE
//  FIELD 1:
//      MAIN STATE
//  FIELD 2:
//      nº of pages found (0~31)

020-7-1,36,39,4	script	Ensio	NPC_BLUESAGEWORKER_MB,{
    function askQuestion;
    mesc l("ERROR TODO");
    askQuestion();
    close;

function askQuestion {
    do {
        .@q=getq(NivalisQuest_BlueSage);
        .@q2=getq2(NivalisQuest_BlueSage);
        .@q3=getq3(NivalisQuest_BlueSage);
        .@qs=BSQuestion(getq(NivalisQuest_BlueSage));
        .@qt=getq(NivalisQuest_BlueSagePagefinder);
        next;
        mes "";
        select
            rif(.@qt < 255, "What are you doing?"),
            rif(.@qs & BS_QVISITOR, l("Do you know anything about the strange visitor?")),
            rif(.@qs & BS_QHELPER, l("What's your opinion of Peetu and his work?")),
            any(l("I need to leave."), l("See you."), l("Bye."));
        mes "";
        switch (@menu) {
            case 1:
                mesn;
                mesq l("TODO!");
                break;
            case 2:
                mesn;
                mesq l("Visitor with a mask? Ah, I think I know who are you talking about. Black clothes and a golden mask. Rather strange guy.");
                next;
                mesn;
                mesq l("He was looking around in the library a while, and then came to ask about our research. He seemed to be particularly interested in our experiments with the slimes.");
                next;
                mesn;
                mesq l("Heh, I wonder what he would've said if he'd have visited us a little bit later. Mh, now that I think about it, the accident with the slimes happened just the night after he was here.");
                if (!(.@q2 & .bsId))
                    setq2 NivalisQuest_BlueSage, .@q2 | .bsId;
                break;
            case 3:
                mesn;
                mesq l("Oh, I can't really tell. I'm mostly working in the library, while he's very involved in the research.");
                break;
        }
    } while (@menu != 4);
    close;
}

OnInit:
    .bsId=BS_NPC07;
    .sex=G_MALE;
    .distance=5;
    npcsit;
    end;
}
























020-7-1,33,39,4	script	Henriikka	NPC_BLUESAGEWORKER_FA,{
    function askQuestion;
    mesc l("You see a helper looking through some papers that have a strange smell.");
    askQuestion();
    close;

function askQuestion {
    next;
    if (.@qt >= 255) {
        mesn;
        mesq l("I'm so glad we didn't have to go out to hunt the slimes! Thank you!");
    } else if (.@qt) {
        mesn;
        mesq l("If you get any bookpages from the slimes, bring them to Ensio. Thanks for your help!");
    } else {
        mesn;
        mesc l("*sighs*");
        mesq l("Oh, hey. Welcome to the library, or what's left of it.");
    }

    // Mainframe Loop
    do {
        .@q=getq(NivalisQuest_BlueSage);
        .@q2=getq2(NivalisQuest_BlueSage);
        .@q3=getq3(NivalisQuest_BlueSage);
        .@qs=BSQuestion(getq(NivalisQuest_BlueSage));
        .@qt=getq(NivalisQuest_BlueSagePagefinder);
        next;
        mes "";
        select
            rif(.@qt < 255, "What are you doing?"),
            rif(.@qs & BS_QVISITOR, l("Do you know anything about the strange visitor?")),
            rif(.@qs & BS_QHELPER, l("What's your opinion of Peetu and his work?")),
            any(l("I need to leave."), l("See you."), l("Bye."));
        mes "";
        switch (@menu) {
            case 1:
                mesn;
                mesq l("We're trying to repair the books by collecting the ripped out bookpages and sorting them and copying them for new books. It's a lot to do, and after being eaten by a slime they stink!");
                next;
                mesn;
                mesq l("And a lot of pages are missing, since most of the slimes escaped. I suppose we'll have to go out and hunt them once we're done here. Unless someone else hunt them for us.");
                if (!.@qt) {
                    next;
                    mesn;
                    mesq l("Well, these slimes are dangerous, but if you find some pages, be sure to bring them to Ensio. This will help us a lot. Eh, if you're interested in helping, that is. %%1");
                }
                break;
            case 2:
                mesn;
                mesq l("With a mask? I don't really remember... We have so many visitors. Though I suppose someone wearing a mask would be noticeable... But I'm so worn out from the past few days that I'm just glad I can even recall my own name! Sorry.");
                break;
            case 3:
                mesn;
                mesq l("Oh, I never really thought about that. He was the one who failed the sealing, right? But I heard it's a quite difficult spell, so I suppose this could've happened to any mage. I don't know. Why are you asking such difficult questions?");
                next;
                mesn;
                mesq l("I need to go on with sorting the bookpages now.");
                break;
        }
    } while (@menu != 4);
    close;
}

OnInit:
    .sex=G_FEMALE;
    .distance=5;
    npcsit;
    end;
}



























020-7-1,45,39,0	script	Teuvo	NPC_BLUESAGEWORKER_MA,{
    function askQuestion;
    mesn;
    mesc l("@@ seems to be upset.", .name$);
    mesq l("I always thought it was a bad idea to play around with the slimes. And as if holding them in here isn't bad enough, no, they also had to mess around with magic.");
    askQuestion();
    close;

function askQuestion {
    next;
    if (.@qt >= 255) {
        mesn;
        mesq l("Thanks for helping out here. Do you need anything else?");
    } else if (.@qt) {
        mesn;
        mesq l("Did you find some bookpages? Ensio will take them.");
    }

    // Mainframe Loop
    do {
        .@q=getq(NivalisQuest_BlueSage);
        .@q2=getq2(NivalisQuest_BlueSage);
        .@q3=getq3(NivalisQuest_BlueSage);
        .@qs=BSQuestion(getq(NivalisQuest_BlueSage));
        .@qt=getq(NivalisQuest_BlueSagePagefinder);
        next;
        mes "";
        select
            rif(.@qt == 255, ""),
            rif(.@qs & BS_QVISITOR, l("Do you know anything about the strange visitor?")),
            rif(.@qs & BS_QHELPER, l("What's your opinion of Peetu and his work?")),
            any(l("I need to leave."), l("See you."), l("Bye."));
        mes "";
        switch (@menu) {
            case 2:
                mesn;
                mesq l("With a mask? Hm. I don't remember.");
                break;
            case 3:
                mesn;
                mesq l("Peetu? He's one of those magic wielders who think they can do anything. Heh, you see the result here.");
                next;
                mesn;
                mesq l("But to be fair, from what I've seen Peetu was always very attentive and dutiful.");
                if (!(.@q3 & .bsId))
                    setq3 NivalisQuest_BlueSage, .@q3 | .bsId;
                break;
        }
    } while (@menu != 4);
    close;
}

OnInit:
    .bsId=BS_NPC07;
    .sex=G_MALE;
    .distance=5;
    npcsit;
    end;
}