summaryrefslogblamecommitdiff
path: root/npc/023-3-2/logic.txt
blob: ab8974c4e3e981cd3ab5871d51f4098ca7a37c1b (plain) (tree)
1
2
3
4
5
6
7
8
9







                                                      
                                                        




                                 
                    

                               
            
     
                    


                                                                 

                                           

                          


                         


        


                                                                              
























                                                                                                                               


                      
         
                                           
 


                                                 






                               


                
                                                                   


        
                                                       

                                       



                                                                                                             






































































































































                                                                                                                              
                                                       












                                                                                                                                             

                                                                     
 
                                                               











                                                                                                
// TMW2 scripts.
// Author:
//    Jesusalva
// Description:
//    023-3-2 Isbamuth's Study Room Configuration File

023-3-2	mapflag	zone	MMO

023-3-2,39,59,0	script	#Exit02332	NPC_HIDDEN,1,0,{
    end;
OnTouch:
    .@q=getq(General_Narrator);
    .@q2=getq2(General_Narrator);
    // Cheater Detected
    if (.@q < 15) { 
        warp "Save", 0, 0;
        percentheal -100, -100;
        end;
    }
    if (.@q == 15) {
        dispbottom lg("I'm not a coward! I must press forward!");
        end;
    }
    /*
    Access to the dungeon is now prohibted.
	.@mapn$="023-3-1";
    warp .@mapn$, 45, 28;
    */
    .@mapn$="024-16";
    warp .@mapn$, 30, 26;
    end;
}

// The Master Room... We use field 3, too, but bitwise position 2 is reserved.
023-3-2,38,30,0	script	Cauldron#MKHB	NPC_NO_SPRITE,{
    .@q=getq3(FrostiaQuest_Homunculus);
    if (.@q < 4095) {
        mesn;
        mesc l("It's steaming. Who knows what insanity Isbamuth is brewing inside?!");
        next;
        mesc l("Keep exploring the Study Room and certify it is safe first. Also, make sure to learn what this was used for.");
        close;
    }
    mesc l("You have collect enough evidence, it's time to leave and report.");
    setq1 FrostiaQuest_Homunculus, 4;
    setq1 General_Narrator, 16;
    close;
OnInit:
    .distance=2;
    end;
}

023-3-2,40,25,0	script	Notebook#MKHB	NPC_NO_SPRITE,{
    .@q=getq3(FrostiaQuest_Homunculus);
    if (.@q < 4094) {
        mesn;
        mesc l("Uhm, of course a book like this has to be a trap, right?");
        next;
        mesc l("Keep exploring the Study Room and certify it is safe first.");
        close;
    }

// Implict fallthrough
L_BookRead:
    mesn;
    mesc l("Insert here lore information");

    if (!(.@q & .hcID))
        setq3 FrostiaQuest_Homunculus, .@q|.hcID;
    close;

OnBookRead:
    .@q=getq(General_Narrator);
    if (.@q < 16) end;
    .@q=.hcID;
    goto L_BookRead;

OnInit:
    .hcID=1;
    .distance=2;
    bindatcmd "homunculus", "Notebook#MKHB::OnBookRead", 0, 100, 0;
    end;
}

023-3-2,36,31,0	script	Machinery#MKHB	NPC_NO_SPRITE,{
    .@q=getq3(FrostiaQuest_Homunculus);
    mesn;
    mesc l("You have no idea what this piece of equipment is used for.");
    next;
    mesn;
    mesc l("It have the same shape as those used to polish weapons, but there are blood stains everywhere.");
    if (!(.@q & .hcID))
        setq3 FrostiaQuest_Homunculus, .@q|.hcID;
    close;
OnInit:
    .hcID=4;
    .distance=2;
    end;
}

023-3-2,40,20,0	script	Staircase#MKHB	NPC_NO_SPRITE,{
    .@q=getq3(FrostiaQuest_Homunculus);
    mesn;
    mesc l("The stairs have magic cast on them, I cannot climb.");
    next;
    mesn;
    mesc l("I have no idea what's above. Behind the stair, is the painting of a table.");
    next;
    mesn;
    mesc l("Seems to be related to alchemy.");
    if (!(.@q & .hcID))
        setq3 FrostiaQuest_Homunculus, .@q|.hcID;
    close;
OnInit:
    .hcID=8;
    .distance=2;
    end;
}

023-3-2,41,30,0	script	Potions#MKHB	NPC_NO_SPRITE,{
    .@q=getq3(FrostiaQuest_Homunculus);
    mesn;
    mesc l("Several flasks are aligned there. They seemed to be dyes, but a close inspection reveals they're not.");
    next;
    mesn;
    mesc l("They must be reagents used in alchemy.");
    if (!(.@q & .hcID))
        setq3 FrostiaQuest_Homunculus, .@q|.hcID;
    close;
OnInit:
    .hcID=16;
    .distance=2;
    end;
}

023-3-2,36,25,0	script	Bookcase#MKHB1	NPC_NO_SPRITE,{
    .@q=getq3(FrostiaQuest_Homunculus);
    mesn;
    mesc l("Several books about alchemy. Seems to be pretty advanced.");
    if (!(.@q & .hcID))
        setq3 FrostiaQuest_Homunculus, .@q|.hcID;
    close;
OnInit:
    .hcID=32;
    .distance=2;
    end;
}


