//================= Hercules Script ======================================= //= _ _ _ //= | | | | | | //= | |_| | ___ _ __ ___ _ _| | ___ ___ //= | _ |/ _ \ '__/ __| | | | |/ _ \/ __| //= | | | | __/ | | (__| |_| | | __/\__ \ //= \_| |_/\___|_| \___|\__,_|_|\___||___/ //================= License =============================================== //= This file is part of Hercules. //= http://herc.ws - http://github.com/HerculesWS/Hercules //= //= Copyright (C) 2012-2015 Hercules Dev Team //= Copyright (C) Euphy //= Copyright (C) Muad_Dib //= //= Hercules is free software: you can redistribute it and/or modify //= it under the terms of the GNU General Public License as published by //= the Free Software Foundation, either version 3 of the License, or //= (at your option) any later version. //= //= This program is distributed in the hope that it will be useful, //= but WITHOUT ANY WARRANTY; without even the implied warranty of //= MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the //= GNU General Public License for more details. //= //= You should have received a copy of the GNU General Public License //= along with this program. If not, see . //========================================================================= //= Thanatos Tower Quest //================= Description =========================================== //= Episode 13.1 Thanatos Tower quest. //================= Current Version ======================================= //= 1.1 //========================================================================= hu_fild01,140,163,5 script Tower Keeper 4_M_EIN_SOLDIER,3,3,{ mes "[Gatei]"; mes "Greetings, adventurer."; mes "I am Gatei Knumm, keeper"; mes "of this Thanatos Tower."; mes "How may I help you?"; next; switch(select("Thanatos Tower?", "Entrance Fee?", "Enter the tower", "Cancel")) { case 1: mes "[Gatei]"; mes "Yes, the tower in front"; mes "of you was an ancient ruins"; mes "that got its name from a word"; mes "written on a stone plate found"; mes "inside. Today, this place is"; mes "a popular tourist attraction."; next; mes "[Gatei]"; mes "This tower grew in popularity"; mes "for adventurers when the"; mes "Rekenber Corporation began"; mes "tower reconstruction efforts."; mes "The 1st and 2nd floors are now"; mes "repaired and free of monsters."; next; mes "[Gatei]"; mes "However, reconstruction of"; mes "the 3rd and higher floors is"; mes "incomplete. Those levels are"; mes "still infested with monsters, so we're contracting temp workers"; mes "to exterminate all of them."; next; mes "[Gatei]"; mes "If you're interested in"; mes "temporary contract work,"; mes "or would like to know about"; mes "this place in detail, please"; mes "ask one of the guides inside."; mes "Thank you and enjoy your visit~"; close; case 2: mes "[Gatei]"; mes "Everyone is welcome to"; mes "enjoy Thanatos Tower."; mes "Only the 1st and 2nd floors"; mes "are open to the public at"; mes "this time. The entrance fee"; mes "is 5,000 zeny per person."; next; mes "[Gatei]"; mes "5,000 zeny may seem a little"; mes "steep for a tourist attraction,"; mes "but trust me, this tower provides a very unique experience. Also,"; mes "our loyal customers and contract workers get a special discount~"; close; case 3: mes "[Gatei]"; mes "Would you like to"; mes "enter Thanatos Tower?"; mes "The entry fee is ^FF00005,000 zeny^000000."; next; switch(select("Enter", "Maybe next time.")) { case 1: if (thana_tower > 0) { mes "[Gatei]"; mes "Oh, "+strcharinfo(PC_NAME)+"!"; mes "Welcome back! Since you've"; mes "got a temporary Rekenber"; mes "work contract, your entrance"; mes "fee is only 3,000 zeny."; next; switch(select("Enter", "No, thanks.")) { case 1: if (Zeny > 2999) { mes "[Gatei]"; mes "Thank you, and"; mes "please keep up the"; mes "good work. Ah, and don't"; mes "forget: safety first when"; mes "you fight those monsters!"; Zeny -= 3000; close2; warp "tha_scene01",131,220; end; } mes "[Gatei]"; mes "Oh, I'm sorry..."; mes "But you don't seem to"; mes "have enough zeny. Oh well,"; mes "just come back again later~"; close; case 2: mes "[Gatei]"; mes "You must be busy, then."; mes "Well, not to worry, we'll"; mes "always be here. Farewell~"; close; } } if (Zeny > 4999) { mes "[Gatei]"; mes "Ah, I've received your"; mes "entrance fee. Thank you"; mes "very much. Now, I hope"; mes "you enjoy your visit"; mes "to Thanatos Tower~"; close2; Zeny -= 5000; warp "tha_scene01",131,220; end; } mes "[Gatei]"; mes "Well..."; mes "Hm. I'm sorry, but you"; mes "don't seem to have enough"; mes "zeny for the entrance fee."; mes "Please come back later..."; close; case 2: mes "[Gatei]"; mes "Very well. Please come"; mes "and visit us again here"; mes "in Thanatos Tower."; close; } case 4: mes "[Gatei]"; mes "Hmm? Very well."; mes "But if you wish to visit"; mes "this Thanatos Tower, please"; mes "do not hesitate to ask me."; mes "Thank you and have a nice day."; close; } OnTouch: mes "[Tower Keeper]"; mes "Excuse me, but you cannot"; mes "enter. This place is under"; mes "the Rekenber Corporation's"; mes "administration, and this area"; mes "is restricted to all those"; mes "without authorization."; close; } tha_t01,149,78,4 script Guide 4_F_01,{ if (thana_tower == 0) { mes "[Ditze]"; mes "Welcome to Thanatos Tower."; mes "The tower's reconstruction is"; mes "a Rekenber Corporation project,"; mes "and the 1st and 2nd floors are"; mes "now open to the public. So"; mes "how may I help you today?"; next; switch(select("Tower Information", "Temporary Work Contract", "Cancel")) { case 1: mes "[Ditze]"; mes "When this tower was built,"; mes "who built it, and its purpose"; mes "are all mysteries. There are"; mes "many rumors about it being a"; mes "Mage lab, a hero's momunent,"; mes "or a demon fortress..."; next; mes "[Ditze]"; mes "The Rekenber Corporation has"; mes "been researching the origin of"; mes "this tower, but has not yet been able to confirm anything. Although"; mes "we've lost many researchers to the tower monsters, we won't give up!"; next; mes "[Ditze]"; mes "Rekenber is convinced that this"; mes "tower holds many secrets, and"; mes "successfully reconstructed the"; mes "first 2 floors of this tower in"; mes "the pursuit of this knowledge."; next; mes "[Ditze]"; mes "Currently, we are focused on"; mes "reconstructing the tower's 3rd"; mes "and 4th floors. Luckily, many"; mes "adventurers are exterminating"; mes "the monsters on those floors, working under temporary contracts."; next; mes "[Ditze]"; mes "At this rate, we expect"; mes "to complete reconstruction"; mes "of the 3rd and 4th floors in"; mes "the near future, bringing us"; mes "closer to our goal of opening all 12 floors of Thanatos Tower."; next; switch(select("Tower Monsters?", "Temp Contract Work?", "......")) { case 1: mes "[Ditze]"; mes "Yes, when we began"; mes "reconstruction of the"; mes "Thanatos Tower, these"; mes "monsters that look like angels"; mes "just appeared out of nowhere"; mes "to attack all the workers."; next; mes "[Ditze]"; mes "At first, witnesses thought"; mes "that these monsters might"; mes "be, you know, actual angels."; mes "But if they were, why were they"; mes "attacking for no reason?"; next; mes "[Ditze]"; mes "Anyway, we asked the Juno "; mes "Sage Academy to investigate"; mes "them, and they confirmed that"; mes "these angelic creatures are true monsters--their resemblance to"; mes "angels is merely coincidence."; close; case 2: mes "[Ditze]"; mes "You may have already heard"; mes "from the Tower Keeper, but"; mes "we're contracting adventurers to exterminate the tower monsters"; mes "in the 3rd and higher levels on"; mes "a temporary employee basis."; next; mes "[Ditze]"; mes "I'm in charge of hiring"; mes "temp contract workers, so"; mes "talk to me if you're interested. Only temp workers are allowed"; mes "to access the higher levels"; mes "here in Thanatos Tower."; next; break; case 3: mes "[Ditze]"; mes "To develop the floors above"; mes "the 2nd floor, we're going to"; mes "need as many temp contract"; mes "workers as we can hire. Why"; mes "don't you consider working"; mes "for us under a temp contract?"; close; } break; case 2: mes "[Ditze]"; mes "You may have already heard"; mes "from the Tower Keeper, but"; mes "we're contracting adventurers to exterminate the tower monsters"; mes "in the 3rd and higher levels on"; mes "a temporary employee basis."; next; mes "[Ditze]"; mes "I'm in charge of hiring"; mes "temp contract workers, so"; mes "talk to me if you're interested. Only temp workers are allowed"; mes "to access the higher levels"; mes "here in Thanatos Tower."; next; break; case 3: mes "[Ditze]"; mes "Well, if you have any"; mes "questions, feel free to"; mes "ask me later. My name is"; mes "Ditze Lappa. Have a good day!"; close; } } else { mes "[Ditze]"; mes "For more detailed information"; mes "about monster exterminations,"; mes "please ask the 2nd Floor Guide"; mes "and the Guide next to me. Well,"; mes "we hope you enjoy your experience working with Rekenber Corporation~"; close; } switch(select("Maybe next time", "Sure, I'd like to work for you.")) { case 1: mes "[Ditze]"; mes "Well, alright."; mes "But come and talk to"; mes "me as soon as you decide"; mes "that you want to help with"; mes "the tower reconstruction by"; mes "working for Rekenber."; close; case 2: mes "[Ditze]"; mes "That's great!"; mes "Would you please fill"; mes "out this employment"; mes "agreement first? Let's"; mes "see. Your name is..."; mes strcharinfo(PC_NAME) + ", right?"; next; select("Yes"); mes "[Ditze]"; mes "Alright, please read"; mes "this agreement carefully."; mes "If you agree with all of"; mes "the conditions, go ahead"; mes "and just sign the bottom."; next; mes "^3355FFDitze hands you the"; mes "Employment Agreement"; mes "document for you to read.^000000"; next; mes "- Employment Agreement -"; mes " "; mes "1. This employment agreement"; mes "is effective between Rekenber"; mes "Corporation (''Employer'') and "+strcharinfo(PC_NAME)+"(''Employee'')."; mes "1-1. This employment agreement"; mes "is classified as a Mercernary"; mes "contract between both parties."; mes "2. The terms of this contract"; mes "immediately take effect once"; mes "it is signed by both parties"; mes "(Employer and Employee)."; mes "3. When the Employee performs"; mes "a mission, the mission results"; mes "must be verified with acceptible physical proof that must be"; mes "presented to the Employer."; mes "3-1. Please refer to Section"; mes "7A for examples of acceptible"; mes "proof of monster extermination."; mes "3-2. Acceptible proof is"; mes "determined and defined by a"; mes "representative of the Employer."; mes "4. Employer will allot rewards"; mes "to Employees after receiving"; mes "extermination proof."; mes "4-1. Possible rewards for"; mes "monster exterminations may"; mes "include the following."; mes "................................................."; mes "................................................."; mes "................................................."; mes "................................................."; mes "................................................."; mes "13. This contract's terms are"; mes "only applicable witin Thanatos"; mes "Tower."; mes "14. Employees will receive"; mes "a discount on the Entry Fee"; mes "to the Thanatos Tower."; mes " "; mes " "; mes " "; mes "Employer Signature____________"; mes "Employee Signature____________"; next; switch(select("Sign", "Don't Sign")) { case 1: mes "^3355FFYou sign two copies of the"; mes "Employment Agreement.^000000"; next; mes "[Ditze]"; mes "Thank you. Now, you are"; mes "an official employee of the"; mes "Rekenber Corporation! Well,"; mes "within the limits of this tower"; mes "anyway. This contract doesn't"; mes "apply outside of this place."; next; mes "[Ditze]"; mes "From now on, you can talk"; mes "to the 2nd Floor Guide to"; mes "enter the 3rd Floor. If you"; mes "have any mission reward"; mes "questions, please ask ^3355FFLiei^000000."; next; mes "[Ditze]"; mes "If you want to check"; mes "more information about"; mes "your work, please talk"; mes "to the 2nd Floor Guide."; mes "Thank you, and welcome"; mes "to the Rekenber Corporation~"; thana_tower = 1; close; case 2: mes "[Ditze]"; mes "Oh? Was there an article"; mes "within the contract that you"; mes "disagreed with? Hm. Well,"; mes "that's fine. But if you change"; mes "your mind, please come back"; mes "and ask me anytime. Thank you~"; close; } } } tha_t01,140,78,4 script Guide#reward 4_F_ZONDAGIRL,{ mes "[Liei]"; if (thana_tower == 0) { mes "Good day, I'm"; mes "Liei Kuniziet of the"; mes "Employee Mission"; mes "Reward Department"; mes "here in Thanatos Tower."; next; switch(select("Employee's mission reward?", "Keep up the good work.")) { case 1: mes "[Liei]"; mes "Currently, Rekenber Corporation"; mes "is contracting temp employees"; mes "to develop the higher levels"; mes "of Thanatos Tower. If you'd"; mes "like to apply, please ask"; mes "Ditze right next to me."; close; case 2: mes "[Liei]"; mes "Thank you. Ah, and I hope"; mes "that you enjoy your visit"; mes "here to Thanatos Tower."; close; } } mes "Ah, hello~"; mes "How may I help you?"; next; if(select("Reward", "Nothing") == 2) { mes "[Liei]"; mes "Alright, then."; mes "Please do your best"; mes "to exterminate the"; mes "monsters that infest"; mes "the higher floors of"; mes "the Thanatos Tower~"; close; } mes "[Liei]"; mes "You're "+strcharinfo(PC_NAME)+", yes?"; mes "Let me check our temp"; mes "employee records for--ah."; mes "Here it is. Alright, so would"; mes "you please tell me what kind"; mes "of mission proof you brought?"; next; setarray .@items[1],7435,7440,7441,7442; .@i = select("Golden Ornament", "Red Feather", "Blue Feather", "Cursed Seal"); mes "[Liei]"; if (!countitem(.@items[.@i])) { mes "I'm sorry, but you are not"; mes "carrying any "+getitemname(.@items[.@i])+"s."; mes "Please check your inventory"; mes "one more time, and then come"; mes "to me to redeem your items"; mes "for a reward later, alright?"; close; } mes "The reward for each"; mes getitemname(.@items[.@i])+" is..."; mes " "; mes "1,000 zeny"; //mes "2,000 EXP"; next; .@zeny_tt = (countitem(.@items[.@i]) * 1000); //.@exp_tt = (countitem(.@items[.@i]) * 2000); mes "[Liei]"; mes countitem(.@items[.@i])+" "+getitemname(.@items[.@i])+"s, then"; mes "you will receive a total of..."; mes " "; mes ""+.@zeny_tt+" zeny"; //mes ""+.@exp_tt+" EXP"; next; mes "[Liei]"; mes "Would you like to exchange"; mes "all of your "+getitemname(.@items[.@i])+"s"; mes "for your reward right now?"; next; switch(select("Yes", "No")) { case 1: mes "[Liei]"; mes "Great! Here is your"; mes .@zeny_tt+" zeny. Thank you,"; //mes .@exp_tt+" EXP. Thank you,"; mes "and please keep up"; mes "the good work~"; delitem .@items[.@i], countitem(.@items[.@i]); Zeny += .@zeny_tt; //getexp .@exp_tt,0; close; case 2: mes "[Liei]"; mes "Sure, no problem."; mes "Just come back and"; mes "talk to me whenever"; mes "you want to receive"; mes "your reward, alright?"; close; } } tha_t02,231,161,5 script Entrance Guide 4_M_ZONDAMAN,{ mes "[Burled]"; if (thana_tower == 0) { mes "You are in front of the entrance to the 3rd Floor. Only contracted"; mes "temp employees are authorized"; mes "to enter that area. For Rekenber temp contract information, please"; mes "speak to the 2nd Floor Guide."; close; } mes "This is the path to the 3rd floor."; mes "Only the contracted staff are allowed to enter."; mes "How can I help you?"; next; switch(select("Let me go to 3rd floor.", "Tower Information.", "Start a conversation.")) { case 1: mes "[Burled]"; mes "Oh, alright. Let me"; mes "check and see if you're"; mes "on our temp list. Hmmm..."; mes "Ah, you're "+strcharinfo(PC_NAME)+", right?"; next; mes "[Burled]"; if (getareausers("tha_t02",226,156,236,166) < 5) { mes "First, we need to wait until"; mes "at least 5 temps are gathered"; mes "to form a work group. Right"; mes "now, there are a total of"; mes getareausers("tha_t02",226,156,236,166)+ " temp workers waiting to"; mes "enter the 3rd Floor."; next; mes "[Burled]"; mes "If you can, try to get"; mes "your friends to help you"; mes "by coming near me. Please"; mes "understand that we have this"; mes "temp worker group requirement"; mes "for various safety reasons."; close; } mes "Great, you're just"; mes "in time. We just met"; mes "the minimum 5 temp group"; mes "requirement, so we'll open"; mes "the gate to the 3rd Floor soon."; next; mes "[Burled]"; mes "The gate to the 3rd Floor"; mes "will close shortly, so enter it"; mes "as soon as you can. We have"; mes "to close it quickly because we"; mes "can't have the tower monsters"; mes "entering the lower floors..."; if (thana_tower > 3) { next; mes "^4d4dffBurled is smiling lightly so that only I notice."; mes "I nod, then watch him open the gate.^000000"; } close2; donpcevent "3rdf_warp#tt::OnEnable"; end; case 2: mes "[Burled]"; mes "This gate is the only passage"; mes "that connects to the 3rd Floor."; mes "After the 4th Floor, passages"; mes "between floors only travel one"; mes "way, meaning you can't exit the"; mes "same way you that you entered."; next; mes "[Burled]"; mes "You see, there's a strange"; mes "power that affects the 5th"; mes "Floor, and all floors above,"; mes "which doesn't allow people to"; mes "backtrack through the passage in which they entered the floor."; next; mes "[Burled]"; mes "So if you ascend past the"; mes "4th Floor, please be careful"; mes "and make sure that you find"; mes "a way to get back."; next; mes "[Burled]"; mes "The top is the 12th floor,"; mes "and the monsters grow more powerful"; mes "as you ascend the tower."; mes "The geographical features also change considerably."; next; mes "[Burled]"; mes "Because the higher levels are"; mes "too dangerous, we only open the"; mes "3rd Floor Gate when 5 or more"; mes "are gathered here. Therefore,"; mes "you may need to wait if less"; mes "than 5 temps have gathered."; close; case 3: if (thana_tower < 3) { mes "[Burled]"; mes "...?"; mes "Do you have any questions?"; next; if(select("About the development.", "The relationship of Cool Event Corporation and Rekenber Corporation.", "Nope.") == 3) { mes "[Burled]"; mes "Take care."; close; } mes "[Burled]"; mes "...um, you're quite curious."; mes "If you want to know more, would you do me a favor?"; mes "Since you asked for our confidential info..."; next; if(select("Really? Don't make me afraid of it.", "Just tell me about it.", "I'll listen about it later.") == 3) { mes "[Burled]"; mes "As you wish..."; mes "Take care!"; close; } mes "[Burled]"; mes "Haha. That's not a big deal."; mes "We, Cool Event, are the corporation that works in many areas of business."; mes "From simple events, guides for dungeons, and trading items."; next; mes "[Burled]"; mes "Though our business started as a small one, we've been getting bigger with assistance from the Rekenber Corporation."; mes "They suggested to develop this tower together."; next; mes "[Burled]"; mes "The Rekenber Corporation is only digging out the remains for studies."; mes "The rest would be made into sightseeing place, which Cool Event Corporation can manage well."; next; mes "[Burled]"; mes "It's the biggest business ever."; mes "Also quite profitable as tourist attractions."; mes "But..."; next; mes "[Burled]"; mes "Considerably strong monsters spawn inside the tower."; mes "The monsters weren't spawned there before."; mes "The day after that happened..."; next; mes "[Burled]"; mes "...anyway, there were some accidently spawned monsters and some troubles..."; mes "We and the Rekenber Corporation are in shock."; mes "We were influenced economically, but the more serious thing is..."; next; mes "[Burled]"; mes "Many staff involved in development are"; mes "sacrificing themselves by coming to 3rd floor."; next; mes "[Burled]"; mes "While we've pumped our all into the business, that accident happened..."; mes "We eventually merged with the Rekenber Corporation."; next; mes "[Burled]"; mes "The development is on hold temporarily."; mes "Recruiting adventurers to defeat monsters..."; mes "Isn't this funny?"; next; mes "[Burled]"; mes "No matter what happened there, they wouldn't be hurt."; mes "Even if they don't get at the root of the accident...."; next; switch(select("Oh...", "What accident are you referring to?")) { case 1: mes "[Burled]"; mes "Yes, it's not that big of a deal. Haha...."; mes "If we are working here like this...."; mes "we would know about the death of animals."; next; mes "[Burled]"; mes "Cool Event Corporation is considered the follower..."; mes "They don't clear up how many people"; mes "died or any reasons for it."; next; mes "[Burled]"; mes "Now you're curious about this case."; mes "What do they sacrifice for?"; next; mes "[Burled]"; mes "I talked a lot."; mes "Sorry, I am not supposed to talk about this case like this..."; mes "I've been quite concerned about it, that's all."; thana_tower = 3; close; case 2: mes "[Burled]"; mes "If you promise me that"; mes "you will do me a favor..."; next; switch(select("Ok! I will.", "No, I won't.")) { case 1: callsub L_Request; next; mes "["+strcharinfo(PC_NAME)+"]"; mes "(What's the accident...?"; mes "He might let me know later...)"; close; case 2: mes "[Burled]"; mes "...there is no way..."; mes "They request you to explore the internal part."; mes "You're employed for this exploration."; close; } } } else if (thana_tower == 3) { callsub L_Request; close; } else if (thana_tower == 4) { mes "[Burled]"; mes "Rekenber Corporation must have another intention,"; mes "since they don't seem interested in the tower much."; mes "I want to know their intention."; next; mes "[Burled]"; mes "This tower is sealed and separated from the outside."; mes "We need to break those seals, explore inside and develop it."; next; mes "[Burled]"; mes "We are developing the 3rd and 4th floors now..."; mes "There are still seals there."; mes "You can find out some clues when you search around them."; close; } else if ((thana_tower > 4) && (thana_tower < 9)) { mes "[Burled]"; mes "The magical key and messages?"; mes "...we absolutely haven't learned all the tower's secrets..."; next; mes "[Burled]"; mes "Who made the seals?"; mes "...can you investigate more?"; mes "There must be definitive evidence..."; close; } else if (thana_tower == 9) { mes "[Burled]"; mes "Any new progress?"; next; select("I found Varmunt's Journal..."); mes "- You show him Varmunt's Journal."; mes "Burled reads it. -"; next; mes "[Burled]"; mes "...I recognize this."; mes "This is the hologragh of the wise man Varmunt."; mes "Regenschirm from Rekenber's huge research institute has..."; next; mes "[Burled]"; mes "...isn't this the one they are looking for now?!"; mes "Isn't their mission to find out Varmunt's research materials...?"; next; mes "[Burled]"; mes "For assisting uncompleted research..."; mes "Varmunt's research materials are needed..."; mes "...so their mission isn't just an investigation of the tower."; next; mes "[Burled]"; mes "Something to get as an advantage..."; mes "Even they don't know where it is..."; mes "...anyways, this is the one of their main objects."; next; mes "[Burled]"; mes "It's absolutely great. The wise man Varmunt's belongings. How unbelievable!"; mes "Now, what do we do with this?"; next; mes "[Burled]"; mes "Originally everything we found out in this tower was under control of the Rekenber Corporation."; mes "This is supposed to theirs, but..."; next; mes "[Burled]"; mes "How would you like to keep this, "+strcharinfo(PC_NAME)+"?"; mes "Definitely this should be a secret."; mes "...um, this is a little revenge for them."; next; mes "[Burled]"; mes "I can guess that there are several secrets in this tower through this note."; mes "This secret should be disclosed by you, "+strcharinfo(PC_NAME)+", before Rekenber does."; next; mes "[Burled]"; mes "No matter how much power they obtain... they won't get to know about this tower..."; mes "Haha..."; next; mes "[Burled]"; mes "...haha..."; mes "I feel a bit relieved."; mes "Thanks."; mes "This isn't much, but here's a return present."; next; mes "[Burled]"; mes "I hope that these will be useful for you, "+strcharinfo(PC_NAME)+"."; next; mes "- Burled gives you the note and an Old Violet Box. -"; mes " "; mes "^4d4dffYou acquire one Old Violet Box,"; mes "as well as a little EXP.^000000"; thana_tower = 10; completequest 7053; getexp 120000,10000; getitem Old_Violet_Box,1; close; } else { mes "[Burled]"; mes "Are you keeping the secrets well?"; mes "Is there a Phantom on the top of this tower?"; if (rand(3) == 1) { mes "You look tired. This isn't a big deal, but it's for you."; npcskill "AL_HEAL",10,50,70; } close; } } L_Request: mes "[Burled]"; mes "Ah, it's not that difficult."; mes "After you explore the tower, let me know in detail anything you learn."; next; mes "[Burled]"; mes "...I can't believe the Rekenber Corporation. Many colleagues and friends died for them."; mes "But the Rekenber Corporation doesn't expose the reason they are dead."; next; mes "[Burled]"; mes "The conditions were bad for us from beginning..."; mes "All of the developed places except research materials would be turned into tourist attractions..."; mes "Honestly, all the personnel are from Cool Event Corp."; next; mes "[Burled]"; mes "They know about it as well."; mes "This business needs much sacrifice as well as personnel who are up for it."; next; mes "[Burled]"; mes "Now I don't feel victimized anymore, but I just want to know what drives these accidents..."; mes "^4d4dffWhat makes us victimized...?^000000"; mes "That's what I want to know."; next; mes "[Burled]"; mes "What's this tower?"; mes "Why did they develop this dangerous place?"; mes "And for what? Should my colleagues be dead for it?"; next; mes "[Burled]"; mes "I seriously want to know about it."; mes "Why they must sacrifice themselves..."; mes "Let me know..."; next; mes "He seriously wants to know about it."; mes "His hands are trembling now..."; mes "I nodd without answering."; thana_tower = 4; setquest 7048; return; } tha_t02,227,163,0 script 3rdf_warp#tt WARPNPC,1,1,{ end; OnInit: disablenpc "3rdf_warp#tt"; end; OnTouch: if (thana_tower == 0) warp "tha_t02",227,158; else warp "tha_t03",219,159; end; OnEnable: enablenpc "3rdf_warp#tt"; initnpctimer; end; OnTimer30000: stopnpctimer; disablenpc "3rdf_warp#tt"; end; } tha_t03,67,70,0 script Rune Device#tt1 HIDDEN_NPC,4,4,{ if ((countitem(Key_Red) == 0) && (countitem(Magic_Gem_Red) == 0)) { mes "^3355FFA mysterious field of"; mes "energy seems to surround"; mes "the mechanical device and"; mes "its power prevents you from"; mes "approaching the machine.^000000"; next; switch(select("Investigate it.", "I don't care about it.")) { case 1: mes "["+strcharinfo(PC_NAME)+"]"; mes "This seems mysterious..."; mes "Let me investigate."; next; mes "^3355FFAs you follow the magical power, there's something wrapped inside the rune device.^000000"; next; if (Class == Job_Taekwon) { mes "^3355FFYou kick the energy"; mes "field with all of your strength. After absorbing the impact, the"; mes "field fizzles out with a soft,"; mes "gentle ''pzzzzzh'' sound.^000000"; next; } else if (getequipweaponlv(4) == 4) { mes "^3355FFWith your "+getequipname(4)+" in"; mes "hand, you smash the energy"; mes "field with all of your strength. After absorbing the impact, the"; mes "field fizzles out with a soft,"; mes "gentle ''pzzzzzh'' sound.^000000"; next; } else { mes "^3355FFYou smash the energy"; mes "field with your weapon"; mes "using all of your strength,"; mes "but you weren't able to"; mes "break down the barrier."; mes "You probably need a more"; mes "powerful weapon...^000000"; close; } break; case 2: mes "^3355FFYou decide to leave"; mes "the machine alone.^000000"; close; } } else { mes "You've acquired everything you need from this rune device."; close; } specialeffect EF_BRANDISH2; mes "After breaking the device, the exterior shatters."; mes "The energy field begins to disappear,"; mes "and you see that a red object inside was the origin of the magical power."; next; mes "- You acquired the powerful Red Key. -"; getitem Key_Red,1; if (thana_tower != 4) close; mes "^4d4dffOnce you hold the key, a shocking feeling passes through your head."; mes "You see an illusion of light...^000000"; next; switch(select("Ignore it.", "Concentrate on it.")) { case 1: mes "^3355FFYou decide to leave"; mes "the machine alone.^000000"; close; case 2: mes "You focus on the light."; mes "Some letters begin to appear..."; next; mes "^b22222I've used the Gate Seal"; mes "technology to seal the gate"; mes "and the charm stones. Although"; mes "the seals are in place, I can't"; mes "stop worrying that they might"; mes "break in the future."; next; mes "^b22222I can't relax when a, shall"; mes "I say, particular group covets"; mes "the charm stones and can easily"; mes "break the seals. Since they are"; mes "broken now, are many people hurt?"; next; mes "^b22222This tower contains strong"; mes "magical powers and much evil. It is"; mes "dangerous by itself, but I sealed it"; mes "because of one man's strong desires..."; next; mes "^b22222I wouldn't recommend to go futher."; mes "You would need to challenge that poor"; mes "being, who I've named this tower after."; mes "His soul still rests here..."; next; mes "^b22222Nobody believed me, the crazy scientist."; mes "Though I wanted to keep this a secret, somebody"; mes "must get to know about it. That's way I created"; mes "this rune device, and hid this message."; next; mes "^b22222Please show that my experience"; mes "wasn't just an illusion.^000000"; next; mes "That's all."; mes "The letters fly away in the form of a red key..."; thana_tower = 5; changequest 7048,7049; specialeffect(EF_COMBOATTACK1, AREA, playerattached()); close; } OnTouch: if ((countitem(Key_Red) == 0) && (countitem(Magic_Gem_Red) == 0)) specialeffect EF_LEVEL99_4; end; } tha_t04,195,195,0 script Rune Device#tt2 HIDDEN_NPC,3,3,{ if ((countitem(Key_Yellow) == 0) && (countitem(Magic_Gem_Yellow) == 0)) { mes "^3355FFYou find a screen"; mes "with three tiny panels and"; mes "a numeric keypad underneath."; mes "As you press one of the"; mes "number keys, you hear a"; mes "beep as the screen activates.^000000"; next; mes "[Screen]"; mes "Please enter a 3 digit"; mes "number. Do not use a"; mes "single number more than"; mes "once or use the number 0."; next; while (1) { .@yagu100 = rand(1,9); .@yagu10 = rand(1,9); .@yagu1 = rand(1,9); if (((.@yagu100 != .@yagu10) && (.@yagu100 != .@yagu1)) && (.@yagu10 != .@yagu1)) break; } while (1) { while (1) { input .@input; if (.@input < 100 || .@input > 999) { mes "[Screen]"; mes "Number input"; mes "requirement has"; mes "not been fulfilled."; mes "Please enter a"; mes "3 digit number."; close; } .@input100 = .@input / 100; .@input10 = (.@input % 100) / 10; if (((.@input100 > 0) && (.@input10 > 0)) && (.@input % 10 > 0)) { if (((.@input100 != .@input10) && (.@input100 != .@input % 10)) && (.@input10 != .@input % 10)) break; mes "[Screen]"; mes "Violation of number"; mes "input parameter. The"; mes "number 0 has been input,"; mes "or a number has been"; mes "input more than once."; next; } } ++.@retry; mes "[Screen]"; mes "You have input..."; mes "^0000ff" + .@input100 + "^000000, ^0000ff" + .@input10 + "^000000, ^0000ff" + (.@input % 10) + "^000000"; mes " "; mes "Calculating Results..."; mes "Please wait a moment..."; next; .@strike = 0; .@ball = 0; if (.@yagu100 == .@input100) .@strike += 1; if (.@yagu10 == .@input10) .@strike += 1; if (.@yagu1 == .@input % 10) .@strike += 1; if ((.@yagu100 == .@input10) || (.@yagu100 == .@input % 10)) .@ball += 1; if ((.@yagu10 == .@input100) || (.@yagu10 == .@input % 10)) .@ball += 1; if ((.@yagu1 == .@input100) || (.@yagu1 == .@input10)) .@ball += 1; if (.@strike == 3) { mes "[Screen]"; mes "Input number accepted."; mes "Access authorized."; next; mes "^3355FFAfter the screen displays"; mes "the access authorization"; mes "notice, magical power condenses"; mes "and appears on the screen's"; mes "surface. An object forms...^000000"; next; mes "^4d4dffThe powerful Yellow Key appears.^000000"; getitem Key_Yellow,1; if (thana_tower != 5) close; mes "^4d4dffA fierce feeling passes through your head."; mes "You seen an illusion of light, like when you acquired the first key.^000000"; next; switch(select("Ignore it.", "Concentrate on it.")) { case 1: mes "You decide to ignore it."; close; case 2: mes "You focus on the light."; mes "Some letters begin to appear..."; next; mes "^b22222Have you found the second key?"; mes "I wish to tell you where the seal is, but I won't unveil it so easily."; mes "Here's a hint. Go to the eagle on the 5th floor."; next; mes "^b22222The reason I came here is..."; mes "to find someone."; mes "We human beings can't understand this..."; next; mes "^b22222When I found her in Juperos, I couldn't relax."; mes "The giant men staying with her in deep side of cave"; mes "made me rush through my investigation..."; next; mes "^b22222After confirming her existence, I became blindly obsessed with finding traces of her."; mes "'Her', you ask? She is shaped like a woman..."; next; mes "^b22222I followed her traces without knowing that she existed 10 years earlier."; mes "Then I came upon this place."; next; mes "^b22222This tower set up for...^000000"; next; mes "It suddenly shakes, then disappears."; thana_tower = 6; changequest 7049,7050; specialeffect(EF_COMBOATTACK1, AREA, playerattached()); close; } } else { mes "[Screen]"; mes "*Beeeeep*"; mes "Unauthorized"; mes "numerical sequence."; next; mes "[Screen]"; mes "Correct number"; mes "in correct place"; mes "in sequence total: ^FF0000" + .@strike + "^000000"; mes " "; mes "Correct number total: ^FF0000" + .@ball + "^000000"; next; if (.@retry > 4) { mes "[Screen]"; mes "Correct number"; mes "authorization"; mes "sequence was..."; mes "^ff0000" + .@yagu100 + "^000000, ^ff0000" + .@yagu10 + "^000000, ^ff0000" + .@yagu1 + "^000000"; mes "Authorization number"; mes "will change upon retry."; close; } } } } mes "You've acquired everything you need from this rune device."; close; OnTouch: if ((countitem(Key_Yellow) == 0) && (countitem(Magic_Gem_Yellow) == 0)) specialeffect EF_LEVEL99_4; end; } tha_t05,62,179,0 script Brilliant Statue#tt3 HIDDEN_NPC,3,3,{ if ((countitem(Key_Blue) == 0) && (countitem(Magic_Gem_Blue) == 0)) { mes "I can feel some magical power from this beautiful stone statue."; mes "There's a little crack between the wings."; next; mes "Red light is shining on a crack in the left wing, and gold light on a crack in the right one."; mes "What will you do?"; next; if(select("Stick the key into the crack...", "Ignore it.") == 2) { mes "^3355FFYou decide to leave"; mes "the statue alone.^000000"; close; } if ((countitem(Key_Red) > 0) && (countitem(Key_Yellow) > 0)) { mes "["+strcharinfo(PC_NAME)+"]"; mes "I'll try the left wing first."; mes "What key should I put in?"; next; input .@inputstr$; if ((.@inputstr$ != "Red Key") && (.@inputstr$ != "red key")) { mes "It doesn't fit into the crack."; close; } mes "The key fits and makes a click."; mes "You feel the magical power growing stronger..."; next; mes "["+strcharinfo(PC_NAME)+"]"; mes "Now the right side..."; next; input .@inputstr$; if ((.@inputstr$ != "Yellow Key") && (.@inputstr$ != "yellow key")) { mes "It doesn't fit into the crack."; close; } mes "The key fits and makes a click."; mes "The beak of the bird suddenly opens, and a strong light comes out."; mes "There's a key-shaped object inside..."; next; mes "^4d4dffThe powerful Blue Key appears.^000000"; getitem Key_Blue,1; if (thana_tower != 6) close; mes "^4d4dffOnce you hold the key, a shocking feeling passes through your head."; mes "You see an illusion of light...^000000"; next; switch(select("Concentrate on it.", "Ignore it.")) { case 1: mes "This part isn't as clear as before."; mes "You try to figure out what it's saying..."; next; mes "^b22222...this tower was built by a magical tribe, not by human beings."; mes "This was quite interesting to me..."; mes "I started to investigate why they built up the tower..."; next; mes "^b22222I found out that this tower was a gate for the magic tribe"; mes "during a millennium war.^000000"; next; mes ".........It's not clearly shown......"; mes "^b22222...Morroc has gone through this gate"; mes "from the magical world into the Midgard continent after the millennium war terminated..."; next; mes "^b22222The question is that when she come up here, the Satan appears at the same time..."; mes "The truth is..........^000000"; next; mes "The illusion shakes, then melts on the surface of the key as light."; thana_tower = 7; changequest 7050,7051; specialeffect(EF_COMBOATTACK1, AREA, playerattached()); close; case 2: mes "You decide to ignore it."; close; } } mes "You try to fit something in the crack, but to no avail."; close; } mes "You've acquired everything you need from this statue."; close; OnTouch: if ((countitem(Key_Blue) == 0) && (countitem(Magic_Gem_Blue) == 0)) specialeffect EF_LEVEL99_4; end; } tha_t06,226,230,0 script Brilliant Statue#tt4 HIDDEN_NPC,3,3,{ if ((countitem(Key_Green) == 0) && (countitem(Magic_Gem_Green) == 0)) { mes "I can feel some magical power from this brilliant statue."; mes "This must be one of the seals."; next; mes "You see a floating round object with a hole in it."; mes "There're red, yellow, and blue light in a row."; mes "What will you do?"; next; if(select("Investigate.", "Ignore it.") == 2) { mes "^3355FFYou don't see the need to"; mes "investigate if nothing seems"; mes "peculiar or out of place...^000000"; close; } if ((countitem(Key_Red) > 0) && (countitem(Key_Yellow) > 0) && (countitem(Key_Blue) > 0)) { mes "When you insert the key into the keyhole of the ornament"; mes "and match them by corresponding color, the Stone Statue will snap open."; mes "You can see small wheels are moving inside."; next; switch(select("Investigate the Machine Chasis", "Investigate the Wheels", "Cancel")) { case 1: mes "^3355FFThe key in your inventory"; mes "does not seem to be affecting"; mes "the machine's chasis. The"; mes "screen mounted on the side"; mes "is still blank and deactivated.^000000"; close; case 2: .@small_1 = 0; .@small_2 = 0; .@big_1 = 0; .@big_2 = 0; .@big_3 = 0; mes "^3355FFYou touch the wheels and"; mes "find that they are actually"; mes "moving very slowly. You note"; mes "that there are 2 small wheels"; mes "and 3 larger wheels, totaling"; mes "5 wheels on this machine.^000000"; next; mes "^3355FFThe big wheels are moving"; mes "vertically, up and down, as"; mes "they press against the smaller"; mes "wheels to make them rotate.^000000"; next; mes "^3355FFJudging from the machine's"; mes "shaking and jittery noises, the"; mes "wheels may be misaligned."; mes "You might be able to activate"; mes "the machine by properly "; mes "aligning all the wheels.^000000"; while (1) { next; mes "^3355FFWhich wheel do"; mes "you want to shift?^000000"; switch(select("1st Small Wheel", "2nd Small Wheel", "1st Big Wheel", "2nd Big Wheel", "3rd Big Wheel", "Check Current Wheel Configuration", "Reset Wheels to Default Configuration")) { case 1: switch(select("Raise Wheel", "Lower Wheel", "Press Wheel")) { case 1: mes "^EE0000*Choom*^000000"; .@small_1 = 2; if ((.@small_1 == 2) && (.@small_2 == 2) && (.@big_1 == 2) && (.@big_2 == 2) && (.@big_3 == 2)) break; continue; case 2: mes "^00B2EE*Sneeeep*^000000"; .@small_1 = 1; if ((.@small_1 == 1) && (.@small_2 == 1) && (.@big_1 == 1) && (.@big_2 == 1) && (.@big_3 == 1)) break; continue; case 3: mes "^5C246E*Mrreeem*^000000"; .@small_1 = 3; if ((.@small_1 == 3) && (.@small_2 == 3) && (.@big_1 == 3) && (.@big_2 == 3) && (.@big_3 == 3)) break; continue; } break; case 2: switch(select("Raise Wheel", "Lower Wheel", "Press Wheel")) { case 1: mes "^5C246E*Mrreeem*^000000"; .@small_2 = 3; if ((.@small_1 == 3) && (.@small_2 == 3) && (.@big_1 == 3) && (.@big_2 == 3) && (.@big_3 == 3)) break; continue; case 2: mes "^EE0000*Choom*^000000"; .@small_2 = 2; if ((.@small_1 == 2) && (.@small_2 == 2) && (.@big_1 == 2) && (.@big_2 == 2) && (.@big_3 == 2)) break; continue; case 3: mes "^00B2EE*Sneeeep*^000000"; .@small_2 = 1; if ((.@small_1 == 1) && (.@small_2 == 1) && (.@big_1 == 1) && (.@big_2 == 1) && (.@big_3 == 1)) break; continue; } break; case 3: switch(select("Raise Wheel", "Lower Wheel", "Vertically Shift Wheel")) { case 1: mes "^00B2EE*Sneeeep*^000000"; .@big_1 = 1; if ((.@small_1 == 1) && (.@small_2 == 1) && (.@big_1 == 1) && (.@big_2 == 1) && (.@big_3 == 1)) break; continue; case 2: mes "^5C246E*Mrreeem*^000000"; .@big_1 = 3; if ((.@small_1 == 3) && (.@small_2 == 3) && (.@big_1 == 3) && (.@big_2 == 3) && (.@big_3 == 3)) break; continue; case 3: mes "^EE0000*Choom*^000000"; .@big_1 = 2; if ((.@small_1 == 2) && (.@small_2 == 2) && (.@big_1 == 2) && (.@big_2 == 2) && (.@big_3 == 2)) break; continue; } break; case 4: switch(select("Raise Wheel", "Lower Wheel", "Vertically Shift Wheel")) { case 1: mes "^EE0000*Choom*^000000"; .@big_2 = 2; if ((.@small_1 == 2) && (.@small_2 == 2) && (.@big_1 == 2) && (.@big_2 == 2) && (.@big_3 == 2)) break; continue; case 2: mes "^5C246E*Mrreeem*^000000"; .@big_2 = 3; if ((.@small_1 == 3) && (.@small_2 == 3) && (.@big_1 == 3) && (.@big_2 == 3) && (.@big_3 == 3)) break; continue; case 3: mes "^00B2EE*Sneeeep*^000000"; .@big_2 = 1; if ((.@small_1 == 1) && (.@small_2 == 1) && (.@big_1 == 1) && (.@big_2 == 1) && (.@big_3 == 1)) break; continue; } break; case 5: switch(select("Raise Wheel", "Lower Wheel", "Vertically Shift Wheel")) { case 1: mes "^EE0000*Choom*^000000"; .@big_3 = 2; if ((.@small_1 == 2) && (.@small_2 == 2) && (.@big_1 == 2) && (.@big_2 == 2) && (.@big_3 == 2)) break; continue; case 2: mes "^00B2EE*Sneeeep*^000000"; .@big_3 = 1; if ((.@small_1 == 1) && (.@small_2 == 1) && (.@big_1 == 1) && (.@big_2 == 1) && (.@big_3 == 1)) break; continue; case 3: mes "^5C246E*Mrreeem*^000000"; .@big_3 = 3; if ((.@small_1 == 3) && (.@small_2 == 3) && (.@big_1 == 3) && (.@big_2 == 3) && (.@big_3 == 3)) break; continue; } break; case 6: if (.@small_1 == 0) mes "1st Small Wheel: No Change"; else if (.@small_1 == 1) mes "1st Small Wheel: Down"; else if (.@small_1 == 2) mes "1st Small Wheel: Up"; else mes "1st Small Wheel: Pressed"; if (.@small_2 == 0) mes "2nd Small Wheel: No Change"; else if (.@small_2 == 1) mes "2nd Small Wheel: Pressed"; else if (.@small_2 == 2) mes "2nd Small Wheel: Down"; else mes "2nd Small Wheel: Up"; if (.@big_1 == 0) mes "1st Big Wheel: No Change"; else if (.@big_1 == 1) mes "1st Big Wheel: Up"; else if (.@big_1 == 2) mes "1st Big Wheel: Moved"; else mes "1st Big Wheel: Down"; if (.@big_2 == 0) mes "2nd Big Wheel: No Change"; else if (.@big_2 == 1) mes "2nd Big Wheel: Moved"; else if (.@big_2 == 2) mes "2nd Big Wheel: Up"; else mes "2nd Big Wheel: Down"; if (.@big_3 == 0) mes "3rd Big Wheel: No Change"; else if (.@big_3 == 1) mes "3rd Big Wheel: Down"; else if (.@big_3 == 2) mes "3rd Big Wheel: Up"; else mes "3rd Big Wheel: Moved"; continue; case 7: .@small_1 = 0; .@small_2 = 0; .@big_1 = 0; .@big_2 = 0; .@big_3 = 0; continue; } break; } mes "As you adjust the wheels,"; mes "they suddenly activate"; mes "with a firm click."; next; mes "A part of the ornament in the stone statue starts to spin,"; mes "and a shining light beam climbs up the elegant statue."; mes "A strong cursed power emerges and emits a dazzling green light."; specialeffect EF_DISPELL; specialeffect EF_POTION6; next; mes "^4d4dffAll of a sudden, the Green Key appears and you can feel great power from it.^000000"; getitem Key_Green,1; if (thana_tower != 7) close; mes "^4d4dffWhen you pick up the key,"; mes "your body trembles"; mes "with an unknown power"; mes "and you see a hallucination with some text.^000000"; next; switch(select("Concentrate on it.", "Ignore it.")) { case 1: mes "^b22222...You found 4 keys"; mes "and finally released 4 spells..."; mes "This tower used to be"; mes "a gate to summon demons ages ago."; mes "And the last visitor was"; mes "the infamous Satan Morroc."; next; mes "^b22222As I followed her trail"; mes "I realized that her spells"; mes "were scattered around the tower."; mes "Then, somehow, it vanished into the ground."; next; mes "^b22222The great battle and"; mes "the protracted war..."; mes "But her purpose was..."; mes "that... sealing of the gate..."; mes "so... I tried to seal..."; mes "but it was incomplete..."; mes "the guard of the gate was...^000000"; next; mes "["+strcharinfo(PC_NAME)+"]"; mes "It is hard to read."; next; mes "^b22222...So I changed the location"; mes "of the coupling spot..."; mes "I mean, push through to the tower"; mes "to tangle it..."; mes "Anyway, I wanted to respect"; mes "her loyalty and block the gate..."; next; mes "^b22222If I want to... then I have to"; mes "release the last spell..."; mes "He finally came to meet..."; mes "with his pieces..."; mes "...and then...^000000"; next; mes "The hallucination wobbles"; mes "and fades into the key."; thana_tower = 8; changequest 7051,7052; specialeffect(EF_BEGINSPELL6, AREA, playerattached()); specialeffect(EF_SPELLBREAKER, AREA, playerattached()); close; case 2: mes "It was too intense to see the hallucination, so you gave up reading."; close; } case 3: mes "You decide to ignore it."; close; } } mes "You don't have the right key for this keyhole."; close; } mes "The spell is already released. You've acquired everything you need from this statue."; close; OnTouch: if ((countitem(Key_Green) == 0) && (countitem(Magic_Gem_Green) == 0)) specialeffect EF_LEVEL99_4; end; } tha_t06,204,181,0 script Splendid Sword#tt5 HIDDEN_NPC,3,3,{ if ((countitem(Key_Black) == 0) && (countitem(Magic_Gem_Black) == 0)) { mes "An old, worn sword hangs above the splendid table."; mes "It emits a gloomy aura."; next; if ((countitem(Key_Red) > 0) && (countitem(Key_Yellow) > 0) && (countitem(Key_Blue) > 0) && (countitem(Key_Green) > 0)) { mes "As you approach, the keys in your pocket"; mes "suddenly respond with a mysterious power."; specialeffect(EF_ABSORBSPIRITS, AREA, playerattached()); next; if(select("Observe it.", "Ignore it.") == 2) { mes "^3355FFYou decide to leave"; mes "the sword alone.^000000"; close; } mes "While you get closer and closer, the sword shakes with a loud noise."; mes "Your eyes keep getting drawn to the sword's hilt."; mes "Then you lose control of your hands, and they stretch forth to grasp the handle..."; next; switch(select("Towards the blade of the sword", "Towards the hilt of the sword", "Towards the table")) { case 1: mes "By an unknown calling you decide to grab the blade of the sword."; mes "Your hands get wounded and begin to bleed."; specialeffect(EF_HIT1, AREA, playerattached()); percentheal -20,0; close; case 2: mes "By an unknown calling you decide to grab the hilt of the sword."; mes "The mysterious power from the keys transfers to the sword, and it falls from the table."; next; mes "At the same time, a little hole appears on the table's surface."; mes "Now, you hold the sword and..."; specialeffect EF_EXIT2; next; switch(select("Strike the table", "Insert the sword into the hole", "Bring the sword safely")) { case 1: mes "You strike the table with the sword."; mes "Numerous conflicting spells act upon it, and you can tell that you chose incorrectly."; mes "The sword automatically returns to the table, as it was before."; specialeffect EF_HIT1; specialeffect(EF_HIT1, AREA, playerattached()); percentheal -20,0; close; case 2: mes "As you insert the sword, lightning flashes around it and black smoke rises from the hole."; mes "Slowly the smoke clears, and you see an object with a certain shape..."; specialeffect EF_CHANGEDARK; next; mes "^4d4dff All of a sudden, a Black Key appears from the smoke and you feel a great cursed power from it.^000000"; getitem Key_Black,1; if (thana_tower != 8) close; next; mes "A drawer had snapped open under the table while you picked up the key and observed it."; mes "You can see an old notebook inside the drawer."; next; mes "The notebook definitely looks like it contains an important message."; mes "Maybe this notebook is the one that Rekenber wants to find, even with all the sacrifices."; next; mes "^4d4dffYou decide to show the notebook and the keys to Burled."; mes "You received Varmunt's Journal.^000000"; thana_tower = 9; changequest 7052,7053; getitem Barmund_Note,1; close; case 3: mes "When you lift the sword, you feel a shock from numerous conflicting spells."; mes "Right... stealing is the worst."; mes "The sword automatically returns to the table, as it was before."; close; } case 3: mes "You stretch your hands to find something under the table, but there is nothing."; close; } } mes "You strongly feel a cursed, sealed power from here,"; mes "but it is hard to figure out what is causing it."; mes "You cannot approach it."; close; } mes "You have already released a seal using this sword."; mes "You've acquired everything you need from here."; close; OnTouch: if ((countitem(Key_Black) == 0) && (countitem(Magic_Gem_Black) == 0)) specialeffect EF_LEVEL99_4; end; } tha_t08,1,1,0 script #Charm Stone Admintt01 CLEAR_NPC,{ end; OnInit: OnEnable: initnpctimer; end; OnTimer1000: donpcevent "Shining Crystal#tt_r1::OnEnable"; donpcevent "Shining Crystal#tt_g1::OnEnable"; donpcevent "Shining Crystal#tt_b1::OnEnable"; donpcevent "Shining Crystal#tt_y1::OnEnable"; end; OnTimer600000: donpcevent "Shining Crystal#tt_r1::OnDisable"; donpcevent "Shining Crystal#tt_g1::OnDisable"; donpcevent "Shining Crystal#tt_b1::OnDisable"; donpcevent "Shining Crystal#tt_y1::OnDisable"; donpcevent "Shining Crystal#tt_r2::OnEnable"; donpcevent "Shining Crystal#tt_g2::OnEnable"; donpcevent "Shining Crystal#tt_b2::OnEnable"; donpcevent "Shining Crystal#tt_y2::OnEnable"; end; OnTimer1200000: donpcevent "Shining Crystal#tt_r2::OnDisable"; donpcevent "Shining Crystal#tt_g2::OnDisable"; donpcevent "Shining Crystal#tt_b2::OnDisable"; donpcevent "Shining Crystal#tt_y2::OnDisable"; donpcevent "Shining Crystal#tt_r3::OnEnable"; donpcevent "Shining Crystal#tt_g3::OnEnable"; donpcevent "Shining Crystal#tt_b3::OnEnable"; donpcevent "Shining Crystal#tt_y3::OnEnable"; end; OnTimer1800000: donpcevent "Shining Crystal#tt_r3::OnDisable"; donpcevent "Shining Crystal#tt_g3::OnDisable"; donpcevent "Shining Crystal#tt_b3::OnDisable"; donpcevent "Shining Crystal#tt_y3::OnDisable"; donpcevent "Shining Crystal#tt_r4::OnEnable"; donpcevent "Shining Crystal#tt_g4::OnEnable"; donpcevent "Shining Crystal#tt_b4::OnEnable"; donpcevent "Shining Crystal#tt_y4::OnEnable"; end; OnTimer2400000: donpcevent "Shining Crystal#tt_r4::OnDisable"; donpcevent "Shining Crystal#tt_g4::OnDisable"; donpcevent "Shining Crystal#tt_b4::OnDisable"; donpcevent "Shining Crystal#tt_y4::OnDisable"; donpcevent "#Charm Stone Admintt01::OnEnable"; end; } tha_t08,90,153,0 script Shining Crystal#tt_r1 CLEAR_NPC,{ if (countitem(Key_Red) > 0) { mes "The Crystal ball is emitting mysterious power."; next; mes "Beside the crystal ball, you find faded patterns marked on the floor."; mes "Looks like some kind of keyhole that needs to be inserted with something..."; next; mes "The red key suddenly responds once you come close to the keyhole."; mes "You insert the key in the keyhole and it turns out to be a small gem."; next; mes "When you touch the gem which is dazzling red..."; mes "You feel isolated and depressed deep inside your heart..."; next; mes "^4d4dffYou have found a Red Charm Stone that is concentrated with cruel fate and a deep darkness.^000000"; delitem Key_Red,1; getitem Magic_Gem_Red,1; close; } mes "The Crystal ball is emitting mysterious power."; mes "Something is definitely there inside... How do I get it to open?"; close; OnInit: OnDisable: disablenpc strnpcinfo(NPC_NAME); end; OnEnable: enablenpc strnpcinfo(NPC_NAME); end; } tha_t08,90,62,0 duplicate(Shining Crystal#tt_r1) Shining Crystal#tt_r2 CLEAR_NPC tha_t08,49,59,0 duplicate(Shining Crystal#tt_r1) Shining Crystal#tt_r3 CLEAR_NPC tha_t08,49,144,0 duplicate(Shining Crystal#tt_r1) Shining Crystal#tt_r4 CLEAR_NPC tha_t08,49,153,0 script Shining Crystal#tt_y1 CLEAR_NPC,{ if (countitem(Key_Yellow) > 0) { mes "The Crystal ball is emitting mysterious power."; next; mes "Beside the crystal ball, you find faded patterns marked on the floor."; mes "Looks like some kind of keyhole that needs to be inserted with something..."; next; mes "The yellow key suddenly responds once you come close to the keyhole."; mes "You insert the key in the keyhole and it turns out to be a small gem."; next; mes "When you touch the gem which is dazzling yellow..."; mes "Your heart begins to throb as though you are suffering from a broken heart."; next; mes "^4d4dffYou have found a Yellow Charm Stone that is concentrated with grief and mysterious power.^000000"; delitem Key_Yellow,1; getitem Magic_Gem_Yellow,1; close; } mes "The Crystal ball is emitting mysterious power."; mes "Something is definitely there inside... How do I get it to open?"; close; OnInit: OnDisable: disablenpc strnpcinfo(NPC_NAME); end; OnEnable: enablenpc strnpcinfo(NPC_NAME); end; } tha_t08,90,150,0 duplicate(Shining Crystal#tt_y1) Shining Crystal#tt_y2 CLEAR_NPC tha_t08,90,59,0 duplicate(Shining Crystal#tt_y1) Shining Crystal#tt_y3 CLEAR_NPC tha_t08,49,56,0 duplicate(Shining Crystal#tt_y1) Shining Crystal#tt_y4 CLEAR_NPC tha_t08,49,65,0 script Shining Crystal#tt_b1 CLEAR_NPC,{ if (countitem(Key_Blue) > 0) { mes "The Crystal ball is emitting mysterious power."; next; mes "Beside the crystal ball, you find faded patterns marked on the floor."; mes "Looks like some kind of keyhole that needs to be inserted with something..."; next; mes "The blue key suddenly responds once you come close to the keyhole."; mes "You insert the key in the keyhole and it turns out to be a small gem."; next; mes "When you touch the gem which is dazzling blue...."; mes "Someone's sobbing comes into your ears as you smell blood on the wind and suddenly you become angry."; next; mes "^4d4dffYou have found a Blue Charm Stone that is concentrated with grudge and mysterious power.^000000"; delitem Key_Blue,1; getitem Magic_Gem_Blue,1; close; } mes "The Crystal ball is emitting mysterious power."; mes "Something is definitely there inside... How do I get it to open?"; close; OnInit: OnDisable: disablenpc strnpcinfo(NPC_NAME); end; OnEnable: enablenpc strnpcinfo(NPC_NAME); end; } tha_t08,49,150,0 duplicate(Shining Crystal#tt_b1) Shining Crystal#tt_b2 CLEAR_NPC tha_t08,90,147,0 duplicate(Shining Crystal#tt_b1) Shining Crystal#tt_b3 CLEAR_NPC tha_t08,90,56,0 duplicate(Shining Crystal#tt_b1) Shining Crystal#tt_b4 CLEAR_NPC tha_t08,90,65,0 script Shining Crystal#tt_g1 CLEAR_NPC,{ if (countitem(Key_Green) > 0) { mes "The Crystal ball is emitting mysterious power."; next; mes "Beside the crystal ball, you find faded patterns marked on the floor."; mes "Looks like some kind of keyhole that needs to be inserted with something..."; next; mes "The green key suddenly responds once you come close to the keyhole."; mes "You insert the key in the keyhole and it turns out to be a small gem."; next; mes "When you touch the gem which is dazzling green..."; mes "Your head starts to ache and you feel worried and anxious about something."; next; mes "^4d4dffYou have found a Green Charm Stone that is concentrated with deep suffering.^000000"; delitem Key_Green,1; getitem Magic_Gem_Green,1; close; } mes "The Crystal ball is emitting mysterious power."; mes "Something is definitely there inside... How do I get it to open?"; close; OnInit: OnDisable: disablenpc strnpcinfo(NPC_NAME); end; OnEnable: enablenpc strnpcinfo(NPC_NAME); end; } tha_t08,49,62,0 duplicate(Shining Crystal#tt_g1) Shining Crystal#tt_g2 CLEAR_NPC tha_t08,49,147,0 duplicate(Shining Crystal#tt_g1) Shining Crystal#tt_g3 CLEAR_NPC tha_t08,90,144,0 duplicate(Shining Crystal#tt_g1) Shining Crystal#tt_g4 CLEAR_NPC tha_t12,161,57,0 script Gold Religious Statue#tt HIDDEN_NPC,{ if ($@thana_summon == 0) { if (countitem(Magic_Gem_Yellow) > 0) { mes "It's a statue giving off a golden light."; mes "The sword appears to be missing a gem."; mes "As I draw closer to the statue, the Yellow Charm Stone emits a bright light."; specialeffect EF_BEGINSPELL5; specialeffect(EF_BEGINSPELL5, AREA, playerattached()); next; if(select("Insert the Yellow Charm Stone.", "Run away.") == 2) close; if ($@thana_summon == 0) { mes "After inserting the Yellow Charm Stone into the sword, the statue begins to react."; specialeffect EF_BEGINSPELL5; delitem Magic_Gem_Yellow,1; $@thana_summon = 1; donpcevent "#tteffect01::OnEnable"; mapannounce "tha_t12","The golden magic power has released part of the seal.",bc_map,"0x00ff00"; //FW_NORMAL 12 0 0 close; } mes "Someone has already inserted a Charm Stone into this statue."; close; } mes "The statue give off mysterious light."; mes "Strange power has blocked your access."; close; } mes "The statue has such a strong light that I can't see or touch it."; close; } tha_t12,154,17,0 script Green Wiseman Statue#tt HIDDEN_NPC,{ if ($@thana_summon == 1) { if (countitem(Magic_Gem_Green) > 0) { mes "A statue gives off green light."; mes "The wiseman's wand seems to be missing a gem."; mes "As I draw closer to the statue, the Green Charm Stone emits a bright light."; specialeffect EF_BEGINSPELL4; specialeffect(EF_BEGINSPELL4, AREA, playerattached()); next; if(select("Insert the Green Charm Stone.", "Run away.") == 2) close; if ($@thana_summon == 1) { mes "After inserting the Green Charm Stone into the wand, the statue begins to react."; specialeffect EF_BEGINSPELL4; delitem Magic_Gem_Green,1; $@thana_summon = 2; donpcevent "#tteffect02::OnEnable"; mapannounce "tha_t12","The green magic power has released part of the seal.",bc_map,"0x00ff00"; //FW_NORMAL 12 0 0 close; } mes "Someone has already inserted a Charm Stone into this statue."; close; } mes "The statue give off mysterious light."; mes "Strange power has blocked your access."; close; } mes "The statue has such a strong light that I can't see or touch it."; close; } tha_t12,103,17,0 script Blue Angel Statue#tt HIDDEN_NPC,{ if ($@thana_summon == 2) { if (countitem(Magic_Gem_Blue) > 0) { mes "An angel statue is covered with a blue light."; mes "A gem seems to be missing from the statue's belt."; mes "As I draw closer to the statue, the Blue Charm Stone emits a bright light."; specialeffect EF_BEGINSPELL2; specialeffect(EF_BEGINSPELL2, AREA, playerattached()); next; if(select("Insert the Blue Charm Stone.", "Run away.") == 2) close; if ($@thana_summon == 2) { mes "After inserting the Blue Charm Stone into the belt, the statue begins to react."; specialeffect EF_BEGINSPELL2; delitem Magic_Gem_Blue,1; $@thana_summon = 3; donpcevent "#tteffect03::OnEnable"; mapannounce "tha_t12","The blue magic power has released part of the seal.",bc_map,"0x00ff00"; //FW_NORMAL 12 0 0 close; } mes "Someone has already inserted a Charm Stone into this statue."; close; } mes "The statue give off mysterious light."; mes "Strange power has blocked you to access."; close; } mes "The statue has such a strong light that I can't see or touch it."; close; } tha_t12,96,57,0 script Bloody Knight Statue#tt HIDDEN_NPC,{ if ($@thana_summon == 3) { if (countitem(Magic_Gem_Red) > 0) { mes "A statue is shining like blood."; mes "A gem seems to be missing from the heart area of its armor."; mes "As I draw closer to the statue, the Red Charm Stone emits a bright light."; specialeffect EF_BEGINSPELL3; specialeffect(EF_BEGINSPELL3, AREA, playerattached()); next; if(select("Insert the Red Charm Stone.", "Run away.") == 2) close; if ($@thana_summon == 3) { mes "After inserting the Red Charm Stone into the armor, the statue begins to react."; specialeffect EF_BEGINSPELL3; delitem Magic_Gem_Red,1; $@thana_summon = 4; donpcevent "#tteffect04::OnEnable"; mapannounce "tha_t12","The red magic power has released part of the seal.",bc_map,"0x00ff00"; //FW_NORMAL 12 0 0 close; } mes "Someone has already inserted a Charm Stone into this statue."; close; } mes "The statue give off mysterious light."; mes "Strange power has blocked you to access."; close; } mes "The statue has such a strong light that I can't see or touch it."; close; } tha_t12,129,86,0 script Dark Devil Statue#tt HIDDEN_NPC,{ if ($@thana_summon == 4) { if (countitem(Magic_Gem_Black) > 0) { mes "A devil statue emits dark light."; mes "The right eye seems to be missing a gem."; mes "As I draw closer to the statue, the Black Charm Stone emits a bright light."; specialeffect EF_BEGINSPELL7; specialeffect(EF_BEGINSPELL7, AREA, playerattached()); next; if(select("Insert the Black Charm Stone.", "Run away.") == 2) close; if ($@thana_summon == 4) { mes "After inserting the Red Charm Stone into the eye socket, the statue begins to react."; specialeffect EF_BEGINSPELL7; delitem Magic_Gem_Black,1; $@thana_summon = 5; donpcevent "#gateto_thanatos::OnEnable"; donpcevent "#tteffect01::OnStop"; donpcevent "#tteffect02::OnStop"; donpcevent "#tteffect03::OnStop"; donpcevent "#tteffect04::OnStop"; mapannounce "tha_t12","The Black Charm Stone's magic power has released the final seal.",bc_map,"0x00ff00"; //FW_NORMAL 12 0 0 close; } mes "Someone has already inserted a Charm Stone into this statue."; close; } mes "The statue give off mysterious light."; mes "Strange power has blocked you to access."; close; } mes "The statue has such a strong light that I can't see or touch it."; close; } tha_t12,134,52,0 script #tteffect01 HIDDEN_WARP_NPC,{ end; OnEnable: initnpctimer; end; OnStop: stopnpctimer; end; OnTimer500: OnTimer1000: OnTimer1500: OnTimer2000: OnTimer2500: specialeffect EF_BEGINSPELL5; end; OnTimer3000: donpcevent "#tteffect01::OnEnable"; end; } tha_t12,132,47,0 script #tteffect02 HIDDEN_WARP_NPC,{ end; OnEnable: initnpctimer; end; OnStop: stopnpctimer; end; OnTimer500: OnTimer1000: OnTimer1500: OnTimer2000: OnTimer2500: specialeffect EF_BEGINSPELL4; end; OnTimer3000: donpcevent "#tteffect02::OnEnable"; end; } tha_t12,127,47,0 script #tteffect03 HIDDEN_WARP_NPC,{ end; OnEnable: initnpctimer; end; OnStop: stopnpctimer; end; OnTimer500: OnTimer1000: OnTimer1500: OnTimer2000: OnTimer2500: specialeffect EF_BEGINSPELL2; end; OnTimer3000: donpcevent "#tteffect03::OnEnable"; end; } tha_t12,125,52,0 script #tteffect04 HIDDEN_WARP_NPC,{ end; OnEnable: initnpctimer; end; OnStop: stopnpctimer; end; OnTimer500: OnTimer1000: OnTimer1500: OnTimer2000: OnTimer2500: specialeffect EF_BEGINSPELL3; end; OnTimer3000: donpcevent "#tteffect04::OnEnable"; end; } tha_t12,129,56,0 script #tteffect05 HIDDEN_WARP_NPC,{ end; OnEnable: initnpctimer; end; OnStop: stopnpctimer; end; OnTimer500: OnTimer1000: OnTimer1500: OnTimer2000: OnTimer2500: specialeffect EF_BEGINSPELL7; end; OnTimer3000: donpcevent "#tteffect05::OnEnable"; end; } tha_t12,130,52,0 script #gateto_thanatos WARPNPC,1,1,{ end; OnInit: disablenpc "#gateto_thanatos"; end; OnEnable: enablenpc "#gateto_thanatos"; OnOn2: initnpctimer; end; OnTouch: .@touch = 1; OnTimer6000: if (($@thana_summon == 0) || ($@thana_summon == 6)) { disablenpc "#gateto_thanatos"; stopnpctimer; } else if ($@thana_summon == 5) { if (.@touch) warp "thana_boss",136,116; else donpcevent "#gateto_thanatos::OnOn2"; } end; OnTimer1000: OnTimer5000: .@pillar = 1; OnTimer3000: specialeffect(EF_BEGINSPELL7, AREA, getnpcid("#tteffect05")); specialeffect(EF_BEGINSPELL3, AREA, getnpcid("#tteffect04")); specialeffect(EF_BEGINSPELL2, AREA, getnpcid("#tteffect03")); specialeffect(EF_BEGINSPELL4, AREA, getnpcid("#tteffect02")); specialeffect(EF_BEGINSPELL5, AREA, getnpcid("#tteffect01")); if (.@pillar) specialeffect EF_MAPPILLAR2; end; } thana_boss,217,167,3 script Memory Seal#tt1 G_THA_MAERO,3,3,{ end; OnEnable: hideoffnpc strnpcinfo(NPC_NAME); .hide = 0; end; OnDisable: hideonnpc strnpcinfo(NPC_NAME); .hide = 0; end; OnTouch: .@seal = atoi(charat(strnpcinfo(NPC_NAME_HIDDEN),2)); if (.hide & (1<<.@seal)) end; // .@i: ItemID,MobID,MapX,MapY,EffectNum // .@j$: FragmentName switch(.@seal) { case 1: setarray .@i[0],7437,1711,217,167,238; .@j$ = "Misery"; break; case 2: setarray .@i[0],7436,1712,202,75,102; .@j$ = "Agony"; break; case 3: setarray .@i[0],7438,1709,80,76,101; .@j$ = "Hatred"; break; case 4: setarray .@i[0],7439,1710,62,171,100; .@j$ = "Despair"; break; } specialeffect EF_GUMGANG; if ($@thana_summon2 > 3) { mes "^3355FFYou cannot approach"; mes "the crest because it is"; mes "generating intense heat.^000000"; close; } mes "The seal seems to be dormant."; mes "There is a fragment missing from the crest of the Seal."; mes "Surely I saw a familiar fragment before..."; next; input .@inputstr$; .@exact_tt$ = "Fragment of "+.@j$; if (countitem(.@i[0]) > 0 && .@exact_tt$ == .@inputstr$) { mes "^3355FFYou insert the"; mes .@exact_tt$; mes "into the crest, causing"; mes "its glow to intensify.^000000"; close2; hideonnpc strnpcinfo(NPC_NAME); .hide |= (1<<.@seal); delitem .@i[0],1; specialeffect .@i[4]; monster "thana_boss",.@i[2],.@i[3],.@j$,.@i[1],1,strnpcinfo(NPC_NAME)+"::OnMyMobDead"; switch($@thana_summon2) { case 0: .@str$ = "... who... released... the... Memory... of... "+.@j$+"...?"; break; case 1: .@str$ = "... why... did you... release... the... Memory... of... "+.@j$+"...?"; break; case 2: .@str$ = "... ugh... stop it... the Memory of "+.@j$+"..."; break; default: .@str$ = "... finally... you released the last piece of Memory..."; break; } mapannounce "thana_boss",.@str$,bc_map,"0x7b68ee"; //FW_NORMAL 12 0 0 end; } mes "^3355FFThat action had no"; mes "effect. You'll have to"; mes "try something else.^000000"; close; OnMyMobDead: ++$@thana_summon2; if ($@thana_summon2 == 4) mapwarp "thana_boss","thana_boss",141,228; end; } thana_boss,202,75,3 duplicate(Memory Seal#tt1) Memory Seal#tt2 G_THA_DOLOR,3,3 thana_boss,80,76,7 duplicate(Memory Seal#tt1) Memory Seal#tt3 G_THA_ODIUM,3,3 thana_boss,62,171,5 duplicate(Memory Seal#tt1) Memory Seal#tt4 G_THA_DESPERO,3,3 thana_boss,141,228,0 script #thanatos_seal HIDDEN_WARP_NPC,3,3,{ end; OnEnable: enablenpc "#thanatos_seal"; end; OnDisable: disablenpc "#thanatos_seal"; end; OnTouch: if ($@thana_summon2 == 4) { initnpctimer; donpcevent "Memory Seal#tt5::OnEnable"; disablenpc "#thanatos_seal"; } end; OnTimer1000: mapannounce "thana_boss","Thanatos : RAWWWWWWWWWWWWWWWWR!",bc_map,"0xff0000"; //FW_NORMAL 12 0 0 end; OnTimer4000: mapannounce "thana_boss","Thanatos : ... crashed... broken... spread... and come back as tears...",bc_map,"0xff0000"; //FW_NORMAL 12 0 0 end; OnTimer7000: mapannounce "thana_boss","Thanatos : I live again to fulfill my ambition!",bc_map,"0xff0000"; //FW_NORMAL 12 0 0 end; OnTimer10000: mapannounce "thana_boss","Thanatos : ... gives off a strong bloody scent... soaked in sorrow...",bc_map,"0xff0000"; //FW_NORMAL 12 0 0 end; OnTimer13000: mapannounce "thana_boss","Thanatos : I will remove all people who invade this continent again!",bc_map,"0xff0000"; //FW_NORMAL 12 0 0 end; OnTimer16000: mapannounce "thana_boss","Thanatos : Come, be the first to fall before my might!",bc_map,"0xff0000"; //FW_NORMAL 12 0 0 donpcevent "Memory Seal#tt5::OnDisable"; donpcevent "#sommon_thanatos::OnEnable"; $@thana_summon2 = 5; stopnpctimer; end; } thana_boss,141,235,3 script Memory Seal#tt5 THANATOS,{ end; OnInit: disablenpc "Memory Seal#tt5"; end; OnEnable: enablenpc "Memory Seal#tt5"; end; OnDisable: disablenpc "Memory Seal#tt5"; specialeffect EF_ICECRASH; end; } thana_boss,141,218,0 script #sommon_thanatos FAKE_NPC,{ OnEnable: specialeffect(EF_MAPPILLAR2, AREA, getnpcid("#sommon_thanatos")); specialeffect(EF_SEISMICWEAPON, AREA, getnpcid("#sommon_thanatos")); monster "thana_boss",141,218,"Thanatos Phantom",1708,1,"#sommon_thanatos::OnMyMobDead"; end; OnMyMobDead: if (mobcount("thana_boss","#sommon_thanatos::OnMyMobDead") < 1) { mapannounce "thana_boss","RAWWWWWWWWWWR........ This can't be.........................",bc_map,"0xff0000"; //FW_NORMAL 12 0 0 donpcevent "#cooltime_thana::OnEnable"; $@thana_summon = 6; } end; } thana_boss,1,1,0 script #cooltime_thana CLEAR_NPC,{ end; OnInit: $@thana_summon = 0; $@thana_summon2 = 0; end; OnEnable: initnpctimer; end; OnStop: stopnpctimer; end; OnTimer3000: mapannounce "thana_boss","Warning!!",bc_map,"0x00ff00"; //FW_NORMAL 12 0 0 end; OnTimer6000: mapannounce "thana_boss","The seal will re-activate in 30 seconds.",bc_map,"0x00ff00"; //FW_NORMAL 12 0 0 end; OnTimer16000: mapannounce "thana_boss","20 seconds left...",bc_map,"0x00ff00"; //FW_NORMAL 12 0 0 end; OnTimer26000: mapannounce "thana_boss","10 seconds left...",bc_map,"0x00ff00"; //FW_NORMAL 12 0 0 end; OnTimer31000: mapannounce "thana_boss","5 seconds.",bc_map,"0x00ff00"; //FW_NORMAL 12 0 0 end; OnTimer32000: mapannounce "thana_boss","4 seconds.",bc_map,"0x00ff00"; //FW_NORMAL 12 0 0 end; OnTimer33000: mapannounce "thana_boss","3 seconds.",bc_map,"0x00ff00"; //FW_NORMAL 12 0 0 end; OnTimer34000: mapannounce "thana_boss","2 seconds.",bc_map,"0x00ff00"; //FW_NORMAL 12 0 0 end; OnTimer35000: mapannounce "thana_boss","Time's up!",bc_map,"0xff0000"; //FW_NORMAL 12 0 0 end; OnTimer36000: OnTimer37000: mapwarp "thana_boss","tha_t12",130,52; end; OnTimer7200000: $@thana_summon = 0; $@thana_summon2 = 0; donpcevent "Memory Seal#tt1::OnEnable"; donpcevent "Memory Seal#tt2::OnEnable"; donpcevent "Memory Seal#tt3::OnEnable"; donpcevent "Memory Seal#tt4::OnEnable"; donpcevent "#thanatos_seal::OnEnable"; stopnpctimer; end; } tha_scene01,30,30,0 warp scene 1,1,tha_scene01,131,220 tha_t04,81,36,0 warp to 5th Floor 1,1,tha_t05,62,8 tha_t06,119,120,0 script to 7th Floor WARPNPC,1,1,{ end; OnTouch: if (eaclass()&(EAJL_2|EAJL_UPPER) || eaclass()&EAJL_THIRD || ((Class == Job_SuperNovice || Class == Job_Taekwon || Class == Job_Star_Gladiator || Class == Job_Soul_Linker || BaseClass == Job_Ninja || Class == Job_Gunslinger) && BaseLevel > 94)) { if (countitem(Key_Black) > 0) { mes "The shadow of a Black Key is gleaming in the center of the portal."; mes "To pass this way, looks like I need something."; next; mes "The Black Key reacts to the portal and floats in the air."; next; mes "The key seems to separate into many particles and suddenly collapses into a ball."; mes "The barricade is removed through the power from newly formed black magic gem."; close2; delitem Key_Black,1; getitem Magic_Gem_Black,1; warp "thana_step",69,369; end; } mes "The shadow of a Black Key is gleaming in the center of the portal."; mes "To pass this way, looks like I need something."; close; } mes "A mysterious power is blocking my path."; close; }