// TMW2 scripts. // Authors: // Jesusalva // Description: // Sagratha's House Door // // getq(HurnscaldQuest_Sagratha) // Field 1 // 0 - Sagratha is home and annyoed // 1 - Wyara sent player saggy way // 2 - Rumor Confirmed, check again // Field 2 // RESERVED - INSTANCE ID // Field 3 // During stage 1 and 2: Holds if player looked everywhere // RESERVED - INSTANCE ID 014-5,122,137,0 script Sagratha Door NPC_HIDDEN,0,0,{ end; L_Magicless: npctalk3 l("A light magic barrier prevents you from entering."); dispbottom l("If I only knew some magic..."); end; L_Lockpick: mesn; mesc l("The door is locked!"); select l("Knock on the door?"), l("Attempt to lockpick?"), l("Leave it alone?"); mes ""; if (@menu == 1) { /* if (getq(HurnscaldQuest_InjuriedMouboo) == 2)) { mesn strcharinfo(0); mesc l("Nobody answers."); mes ""; } */ mesn l("Sagratha"); mesq l("No, I don't need monster repellent nor anything! Go away!"); close; } else if (@menu == 2) { if (LockPicking(4, 5)) { getexp BaseLevel*4, 5; mesn; mesc l("*click*"); next; mesn l("Sagratha"); mesq l("Who is there? Are they trying to break my lock again?!"); next; select l("Run away?"), l("Stay there?"); mes ""; if (@menu == 2) { mesn l("Sagratha"); mesq l("Oh my Jesusalva - You broke my lock! Why?!"); next; select l("I need to talk with you!"), l("No reason."); mes ""; if (@menu == 1) { mesn l("Sagratha"); mesq l("No, I don't teach magic. No, I'm not interested in @@ affairs.", get_race()); next; mesn l("Sagratha"); mesq l("Yes, I know when next Alliance's Council meeting will be. No, I don't need anything."); next; mesn l("Sagratha"); mesq l("Now begone."); } else { mesn l("Sagratha"); mesq l("What?! Do my house look like the place to you pratice your thief skills?!"); mesq col(l("DIE!"), 1); specialeffect(312, SELF, getcharid(3)); percentheal -40, -100; } } } else { mesn l("Sagratha"); mesq l("Who is there? Are they trying to break my lock again?!"); mesq col(l("DIE!"), 1); specialeffect(312, SELF, getcharid(3)); percentheal -40, -100; } } close; L_Open: mesn; mesc l("The door is locked!"); select l("Knock on the door?"), l("Attempt to lockpick?"), l("Leave it alone?"); mes ""; if (@menu == 3) close; mesc l("*CREAK*"); mesc l("The pressure you did made the door burst open. It is unusually quiet inside..."); next; //enable_items(); //mesc l("WARNING: Save your game now."), 3; //mesc l("WARNING: Change your equipment now."), 3; //next; //disable_items(); /* if (has_instance("014-5-1") == "") { .@inst = instance_create("Sagratha House", getcharid(3), IOT_CHAR); instance_attachmap("014-5-1", .@inst); // 20 minutes (1200s) inside, or 5 minutes (300s) outside instance_set_timeout(1200, 30, .@inst); instance_init(.@inst); } warp "014-5-1", 33, 44; //addmapmask instance_mapname("014-5-1"), 1; changemusic "014-5-1", "eric_matyas_ghouls.ogg"; */ .@q2=getq2(HurnscaldQuest_Sagratha); // Map name limit: 4 chars (sgt1) .@mapn$="sgt1@"+getcharid(0); if (isinstance(.@q2) && .@q2 != 0) { warp .@mapn$, 33, 44; } else { .@inst = instance_create("Sagratha House "+getcharid(0), getcharid(3), IOT_CHAR); instance_attachmap("014-5-1", .@inst, false, .@mapn$); //instance_attachmap("015-8", .@inst, false, .@mapn$); //instance_attachmap("015-8-1", .@inst, false, .@mapn$); // 20 minutes (1200s) inside, or 5 minutes (300s) outside instance_set_timeout(1200, 30, .@inst); instance_init(.@inst); setq2 HurnscaldQuest_Sagratha, .@inst; warp .@mapn$, 33, 44; } changemusic .@mapn$, "eric_matyas_ghouls.ogg"; closeclientdialog; close; L_Welcome: warp "014-5-1", 33, 44; end; OnTouch: .@q=getq(HurnscaldQuest_Sagratha); if (!MAGIC_LVL) goto L_Magicless; if (.@q >= 1 && .@q < 10) goto L_Open; if (getq(HurnscaldQuest_InjuriedMouboo) == 3) goto L_Welcome; // No special condition goto L_Lockpick; end; }