023-3-2,44,25,0	script	Bookcase#MKHB2	NPC_NO_SPRITE,{
    .@q=getq3(FrostiaQuest_Homunculus);
    mesn;
    mesc l("Several books about hiding magic. Might be why the houses looked abandoned and empty but the chimney was going.");
    if (!(.@q & .hcID))
        setq3 FrostiaQuest_Homunculus, .@q|.hcID;
    close;
OnInit:
    .hcID=64;
    .distance=2;
    end;
}


023-3-2,46,28,0	script	Bookcase#MKHB3	NPC_NO_SPRITE,{
    .@q=getq3(FrostiaQuest_Homunculus);
    mesn;
    mesc l("Several books about artifical lifeforms and the man who played God.");
    if (!(.@q & .hcID))
        setq3 FrostiaQuest_Homunculus, .@q|.hcID;
    close;
OnInit:
    .hcID=128;
    .distance=2;
    end;
}

023-3-2,49,31,0	duplicate(Bookcase#MKHB3)	Bookcase#MKHB4	NPC_NO_SPRITE

023-3-2,32,28,0	script	Bookcase#MKHB5	NPC_NO_SPRITE,{
    .@q=getq3(FrostiaQuest_Homunculus);
    mesn;
    mesc l("Seems to be accounting reports and stuff. You take a few pages.");
    if (!(.@q & .hcID))
        setq3 FrostiaQuest_Homunculus, .@q|.hcID;
    close;
OnInit:
    .hcID=256;
    .distance=2;
    end;
}

023-3-2,30,31,0	duplicate(Bookcase#MKHB1)	Bookcase#MKHB6	NPC_NO_SPRITE

023-3-2,35,35,0	duplicate(Bookcase#MKHB1)	Bookcase#MKHB7	NPC_NO_SPRITE

023-3-2,43,35,0	duplicate(Bookcase#MKHB2)	Bookcase#MKHB8	NPC_NO_SPRITE

023-3-2,33,22,0	duplicate(Potions#MKHB)	Potions#MKHB1	NPC_NO_SPRITE
023-3-2,30,24,0	duplicate(Potions#MKHB)	Potions#MKHB2	NPC_NO_SPRITE
023-3-2,27,26,0	duplicate(Potions#MKHB)	Potions#MKHB3	NPC_NO_SPRITE
023-3-2,46,22,0	duplicate(Potions#MKHB)	Potions#MKHB4	NPC_NO_SPRITE
023-3-2,49,24,0	duplicate(Potions#MKHB)	Potions#MKHB5	NPC_NO_SPRITE
023-3-2,52,26,0	duplicate(Potions#MKHB)	Potions#MKHB6	NPC_NO_SPRITE


023-3-2,37,20,0	script	Wardrobe#MKHB	NPC_NO_SPRITE,{
    .@q=getq3(FrostiaQuest_Homunculus);
    mesn;
    mesc l("Inside it, seems to be several magic reagents, powders, and other stuff.");
    if (!(.@q & .hcID))
        setq3 FrostiaQuest_Homunculus, .@q|.hcID;
    close;
OnInit:
    .hcID=512;
    .distance=2;
    end;
}

023-3-2,43,20,0	duplicate(Wardrobe#MKHB)	Wardrobe#MKHB1	NPC_NO_SPRITE
023-3-2,31,21,0	duplicate(Wardrobe#MKHB)	Wardrobe#MKHB2	NPC_NO_SPRITE
023-3-2,28,23,0	duplicate(Wardrobe#MKHB)	Wardrobe#MKHB3	NPC_NO_SPRITE
023-3-2,25,25,0	duplicate(Wardrobe#MKHB)	Wardrobe#MKHB4	NPC_NO_SPRITE
023-3-2,48,21,0	duplicate(Wardrobe#MKHB)	Wardrobe#MKHB5	NPC_NO_SPRITE
023-3-2,51,23,0	duplicate(Wardrobe#MKHB)	Wardrobe#MKHB6	NPC_NO_SPRITE
023-3-2,54,25,0	duplicate(Wardrobe#MKHB)	Wardrobe#MKHB7	NPC_NO_SPRITE

023-3-2,51,37,0	script	Barrels#MKHB	NPC_NO_SPRITE,{
    .@q=getq3(FrostiaQuest_Homunculus);
    mesn;
    mesc l("These barrels are sealed and heavy. It's impossible to know what's inside. There's a marking on them, you copy them somewhere.");
    if (!(.@q & .hcID))
        setq3 FrostiaQuest_Homunculus, .@q|.hcID;
    close;
OnInit:
    .hcID=1024;
    .distance=2;
    end;
}

023-3-2,45,41,0	duplicate(Barrels#MKHB)	Barrels#MKHB1	NPC_NO_SPRITE
023-3-2,30,40,0	duplicate(Barrels#MKHB)	Barrels#MKHB2	NPC_NO_SPRITE
023-3-2,25,34,0	duplicate(Barrels#MKHB)	Barrels#MKHB3	NPC_NO_SPRITE

023-3-2,38,26,0	script	Alchemy Set#MKHB	NPC_NO_SPRITE,{
    .@q=getq3(FrostiaQuest_Homunculus);
    mesn;
    mesc l("Hey look, an alchemy set. Not your area of expertise, but you take a few samples.");
    if (!(.@q & .hcID))
        setq3 FrostiaQuest_Homunculus, .@q|.hcID;
    close;
OnInit:
    .hcID=2048;
    .distance=2;
    end;
}