source
Source for my MapleSolaxiaV2 (v83 MapleStory).
This commit is contained in:
96
scripts/quest/1021.js
Normal file
96
scripts/quest/1021.js
Normal file
@@ -0,0 +1,96 @@
|
||||
/*
|
||||
This file is part of the OdinMS Maple Story Server
|
||||
Copyright (C) 2008 Patrick Huy <patrick.huy@frz.cc>
|
||||
Matthias Butz <matze@odinms.de>
|
||||
Jan Christian Meyer <vimes@odinms.de>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
published by the Free Software Foundation version 3 as published by
|
||||
the Free Software Foundation. You may not use, modify or distribute
|
||||
this program under any other version of the GNU Affero General Public
|
||||
License.
|
||||
|
||||
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 Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
/* Author: Xterminator (Modified by XxOsirisxX)
|
||||
NPC Name: Roger
|
||||
Map(s): Maple Road : Lower level of the Training Camp (2)
|
||||
Description: Quest - Roger's Apple
|
||||
*/
|
||||
importPackage(Packages.client);
|
||||
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
status++;
|
||||
if (mode != 1) {
|
||||
if(type == 1 && mode == 0)
|
||||
status -= 2;
|
||||
else{
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
}
|
||||
if (status == 0)
|
||||
qm.sendNext("Hey, Man~ What's up? Haha! I am Roger who can teach you adorable new Maplers lots of information.");
|
||||
else if (status == 1)
|
||||
qm.sendNextPrev("You are asking who made me do this? Ahahahaha!\r\nMyself! I wanted to do this and just be kind to you new travellers.");
|
||||
else if (status == 2)
|
||||
qm.sendAcceptDecline("So..... Let me just do this for fun! Abaracadabra~!");
|
||||
else if (status == 3) {
|
||||
if (qm.c.getPlayer().getHp() >= 50) {
|
||||
qm.c.getPlayer().setHp(25);
|
||||
qm.c.getPlayer().updateSingleStat(MapleStat.HP, 25);
|
||||
}
|
||||
if (!qm.haveItem(2010007))
|
||||
qm.gainItem(2010007, 1);
|
||||
qm.forceStartQuest();
|
||||
qm.sendNext("Surprised? If HP becomes 0, then you are in trouble. Now, I will give you #rRoger's Apple#k. Please take it. You will feel stronger. Open the Item window and double click to consume. Hey, it's very simple to open the Item window. Just press #bI#k on your keyboard.");
|
||||
} else if (status == 4) {
|
||||
qm.sendNextPrev("Please take all Roger's Apples that I gave you. You will be able to see the HP bar increasing. Please talk to me again when you recover your HP 100%.");
|
||||
} else if (status == 5) {
|
||||
qm.showInfo("UI/tutorial.img/28");
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
status++;
|
||||
if (mode != 1) {
|
||||
if(type == 1 && mode == 0)
|
||||
status -= 2;
|
||||
else{
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
}
|
||||
if (status == 0)
|
||||
if (qm.c.getPlayer().getHp() < 50) {
|
||||
qm.sendNext("Hey, your HP is not fully recovered yet. Did you take all the Roger's Apple that I gave you? Are you sure?");
|
||||
qm.dispose();
|
||||
} else
|
||||
qm.sendNext("How easy is it to consume the item? Simple, right? You can set a #bhotkey#k on the right bottom slot. Haha you didn't know that! right? Oh, and if you are a beginner, HP will automatically recover itself as time goes by. Well it takes time but this is one of the strategies for the beginners.");
|
||||
else if (status == 1)
|
||||
qm.sendNextPrev("Alright! Now that you have learned alot, I will give you a present. This is a must for your travel in Maple World, so thank me! Please use this under emergency cases!");
|
||||
else if (status == 2)
|
||||
qm.sendNextPrev("Okay, this is all I can teach you. I know it's sad but it is time to say good bye. Well take care if yourself and Good luck my friend!\r\n\r\n#fUI/UIWindow.img/QuestIcon/4/0#\r\n#v2010000# 3 #t2010000#\r\n#v2010009# 3 #t2010009#\r\n\r\n#fUI/UIWindow.img/QuestIcon/8/0# 10 exp");
|
||||
else if (status == 3) {
|
||||
if(qm.isQuestCompleted(1021))
|
||||
qm.dropMessage(1,"Unknown Error");
|
||||
else if(qm.canHold(2010000) && qm.canHold(2010009)){
|
||||
qm.gainExp(10);
|
||||
qm.gainItem(2010000, 3);
|
||||
qm.gainItem(2010009, 3);
|
||||
qm.forceCompleteQuest();
|
||||
}else
|
||||
qm.dropMessage(1,"Your inventory is full");
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
23
scripts/quest/10940.js
Normal file
23
scripts/quest/10940.js
Normal file
@@ -0,0 +1,23 @@
|
||||
//credits to kevintjuh93
|
||||
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
qm.dispose();
|
||||
} else {
|
||||
if (mode > 0)
|
||||
status++;
|
||||
else
|
||||
qm.dispose();
|
||||
if (status == 0)
|
||||
qm.sendAcceptDecline("Hello, #h0#. Welcome to Maple World. It's currently event season, and we're welcome new characters with a gift. Would you like your gift now?");
|
||||
else if (status == 1) {
|
||||
qm.forceStartQuest();
|
||||
qm.forceCompleteQuest();
|
||||
qm.gainItem(2430191, 1, true);
|
||||
qm.sendOk("Open your inventory and double-click on it! These gifts will make you look stylish. Oh, one more thing! You'll get another gift at level 30. Good luck!");
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
54
scripts/quest/20000.js
Normal file
54
scripts/quest/20000.js
Normal file
@@ -0,0 +1,54 @@
|
||||
/*
|
||||
This file is part of the OdinMS Maple Story Server
|
||||
Copyright (C) 2008 Patrick Huy <patrick.huy@frz.cc>
|
||||
Matthias Butz <matze@odinms.de>
|
||||
Jan Christian Meyer <vimes@odinms.de>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
published by the Free Software Foundation version 3 as published by
|
||||
the Free Software Foundation. You may not use, modify or distribute
|
||||
this program under any other version of the GNU Affero General Public
|
||||
License.
|
||||
|
||||
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 Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
/*
|
||||
Author : Generic
|
||||
NPC Name: Cygnus
|
||||
Map(s): Ereve: Empress' Road
|
||||
Description: Quest - Greetings from the Young Empress
|
||||
Quest ID : 20000
|
||||
*/
|
||||
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
qm.dispose();
|
||||
} else {
|
||||
if (mode > 0)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
if (status == 0)
|
||||
qm.sendNext("Ah, you've come... this is exhilarating. I am grateful for your decision to become a Cygnus Knight. I have been waiting a long time for someone like you. Someone that is courageous enough to face the Black Mage and not flinch...");
|
||||
else if (status == 1)
|
||||
qm.sendNext("The battle against the evil nature of the Black Mage who wants to swallow up Maple World as a whole, the cunning nature of his disciples, and the physical battle against the crazy monsters will await you. There will also come a time where even you may turn against yourself into an enemy and torment you ...");
|
||||
else if (status == 2)
|
||||
qm.sendOk("But I won't worry about that. I am confident that you will be able to fight through all that and protect Maple World from the Black Mage. Of course, you'll have to become a bit stronger than you are right now, right?");
|
||||
else if (status == 3) {
|
||||
qm.gainItem(1142065, 1); // Noblesse Medal * 1
|
||||
qm.gainExp(20); //gain 20 exp!!
|
||||
qm.forceStartQuest();
|
||||
qm.forceCompleteQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
73
scripts/quest/20001.js
Normal file
73
scripts/quest/20001.js
Normal file
@@ -0,0 +1,73 @@
|
||||
/*
|
||||
This file is part of the OdinMS Maple Story Server
|
||||
Copyright (C) 2008 Patrick Huy <patrick.huy@frz.cc>
|
||||
Matthias Butz <matze@odinms.de>
|
||||
Jan Christian Meyer <vimes@odinms.de>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
published by the Free Software Foundation version 3 as published by
|
||||
the Free Software Foundation. You may not use, modify or distribute
|
||||
this program under any other version of the GNU Affero General Public
|
||||
License.
|
||||
|
||||
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 Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
/*
|
||||
Author : Generic
|
||||
NPC Name: Neinheart
|
||||
Map(s): Ereve: Empress' Road
|
||||
Description: Quest - Neinheart the Tactician
|
||||
Quest ID: 20001
|
||||
*/
|
||||
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
qm.dispose();
|
||||
} else {
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
if (status == 0)
|
||||
qm.sendNext("Hello, #h #. I formally welcome you to the Cygnus Knights. My name is Neinheart Von Rubistein, the Head Tactician for the young Empress. I will be seeing you often from here on out, so I suggest you remember my name. Haha...");
|
||||
else if (status == 1)
|
||||
qm.sendNextPrev("I understand that you didn't have enough time and exposure to figure out what you really need to do as a Cygnus Knight. I will eplain it to you in detail, one by one. I will explain where you are, who the young Empress is, and what our duties are...");
|
||||
else if (status == 2)
|
||||
qm.sendNextPrev("You're standing on an island called Ereve, the only land that's governed by the young Empress that also happens to float in the air. Yes, we're floating in the air as we speak. We stay here out of necessity, but it usually works as a ship that floats all over Maple World, for the sake of the young Empress...");
|
||||
else if (status == 3)
|
||||
qm.sendNextPrev("The young Empress is indeed the ruler of Maple World, the one and only governer of this world. What? You've never heard of such a thing? Ahhh, that's understandable. The young Empress may govern this world, but she's not a dictator that looms over everyone. She uses Ereve as a way for her to oversee the world as an observer without having to be too hands-on. That's how it usually is, anyway...");
|
||||
else if (status == 4)
|
||||
qm.sendNextPrev("But situations arise every now and then where she'll have to take control. The evil Black Mage has been showing signs of resurrection all over the world. The very king of destruction that threatened to destroy the world as we know it is trying to reappear into our lives.");
|
||||
else if (status == 5)
|
||||
qm.sendNextPrev("The problem is, no one is aware of it. It's been so long since the Black Mage disappeared, that people have become used to peace in the world, not necessarily knowing what to do if a crisis like this reaches. If this keeps up, our world will be in grave danger in no time.");
|
||||
else if (status == 6)
|
||||
qm.sendNextPrev("That's when the young Empress decided to step forward and take control of this potential crisis before it revealed itself. She decided to create a group of Knights that will prevent the Black Mage from being fully resurrected. I'm sure you know of what happens afterwards since you volunteered to become a Knight yourself.");
|
||||
else if (status == 7)
|
||||
qm.sendNextPrev("Our duties are simple. We need to make ourselves more powerful; much more powerful than the state we're in right now, so that when the Black Mage returns, we'll battle him and eliminate him once and for all before he puts the whole world in grave danger. That is our goal, our mission, and therefore yours as well");
|
||||
else if (status == 8)
|
||||
qm.sendAcceptDecline("This is the basic overview of this situation. Understood?");
|
||||
else if (status == 9) {
|
||||
if (qm.isQuestCompleted(20001)) {
|
||||
qm.gainExp(40);
|
||||
qm.gainItem(1052177, 1); // fancy noblesse robe
|
||||
}
|
||||
qm.forceStartQuest();
|
||||
qm.forceCompleteQuest();
|
||||
qm.sendNext("I'm glad you understand what I've told you but... did you know? Based on your current level, you won't be able to face the Black Mage. Heck you won't be able to face off his disciple's slave's monster's pet's dummy! Are you sure you are ready to protect Maple World like that?");
|
||||
} else if (status == 10)
|
||||
qm.sendNextPrev("You may be a member of the Cygnus Knights, but that doesn't mean you're a knight. Forget being the official knight. You're not even a Knight-in-Training, yet. A lot of time will pass where you will just sit around here, doing paperwork for the Cygnus Knights, but...");
|
||||
else if (status == 11)
|
||||
qm.sendNextPrev("But then again, no one is born strong, anyway. The Empress also prefers that she creates an enviroment where a string of powerful knights can be nurtured and created, as opposed to finding a supernaturally-gifted knight. For now, you'll have to become a Knight-in-Training, and make yourself much more powerful so you'll become useful later on. We'll talk about the duties of being a Cygnus Knight once you reach that level of competency.");
|
||||
else if (status == 12)
|
||||
qm.sendPrev("Take the portal on the left side and go straight, and you'll head towards #b Training Forest I # . There, you'll find the training instructor for the Knights, Kiku. The next time I see you, I'd like for you to be atleast at level 10.");
|
||||
}
|
||||
}
|
||||
57
scripts/quest/20002.js
Normal file
57
scripts/quest/20002.js
Normal file
@@ -0,0 +1,57 @@
|
||||
/*
|
||||
This file is part of the OdinMS Maple Story Server
|
||||
Copyright (C) 2008 Patrick Huy <patrick.huy@frz.cc>
|
||||
Matthias Butz <matze@odinms.de>
|
||||
Jan Christian Meyer <vimes@odinms.de>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
published by the Free Software Foundation version 3 as published by
|
||||
the Free Software Foundation. You may not use, modify or distribute
|
||||
this program under any other version of the GNU Affero General Public
|
||||
License.
|
||||
|
||||
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 Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
/*
|
||||
Author : Generic
|
||||
NPC Name: Kiku
|
||||
Map(s): Empress' Road : Training Forest I
|
||||
Description: Quest - Kiku the Training Instructor
|
||||
Quest ID : 20002
|
||||
*/
|
||||
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
qm.dispose();
|
||||
} else {
|
||||
if (mode > 0)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
if (status == 0)
|
||||
qm.sendNext("What? Neinheart sent you here? Ahh, you must be a rookie. Welcome, welcome. My name is Kiku, and my job is to train and mold kids like you into bonafide knights. Hmmm.. Why are you looking at me like that... Ahh, you must have never seen Piyos before.");
|
||||
else if (status == 1)
|
||||
qm.sendNext("We belong to a race called Piyos. You've talked to Shinsoo before, right? The one that stands next to the Empress. Yeah, Shinsoo is a Piyo, too. He may be of a different class, but... oh well. Piyos are only found in Ereve, so you may find us a bit odd at first, but you'll get used to us.");
|
||||
else if (status == 2)
|
||||
qm.sendAcceptDecline("Ah, I don't know if you are aware of this, but you won't find any monsters here in Ereve. Any form of evil will not be able to set foot on this island. Don't worry, you'll still have your opportunity to train here. Shinsoo created a fantasy creature called Mimi, which will be used as your training partners. Shall we begin?");
|
||||
else if (status == 3) {
|
||||
qm.gainExp(60);
|
||||
qm.gainItem(2000020, 10); // Red Potion for Noblesse * 10
|
||||
qm.gainItem(2000021, 10); // Blue Potion for Noblesse * 10
|
||||
qm.gainItem(1002869, 1); // Elegant Noblesse Hat * 1
|
||||
qm.sendOk("Ha, I like your enthusiasm, but you must prepare yourself for the training first before we start things off. Make sure that you are equipped with weapons, and that your skills are calibrated and ready to be used. I also gave you some potions, so have it ready just in case. Let me know when you're ready. You're going to wish that you didn't sign up to become a Cygnus Knight.");
|
||||
qm.forceStartQuest();
|
||||
qm.forceCompleteQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
50
scripts/quest/20008.js
Normal file
50
scripts/quest/20008.js
Normal file
@@ -0,0 +1,50 @@
|
||||
/*
|
||||
This file is part of the OdinMS Maple Story Server
|
||||
Copyright (C) 2008 Patrick Huy <patrick.huy@frz.cc>
|
||||
Matthias Butz <matze@odinms.de>
|
||||
Jan Christian Meyer <vimes@odinms.de>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
published by the Free Software Foundation version 3 as published by
|
||||
the Free Software Foundation. You may not use, modify or distribute
|
||||
this program under any other version of the GNU Affero General Public
|
||||
License.
|
||||
|
||||
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 Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
/*
|
||||
Author : Generic
|
||||
NPC Name: Kiku
|
||||
Map(s): Empress' Road : Training Forest I
|
||||
Description: Quest - The Path of a Knight
|
||||
Quest ID : 20000
|
||||
*/
|
||||
|
||||
var status = -1;
|
||||
var choice1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode < 1) {
|
||||
qm.dispose();
|
||||
}
|
||||
if (mode > 0)
|
||||
status++;
|
||||
if (status == 0)
|
||||
qm.sendSimple("Are you ready to take on a mission? If you can't pass this test, then you won't be able to call yourself a real Knight. Are you sure you can do this? If you are afraid to do this, let me know. I won't tell Neinheart. \r\n #L0#I'll try this later.#l \r\n #L1#I'm not afraid. Let's do this.#l");
|
||||
else if (selection == 0) {
|
||||
qm.sendNext("If you call yourself a Knight, then do not hesitate. Show everyone how much courage you have in you.");
|
||||
qm.dispose();
|
||||
} else if (selection == 1) {
|
||||
choice1 = selection;
|
||||
qm.sendSimple("I'm glad you didn't run away, but... are you sure you want to become a Knight-in-Training? What I am asking is whether you're okay with being a Cygnus Knight, and therefore being tied to the Empress at all times? She may be an Empress, but she's also still just a kid. Are you sure you can fight for her? I won't let Neinheart know so just tell me what you really feel. \r\n #L2#If the Empress wants peace in the Maple World, then I'm down for whatever.#l \r\n #L3#As long as I can become a knight I'll endure whatever #l");
|
||||
qm.forceStartQuest();
|
||||
qm.forceCompleteQuest();
|
||||
}
|
||||
}
|
||||
54
scripts/quest/2001.js
Normal file
54
scripts/quest/2001.js
Normal file
@@ -0,0 +1,54 @@
|
||||
importPackage(Packages.client);
|
||||
|
||||
var item;
|
||||
var stance;
|
||||
var status = -1;
|
||||
var vecItem;
|
||||
|
||||
function end(mode, type, selection) {
|
||||
if(mode == 0) {
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
status++;
|
||||
|
||||
if(status == 0) {
|
||||
qm.sendNext("THIS is the deed to the land that my son lost! And you even brought all the necessary materials to build the house! Thank you so much ... my relatives can all move in and live in #m102000000#! As a sign of appreciation ...");
|
||||
}
|
||||
|
||||
else if(status == 1) {
|
||||
if(qm.getPlayer().getInventory(Packages.client.inventory.MapleInventoryType.USE).getNumFreeSlot() < 1) {
|
||||
qm.getPlayer().dropMessage(1, "USE inventory full.");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
|
||||
var talkStr = "Okay, now choose the scroll of your liking ... The odds of winning are 10% each. \r\n\r\n#rSELECT A ITEM\r\n#b";
|
||||
stance = qm.getPlayer().getJobStyle();
|
||||
|
||||
if(stance == Packages.client.MapleJob.WARRIOR || stance == Packages.client.MapleJob.BEGINNER) vecItem = new Array(2043002, 2043102, 2043202, 2044002, 2044102, 2044202, 2044402, 2044302);
|
||||
else if(stance == Packages.client.MapleJob.MAGICIAN) vecItem = new Array(2043702, 2043802);
|
||||
else if(stance == Packages.client.MapleJob.BOWMAN || stance == Packages.client.MapleJob.CROSSBOWMAN) vecItem = new Array(2044502, 2044602);
|
||||
else if(stance == Packages.client.MapleJob.THIEF) vecItem = new Array(2043302, 2044702);
|
||||
else vecItem = new Array(2044802, 2044902);
|
||||
|
||||
for (var i = 0; i < vecItem.length; i++)
|
||||
talkStr += "\r\n#L" + i + "# #i" + vecItem[i] + "# #t" + vecItem[i] + "#";
|
||||
qm.sendSimple(talkStr);
|
||||
}
|
||||
|
||||
else if(status == 2) {
|
||||
item = vecItem[selection];
|
||||
qm.gainItem(item, 1);
|
||||
qm.gainItem(4000022, -100);
|
||||
qm.gainItem(4003000, -30);
|
||||
qm.gainItem(4003001, -30);
|
||||
qm.gainItem(4001004, -1);
|
||||
qm.gainExp(20000 * qm.getPlayer().getExpRate());
|
||||
qm.gainMeso(15000 * qm.getPlayer().getMesoRate());
|
||||
qm.gainFame(2);
|
||||
qm.completeQuest();
|
||||
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
50
scripts/quest/20010.js
Normal file
50
scripts/quest/20010.js
Normal file
@@ -0,0 +1,50 @@
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
qm.sendNext("Whoa, whoa! Are you really declining my offer? Well, you'll be able to #blevel-up quicker #kwith our help, so let me know if you change your mind. Even if you've declined a Quest, you can receive the Quest again if you just come and talk to me.");
|
||||
qm.dispose();
|
||||
} else {
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
if (status == 0) {
|
||||
qm.sendNext("Welcome to Ereve! And you are? Oh, you're #b#h ##k! \r\nGood to meet you. I've been waiting. You've come to become a Cygnus Knight, right? My name is Kimu, and I'm currently guiding Noblesses like you at the request of Empress Cygnus.");
|
||||
} else if (status == 1) {
|
||||
qm.sendNextPrev("If you want to officially become a part of Cygnus Knights, you must first meet the Empress. She's at the center of this island, accompained by Shinsoo. My brothers and I would like to share with you a few things that are considered #bBasic Knowledge#k in Maple World before you go. Would that be okay?");
|
||||
} else if (status == 2) {
|
||||
qm.sendOk("Oh, let me warn you that this is a Quest. You may have noticed that NPCs around Maple World occasionally ask you for various favors. A favor of that sort is called a #bQuest#k. You will receive reward items or EXP upon completing Quests, so I strongly suggest you diligently fulfill the favors of Maple NPCs.");
|
||||
} else if (status == 3) {
|
||||
qm.sendAcceptDecline("Would you like to meet #bKizan#k, who can tell you about hunting? You can find Kizan by following the arrow to the left.");
|
||||
} else if (status == 4) {
|
||||
qm.forceStartQuest();
|
||||
qm.guideHint(2);
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
status++;
|
||||
if (mode != 1) {
|
||||
qm.dispose();
|
||||
} else {
|
||||
if (status == 0) {
|
||||
qm.sendNext("Are you the Noblesse my brother Kimu sent? Nice to meet you! I'm Kizan. I'll give you the reward Kimu asked me to give you. Remember, you can check your Inventory by pressing the #bI key#k. Red potions help you recover HP, and blue ones help recover MP. It's a good idea to learn how to use them beforehand so you'll be ready with them when you're in danger. \r\n\r\n#fUI/UIWindow.img/Quest/reward# \r\n\r\n#v2000020# #z2000020# \r\n#v2000021# #z2000021# \r\n\r\n#fUI/UIWindow.img/QuestIcon/8/0#15 exp");
|
||||
} else if (status == 1) {
|
||||
if(qm.canHold(2000022) && qm.canHold(2000023)){
|
||||
if(!qm.isQuestCompleted(21010)) {
|
||||
qm.gainItem(2000020, 5);
|
||||
qm.gainItem(2000021, 5);
|
||||
qm.gainExp(15);
|
||||
}
|
||||
qm.guideHint(3);
|
||||
qm.forceCompleteQuest();
|
||||
} else
|
||||
qm.dropMessage(1, "Your inventory is full");
|
||||
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
50
scripts/quest/20011.js
Normal file
50
scripts/quest/20011.js
Normal file
@@ -0,0 +1,50 @@
|
||||
/*
|
||||
NPC Name: Kisan
|
||||
Description: Quest - Cygnus tutorial helper
|
||||
*/
|
||||
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == 1) {
|
||||
status++;
|
||||
} else {
|
||||
if (status == 2) {
|
||||
qm.sendNext("You don't want to? It's not even that hard, and you'll receive special equipment as a reward! Well, give it some thought and let me know if you change your mind.");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
status--;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendNext("There are a number of ways to hunt, but the most basic way is with your #bRegular Attack#k. All you need is a weapon in your hand, since it's a simple matter of just swinging your weapon at monsters.");
|
||||
} else if (status == 1) {
|
||||
qm.sendNextPrev("Press the #bC#k to use your Regular Attack. Usually the C is located #bat the bottom left of the keyboard#k, but you don't need me to tell you that, right? Find the C and try it out!");
|
||||
} else if (status == 2) {
|
||||
qm.sendAcceptDecline("Now that you've tried it, we've got to test it out. In this area, you can find the weakest #r#o100120##ks in Ereve, which is perfect for you. Try hunting #r1#k. I'll give you a reward when you get back.");
|
||||
} else if (status == 3) {
|
||||
qm.forceStartQuest();
|
||||
qm.guideHint(4);
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
if (mode == 1) {
|
||||
status++;
|
||||
} else {
|
||||
status--;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendNext("Ah, it seems like you've successfully hunted a #o100120#. Pretty simple, right? Regular Attacks may be easy to use, but they are pretty weak. Don't worry, though. #p1102006# will teach you how to use more powerful skills. Wait, let me give you a well-deserved quest reward before you go.");
|
||||
} else if (status == 1) {
|
||||
qm.sendNextPrev("This equipment is for Noblesses. It's much cooler than what you're wearing right now, isn''t it? Follow the arrows to your left to meet my younger brother #b#p1102006##k. How about you change into your new Noblesse outfit before you go? \r\n\r\n#fUI/UIWindow.img/QuestIcon/4/0# \r\n#i1002869# #t1002869# - 1 \r\n#i1052177# #t1052177# - 1 \r\n\r\n#fUI/UIWindow.img/QuestIcon/8/0# 30 exp");
|
||||
} else if (status == 2) {
|
||||
qm.gainItem(1002869, 1);
|
||||
qm.gainItem(1052177, 1);
|
||||
qm.forceCompleteQuest();
|
||||
qm.gainExp(30);
|
||||
qm.guideHint(6);
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
46
scripts/quest/20012.js
Normal file
46
scripts/quest/20012.js
Normal file
@@ -0,0 +1,46 @@
|
||||
/*
|
||||
NPC Name: Kinu
|
||||
Description: Quest - Cygnus tutorial helper
|
||||
*/
|
||||
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == 1) {
|
||||
status++;
|
||||
} else {
|
||||
if (status == 2) {
|
||||
qm.sendNext("Regular Attacks are basic skills that are easy to use. It is important to remember that real hunting is done using your Skills. I suggest you reconsider.");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
status--;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendNext("I've been waiting for you, #h0#. My name is #p1102006# and I'm the third brother you are going to meet. So, you've learned about using Regular Attacks, correct? Well, next you'll be learning about your #bSkills#k, which you will find very helpful in Maple World.");
|
||||
} else if (status == 1) {
|
||||
qm.sendNextPrev("You earn Skill Points every time you level up, which means you probably have a few saved up already. Press the #bK key#k to see your skills. Invest your Skill Points in the skill you wish to strengthen and don't forget to #bplace the skill in a Quick Slot for easy use#k.");
|
||||
} else if (status == 2) {
|
||||
qm.sendAcceptDecline("Time to practice before you forget. You will find a lot of #o100121#s in this area. Why don't you hunt #r3 #o100121#s#k using your #bThree Snails#b skill and bring me 1 #b#t4000483##k as proof? I'll wait for you here.");
|
||||
} else if (status == 3) {
|
||||
qm.forceStartQuest();
|
||||
qm.guideHint(8);
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
if (mode == 1) {
|
||||
status++;
|
||||
} else {
|
||||
status--;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendNext("You've successfully defeated the #o100121#s and brought me a #t4000483#. That's very impressive! #bYou earn 3 Skill Points every time you level up, after you officially become a knight, that is. Keep following the arrow to the left, and you''ll meet #b#p1102007##k, who will guide you through the next step.\r\n\r\n#fUI/UIWindow.img/QuestIcon/4/0# \r\n#fUI/UIWindow.img/QuestIcon/8/0# 40 exp");
|
||||
} else if (status == 1) {
|
||||
qm.gainItem(4000483, -1);
|
||||
qm.forceCompleteQuest();
|
||||
qm.gainExp(40);
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
59
scripts/quest/20013.js
Normal file
59
scripts/quest/20013.js
Normal file
@@ -0,0 +1,59 @@
|
||||
/*
|
||||
NPC Name: Kia
|
||||
Description: Quest - Cygnus tutorial helper
|
||||
*/
|
||||
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == 1) {
|
||||
status++;
|
||||
} else {
|
||||
if (status == 2) {
|
||||
qm.sendNext("Hmm, was that too much to ask? Is it because you don''t know how to break Boxes? I'll tell you how if you accept my Quest. Let me know if you change your mind.");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
status--;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendNext("#b(*clang clang*)#k");
|
||||
} else if (status == 1) {
|
||||
qm.sendNextPrev("Whoa! Hey! You scared me. I didn't know I had a visitor. You must be the Noblesse #p1102006# was talking about. Welcome! I''m #p1102007#, and my hobby is making #bChairs#k. I'm thinking about making you one as a welcome present.");
|
||||
} else if (status == 2) {
|
||||
qm.sendNextPrev("But wait, I can't make you one because I don''t have enough materials. Could you find me the materials I need? Around this area, you will find a lot of Boxes with items inside. Could you bring me back a #t4032267# and a #t4032268# found inside those Boxes?");
|
||||
} else if (status == 3) {
|
||||
qm.sendNextPrev("Do you know how to get items from boxes? All you have to do is break the Boxes like you're attacking a monster. The difference is that you can attack monsters using your Skills, but you can #bonly use Regular Attacks to break Boxes#k.");
|
||||
} else if (status == 4) {
|
||||
qm.sendAcceptDecline("Please bring me 1 #b#t4032267##k and 1 #b#t4032268##k found inside those Boxes. I'll make you an awesome Chair as soon as I have what I need. I'll wait here!");
|
||||
} else if (status == 5) {
|
||||
qm.forceStartQuest();
|
||||
qm.guideHint(9);
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
if (mode == 1) {
|
||||
status++;
|
||||
} else {
|
||||
status--;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendNext("Did you bring me a Building Stone and a Drape? Let's see. Ah, these are just what I need! They indeed are a #t4032267# and a #t4032268#! I'll make you a Chair right away.");
|
||||
} else if (status == 1) {
|
||||
qm.sendNextPrev("Here it is, a #t3010060#. What do you think? Nifty, huh? You can #bquickly recover your HP by sitting in this Chair#k. It will be stored in the #bSet-up#k window in your Inventory, so confirm that you've received the chair and head over to #b#p1102008##k. You'll see him if you keep following the arrow to the left. \r\n\r\n#fUI/UIWindow.img/QuestIcon/4/0# \r\n#i3010060# 1 #t3010060# \r\n#fUI/UIWindow.img/QuestIcon/8/0# 95 exp");
|
||||
} else if (status == 2) {
|
||||
qm.gainItem(4032267, -1);
|
||||
qm.gainItem(4032268, -1);
|
||||
qm.gainItem(3010060, 1);
|
||||
qm.forceCompleteQuest();
|
||||
qm.forceCompleteQuest(20000);
|
||||
qm.forceCompleteQuest(20001);
|
||||
qm.forceCompleteQuest(20002);
|
||||
qm.forceCompleteQuest(20015);
|
||||
qm.gainExp(95);
|
||||
qm.guideHint(10);
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
55
scripts/quest/20016.js
Normal file
55
scripts/quest/20016.js
Normal file
@@ -0,0 +1,55 @@
|
||||
/*
|
||||
NPC Name: Nineheart
|
||||
Description: Quest - Do you know the black Magician?
|
||||
*/
|
||||
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == 1) {
|
||||
status++;
|
||||
} else {
|
||||
if (status == 8) {
|
||||
qm.sendNext("Oh, do you still have some questions? Talk to me again and I'll explain it to you from the very beginning.");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
status--;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendNext("Hello, #h0#. Welcome to #p1101000# Knights. My name is #p1101002# and I am currently serving as the young Empress's Tactician. We'd better get acquainted since we'll be seeing a lot of each other. Haha!");
|
||||
} else if (status == 1) {
|
||||
qm.sendNextPrev("I'm sure you have a lot of questions since everything happened so quickly. I'll explain it all, one by one, from where you are to what you're here to do.");
|
||||
} else if (status == 2) {
|
||||
qm.sendNextPrev("This island is called Ereve. Thanks to the Empress's magic, this island usually floats around like a boat in the sky and patrols around Maple World. Right now, however, we've stopped here for a reason.");
|
||||
} else if (status == 3) {
|
||||
qm.sendNextPrev("The young Empress is the ruler of Maple World. What? This is the first time you've heard of her? Ah, yes. Well, she's the ruler of Maple World but she doesn't like to control it. She watches from afar to make sure that all is well. Well, at least that's her usual role.");
|
||||
} else if (status == 4) {
|
||||
qm.sendNextPrev("But that's not the case right now. We've been finding signs all over Maple World that foreshadow the revival of the Black Mage. We can't have the Black Mage come back to terrorize Maple World as he has in the past!");
|
||||
} else if (status == 5) {
|
||||
qm.sendNextPrev("But that was ages ago and people today don't realize how scary the Black Mage is. We've all become spoiled by the peaceful Maple World we enjoy today and forgotten how chaotic and frightening Maple World once was. If we don't do something, the Black Mage will once again rule Maple World!");
|
||||
} else if (status == 6) {
|
||||
qm.sendNextPrev("This is why the young Empress has decided to take matters into her own hands. She's forming a knighthood of brave Maplers to defeat the Black Mage once and for all. You know what you need to do, right? I''m sure you have an idea since you, yourself, signed up to be a Knight.");
|
||||
} else if (status == 7) {
|
||||
qm.sendNextPrev("We have to get stronger so we can defeat the Black Mage if he revives. Our primary goal is to prevent him from destroying Maple World, and you will play a prominent role in that.");
|
||||
} else if (status == 8) {
|
||||
qm.sendAcceptDecline("That concludes my explanation. Have I answered all your questions? \r\n\r\n#fUI/UIWindow.img/QuestIcon/4/0# \r\n#fUI/UIWindow.img/QuestIcon/8/0# 380 exp");
|
||||
} else if (status == 9) {
|
||||
if (!qm.isQuestStarted(20016)) {
|
||||
qm.forceStartQuest();
|
||||
qm.gainExp(380);
|
||||
}
|
||||
qm.sendNext("I'm glad you're clear about our current situation, but you know, at your current level, you're not even strong enough to face the Black Mage's minions, let alone the Black Mage himself. Not even his minions' minions, as a matter of fact. How will you protect Maple World at your current level?");
|
||||
} else if (status == 10) {
|
||||
qm.sendNextPrev("Although you've been accepted into the knighthood, you cannot be recognized as a knight yet. You are not an Official Knight because you're not even a Knight-in-Training. If you remain at your current level, you'll be nothing more than the handyman of #p1101000# Knights.");
|
||||
} else if (status == 11) {
|
||||
qm.sendNextPrev("But no one starts as a strong Knight on day one. The Empress didn''t want someone strong. She wanted someone with courage whom she could develop into a strong Knight through rigorous training. So, you should first become a Knight-in-Training. We'll talk about your missions when you get to that point.");
|
||||
} else if (status == 12) {
|
||||
qm.sendPrev("Take the portal on the left to reach the Training Forest. There, you will find #p1102000#, the Training Instructor, who will teach you how to become stronger. I don''t want to find you wandering around aimlessly until you reach Lv. 10, you hear?");
|
||||
qm.forceCompleteQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
}
|
||||
37
scripts/quest/20017.js
Normal file
37
scripts/quest/20017.js
Normal file
@@ -0,0 +1,37 @@
|
||||
/*
|
||||
NPC Name: Cygnus
|
||||
Description: Quest - Encounter with the Young Queen
|
||||
*/
|
||||
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == 1) {
|
||||
status++;
|
||||
} else {
|
||||
if (status == 2) {
|
||||
qm.sendNext("Hmm, there is nothing to worry about. This will be a breeze for someone your level. Muster your courage and let me know when you're ready.");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
status--;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendNext("Hmm? #p1101002# sent you, huh? You must be the newbie that recently joined Cygnus Knights. Welcome, and nice to meet you! My name is #p1102000#. I''m the Training Instructor who trains all Noblesses like yourself. Of course, I'm not a human as you can tell.");
|
||||
} else if (status == 1) {
|
||||
qm.sendNextPrev("We are called Piyos. You''ve seen #p1101001# who is at the Empress''s side all the time, haven't you? Piyos are of the same family as #p1101001#, but we belong to different types. Of course, you haven't seen any of us since we only live in Ereve. You'll get used to Piyos in no time.");
|
||||
} else if (status == 2) {
|
||||
qm.sendNextPrev("Oh, and did you know that there are no monsters in Ereve? Not even a smidgeon of evil dare enter Ereve. But don't you worry. You'll be able to train with illusory monsters created by #p1101001# called Mimis.");
|
||||
} else if (status == 3) {
|
||||
qm.sendAcceptDecline("You seem prepared! Looking at what you've accomplished, I think you should jump right into hunting more advanced Mimis. How about you hunt #b15 #r#o100122#s in #m130010100##k#k? Use the portal on the left to reach the #bTraining Forest II#k.");
|
||||
} else if (status == 4) {
|
||||
qm.guideHint(12);
|
||||
qm.forceStartQuest(20020);
|
||||
qm.forceCompleteQuest(20100);
|
||||
qm.forceStartQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
}
|
||||
47
scripts/quest/20100.js
Normal file
47
scripts/quest/20100.js
Normal file
@@ -0,0 +1,47 @@
|
||||
/*
|
||||
This file is part of the OdinMS Maple Story Server
|
||||
Copyright (C) 2008 Patrick Huy <patrick.huy@frz.cc>
|
||||
Matthias Butz <matze@odinms.de>
|
||||
Jan Christian Meyer <vimes@odinms.de>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
published by the Free Software Foundation version 3 as published by
|
||||
the Free Software Foundation. You may not use, modify or distribute
|
||||
this program under any other version of the GNU Affero General Public
|
||||
License.
|
||||
|
||||
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 Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
/*
|
||||
Author : Traitor
|
||||
NPC Name: Neinheart
|
||||
Map(s): Ereve
|
||||
Description: Quest - Time to Choose
|
||||
Quest ID : 20100
|
||||
*/
|
||||
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode > 0)
|
||||
status++;
|
||||
else {
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
if (status == 0)
|
||||
qm.sendAcceptDecline("Ahhh, you're back. I can see that you're at level 10 now. It looks like you're flashing a glimmer of hope towards becoming a Knight. The basic training has now ended, and it's time for you to make the decision.");
|
||||
else if (status == 1) {
|
||||
qm.sendOk("Now look to the left. The leaders of the Knights will be waiting for you. There will be 5 paths for you to choose from. All you need to do is choose one of them. All 5 of them will lead you to the path of a Knight, so... I suggest you pay attention to what each path offers, and select the one you'd most like to take.");
|
||||
qm.forceStartQuest();
|
||||
qm.forceCompleteQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
41
scripts/quest/20101.js
Normal file
41
scripts/quest/20101.js
Normal file
@@ -0,0 +1,41 @@
|
||||
/*
|
||||
* Cygnus 1st Job advancement - Soul
|
||||
*/
|
||||
|
||||
importPackage(Packages.client);
|
||||
|
||||
var status = -1;
|
||||
|
||||
function end(mode, type, selection) {
|
||||
if (mode == 0) {
|
||||
if (status == 0) {
|
||||
qm.sendNext("This is an important decision to make.");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
status--;
|
||||
} else {
|
||||
status++;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendYesNo("Have you made your decision? The decision will be final, so think carefully before deciding what to do. Are you sure you want to become a Soul Master?");
|
||||
} else if (status == 1) {
|
||||
qm.sendNext("I have just molded your body to make it perfect for a Soul Master. If you wish to become more powerful, use Stat Window (S) to raise the appropriate stats. If you arn't sure what to raise, just click on #bAuto#k.");
|
||||
if (qm.getPlayer().getJob().getId() != 1100) {
|
||||
qm.gainItem(1302077, 1);
|
||||
qm.gainItem(1142066, 1);
|
||||
qm.changeJob(MapleJob.DAWNWARRIOR1);
|
||||
qm.getPlayer().resetStats();
|
||||
}
|
||||
qm.forceCompleteQuest();
|
||||
} else if (status == 2) {
|
||||
qm.sendNextPrev("I have also expanded your inventory slot counts for your equipment and etc. inventory. Use those slots wisely and fill them up with items required for Knights to carry.");
|
||||
} else if (status == 3) {
|
||||
qm.sendNextPrev("I have also given you a hint of #bSP#k, so open the #bSkill Menu#k to acquire new skills. Of course, you can't raise them at all once, and there are some skills out there where you won't be able to acquire them unless you master the basic skills first.");
|
||||
} else if (status == 4) {
|
||||
qm.sendNextPrev("Unlike your time as a Nobless, once you become the Soul Master, you will lost a portion of your EXP when you run out of HP, okay?");
|
||||
} else if (status == 5) {
|
||||
qm.sendNextPrev("Now... I want you to go out there and show the world how the Knights of Cygnus operate.");
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
41
scripts/quest/20102.js
Normal file
41
scripts/quest/20102.js
Normal file
@@ -0,0 +1,41 @@
|
||||
/*
|
||||
* Cygnus 1st Job advancement - Flame Wizard
|
||||
*/
|
||||
|
||||
importPackage(Packages.client);
|
||||
|
||||
var status = -1;
|
||||
|
||||
function end(mode, type, selection) {
|
||||
if (mode == 0) {
|
||||
if (status == 0) {
|
||||
qm.sendNext("This is an important decision to make.");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
status--;
|
||||
} else {
|
||||
status++;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendYesNo("Have you made your decision? The decision will be final, so think carefully before deciding what to do. Are you sure you want to become a Flame Wizard?");
|
||||
} else if (status == 1) {
|
||||
qm.sendNext("I have just molded your body to make it perfect for a Soul Master. If you wish to become more powerful, use Stat Window (S) to raise the appropriate stats. If you arn't sure what to raise, just click on #bAuto#k.");
|
||||
if (qm.getPlayer().getJob().getId() != 1200) {
|
||||
qm.gainItem(1372043, 1);
|
||||
qm.gainItem(1142066, 1);
|
||||
qm.changeJob(MapleJob.BLAZEWIZARD1);
|
||||
qm.getPlayer().resetStats();
|
||||
}
|
||||
qm.forceCompleteQuest();
|
||||
} else if (status == 2) {
|
||||
qm.sendNextPrev("I have also expanded your inventory slot counts for your equipment and etc. inventory. Use those slots wisely and fill them up with items required for Knights to carry.");
|
||||
} else if (status == 3) {
|
||||
qm.sendNextPrev("I have also given you a hint of #bSP#k, so open the #bSkill Menu#k to acquire new skills. Of course, you can't raise them at all once, and there are some skills out there where you won't be able to acquire them unless you master the basic skills first.");
|
||||
} else if (status == 4) {
|
||||
qm.sendNextPrev("Unlike your time as a Nobless, once you become the Soul Master, you will lost a portion of your EXP when you run out of HP, okay?");
|
||||
} else if (status == 5) {
|
||||
qm.sendNextPrev("Now... I want you to go out there and show the world how the Knights of Cygnus operate.");
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
41
scripts/quest/20103.js
Normal file
41
scripts/quest/20103.js
Normal file
@@ -0,0 +1,41 @@
|
||||
/*
|
||||
* Cygnus 1st Job advancement - Wind Breaker
|
||||
*/
|
||||
importPackage(Packages.client);
|
||||
|
||||
var status = -1;
|
||||
|
||||
function end(mode, type, selection) {
|
||||
if (mode == 0) {
|
||||
if (status == 0) {
|
||||
qm.sendNext("This is an important decision to make.");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
status--;
|
||||
} else {
|
||||
status++;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendYesNo("Have you made your decision? The decision will be final, so think carefully before deciding what to do. Are you sure you want to become a Wind Breaker?");
|
||||
} else if (status == 1) {
|
||||
qm.sendNext("I have just molded your body to make it perfect for a Soul Master. If you wish to become more powerful, use Stat Window (S) to raise the appropriate stats. If you arn't sure what to raise, just click on #bAuto#k.");
|
||||
if (qm.getPlayer().getJob().getId() != 1300) {
|
||||
qm.gainItem(2060000, 2000);
|
||||
qm.gainItem(1452051, 1);
|
||||
qm.gainItem(1142066, 1);
|
||||
qm.changeJob(MapleJob.WINDARCHER1);
|
||||
qm.getPlayer().resetStats();
|
||||
}
|
||||
qm.forceCompleteQuest();
|
||||
} else if (status == 2) {
|
||||
qm.sendNextPrev("I have also expanded your inventory slot counts for your equipment and etc. inventory. Use those slots wisely and fill them up with items required for Knights to carry.");
|
||||
} else if (status == 3) {
|
||||
qm.sendNextPrev("I have also given you a hint of #bSP#k, so open the #bSkill Menu#k to acquire new skills. Of course, you can't raise them at all once, and there are some skills out there where you won't be able to acquire them unless you master the basic skills first.");
|
||||
} else if (status == 4) {
|
||||
qm.sendNextPrev("Unlike your time as a Nobless, once you become the Soul Master, you will lost a portion of your EXP when you run out of HP, okay?");
|
||||
} else if (status == 5) {
|
||||
qm.sendNextPrev("Now... I want you to go out there and show the world how the Knights of Cygnus operate.");
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
42
scripts/quest/20104.js
Normal file
42
scripts/quest/20104.js
Normal file
@@ -0,0 +1,42 @@
|
||||
/*
|
||||
* Cygnus 1st Job advancement - Night Walker
|
||||
*/
|
||||
importPackage(Packages.client);
|
||||
|
||||
var status = -1;
|
||||
|
||||
function end(mode, type, selection) {
|
||||
if (mode == 0) {
|
||||
if (status == 0) {
|
||||
qm.sendNext("This is an important decision to make.");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
status--;
|
||||
} else {
|
||||
status++;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendYesNo("Have you made your decision? The decision will be final, so think carefully before deciding what to do. Are you sure you want to become a Night Walker?");
|
||||
} else if (status == 1) {
|
||||
qm.sendNext("I have just molded your body to make it perfect for a Soul Master. If you wish to become more powerful, use Stat Window (S) to raise the appropriate stats. If you arn't sure what to raise, just click on #bAuto#k.");
|
||||
if (qm.getPlayer().getJob().getId() != 1400) {
|
||||
qm.gainItem(1472061, 1);
|
||||
qm.gainItem(2070015, 800);
|
||||
qm.gainItem(2070015, 800);
|
||||
qm.gainItem(1142066, 1);
|
||||
qm.changeJob(MapleJob.NIGHTWALKER1);
|
||||
qm.getPlayer().resetStats();
|
||||
}
|
||||
qm.forceCompleteQuest();
|
||||
} else if (status == 2) {
|
||||
qm.sendNextPrev("I have also expanded your inventory slot counts for your equipment and etc. inventory. Use those slots wisely and fill them up with items required for Knights to carry.");
|
||||
} else if (status == 3) {
|
||||
qm.sendNextPrev("I have also given you a hint of #bSP#k, so open the #bSkill Menu#k to acquire new skills. Of course, you can't raise them at all once, and there are some skills out there where you won't be able to acquire them unless you master the basic skills first.");
|
||||
} else if (status == 4) {
|
||||
qm.sendNextPrev("Unlike your time as a Nobless, once you become the Soul Master, you will lost a portion of your EXP when you run out of HP, okay?");
|
||||
} else if (status == 5) {
|
||||
qm.sendNextPrev("Now... I want you to go out there and show the world how the Knights of Cygnus operate.");
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
41
scripts/quest/20105.js
Normal file
41
scripts/quest/20105.js
Normal file
@@ -0,0 +1,41 @@
|
||||
/*
|
||||
* Cygnus 1st Job advancement - Striker
|
||||
*/
|
||||
importPackage(Packages.client);
|
||||
|
||||
|
||||
var status = -1;
|
||||
|
||||
function end(mode, type, selection) {
|
||||
if (mode == 0) {
|
||||
if (status == 0) {
|
||||
qm.sendNext("This is an important decision to make.");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
status--;
|
||||
} else {
|
||||
status++;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendYesNo("Have you made your decision? The decision will be final, so think carefully before deciding what to do. Are you sure you want to become a Striker?");
|
||||
} else if (status == 1) {
|
||||
qm.sendNext("I have just molded your body to make it perfect for a Soul Master. If you wish to become more powerful, use Stat Window (S) to raise the appropriate stats. If you arn't sure what to raise, just click on #bAuto#k.");
|
||||
if (qm.getplayer().getJob().getId() != 1500) {
|
||||
qm.gainItem(1482014, 1);
|
||||
qm.gainItem(1142066, 1);
|
||||
qm.getplayer().changeJob(MapleJob.THUNDERBREAKER1);
|
||||
qm.getPlayer().resetStats();
|
||||
}
|
||||
qm.forceCompleteQuest();
|
||||
} else if (status == 2) {
|
||||
qm.sendNextPrev("I have also expanded your inventory slot counts for your equipment and etc. inventory. Use those slots wisely and fill them up with items required for Knights to carry.");
|
||||
} else if (status == 3) {
|
||||
qm.sendNextPrev("I have also given you a hint of #bSP#k, so open the #bSkill Menu#k to acquire new skills. Of course, you can't raise them at all once, and there are some skills out there where you won't be able to acquire them unless you master the basic skills first.");
|
||||
} else if (status == 4) {
|
||||
qm.sendNextPrev("Unlike your time as a Nobless, once you become the Soul Master, you will lost a portion of your EXP when you run out of HP, okay?");
|
||||
} else if (status == 5) {
|
||||
qm.sendNextPrev("Now... I want you to go out there and show the world how the Knights of Cygnus operate.");
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
33
scripts/quest/2017.js
Normal file
33
scripts/quest/2017.js
Normal file
@@ -0,0 +1,33 @@
|
||||
/*
|
||||
This file is part of the OdinMS Maple Story Server
|
||||
Copyright (C) 2008 Patrick Huy <patrick.huy@frz.cc>
|
||||
Matthias Butz <matze@odinms.de>
|
||||
Jan Christian Meyer <vimes@odinms.de>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
published by the Free Software Foundation version 3 as published by
|
||||
the Free Software Foundation. You may not use, modify or distribute
|
||||
this program under any other version of the GNU Affero General Public
|
||||
License.
|
||||
|
||||
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 Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
/*
|
||||
Author : Blue
|
||||
NPC Name: Arwen
|
||||
Map(s): Ellinia
|
||||
Description: Quest - Arwen and the Glass Shoe
|
||||
Quest ID: 2017
|
||||
*/
|
||||
|
||||
function start(mode, type, selection) {
|
||||
|
||||
qm.forceCompleteQuest();
|
||||
}
|
||||
51
scripts/quest/20200.js
Normal file
51
scripts/quest/20200.js
Normal file
@@ -0,0 +1,51 @@
|
||||
/*
|
||||
This file is part of the OdinMS Maple Story Server
|
||||
Copyright (C) 2008 Patrick Huy <patrick.huy@frz.cc>
|
||||
Matthias Butz <matze@odinms.de>
|
||||
Jan Christian Meyer <vimes@odinms.de>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
published by the Free Software Foundation version 3 as published by
|
||||
the Free Software Foundation. You may not use, modify or distribute
|
||||
this program under any other version of the GNU Affero General Public
|
||||
License.
|
||||
|
||||
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 Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
/* Author: Xterminator
|
||||
NPC Name: Neinheart
|
||||
Map(s): Empress' Road : Ereve (130000000)
|
||||
Description: Quest - The End of Knight-in-Training
|
||||
*/
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
qm.dispose();
|
||||
} else {
|
||||
if (status == 0 && mode == 0) {
|
||||
qm.sendNext("Hmmm... do you feel like you still have missions to take care of as a trainee? I commend your level of patience, but this has gone too far. Cygnus Knights is in dire need of new, more powerful knights.");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
if (status == 0) {
|
||||
qm.sendAcceptDecline("#h0#? Wow, your level has sky-rocketed since the last time I saw you. You also look like you've taken care of a number of missions as well... You seem much more ready to move on now than the last time I saw you. What do you think? Are you interested in taking the #bKnighthood Exam#k? It's time for you to grow out of the Knight-in-Training and become a bonafide Knight, right?");
|
||||
} else if (status == 1) {
|
||||
qm.startQuest();
|
||||
qm.completeQuest();
|
||||
qm.sendOk("If you wish to take the Knighthood Exam, please come to Ereve. Each Chief Knight will test your abilities, and if you meet their standards, then you will officially become a Knight.");
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
70
scripts/quest/20201.js
Normal file
70
scripts/quest/20201.js
Normal file
@@ -0,0 +1,70 @@
|
||||
/*
|
||||
This file is part of the OdinMS Maple Story Server
|
||||
Copyright (C) 2008 Patrick Huy <patrick.huy@frz.cc>
|
||||
Matthias Butz <matze@odinms.de>
|
||||
Jan Christian Meyer <vimes@odinms.de>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
published by the Free Software Foundation version 3 as published by
|
||||
the Free Software Foundation. You may not use, modify or distribute
|
||||
this program under any other version of the GNU Affero General Public
|
||||
License.
|
||||
|
||||
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 Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
/* Author: Xterminator
|
||||
NPC Name: Mihile
|
||||
Map(s): Empress' Road : Ereve (130000000)
|
||||
Description: Quest - Knighthood Exam: Dawn Warrior
|
||||
*/
|
||||
var status = -1;
|
||||
|
||||
function end(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
qm.dispose();
|
||||
} else {
|
||||
if (status == 0 && mode == 0) {
|
||||
qm.sendNext("I guess you are not ready to tackle on the responsibilities of an official knight.");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
if (status == 0) {
|
||||
qm.sendYesNo("So you brought all of #t4032096#... Okay, I believe that your are now qualified to become an official knight. Do you want to become one?");
|
||||
} else if (status == 1) {
|
||||
if (qm.getPlayer().getJob().getId() == 1100 && qm.getPlayer().getRemainingSp() > ((qm.getPlayer().getLevel() - 30) * 3)) {
|
||||
qm.sendNext("You have too much #bSP#k with you. Use some more on the 1st-level skill.");
|
||||
qm.dispose();
|
||||
} else {
|
||||
if (qm.getPlayer().getJob().getId() != 1110) {
|
||||
if (!qm.canHold(1142067)) {
|
||||
qm.sendNext("If you wish to receive the medal befitting the title, you may want to make some room in your equipment inventory.");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
qm.gainItem(4032096, -30);
|
||||
qm.gainItem(1142067, 1);
|
||||
qm.getPlayer().changeJob(Packages.client.MapleJob.DAWNWARRIOR2);
|
||||
qm.completeQuest();
|
||||
}
|
||||
qm.sendNext("You are a Knight-in-Training no more. You are now an official knight of the Cygnus Knights.");
|
||||
}
|
||||
} else if (status == 2) {
|
||||
qm.sendNextPrev("I have given you some #bSP#k. I have also given you a number of skills for a Dawn Warrior that's only available to knights, so I want you to work on it and hopefully cultivate it as much as your soul.");
|
||||
} else if (status == 3) {
|
||||
qm.sendPrev("Now that you are officially a Cygnus Knight, act like one so you will keep the Empress's name up high.");
|
||||
} else if (status == 4) {
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
70
scripts/quest/20202.js
Normal file
70
scripts/quest/20202.js
Normal file
@@ -0,0 +1,70 @@
|
||||
/*
|
||||
This file is part of the OdinMS Maple Story Server
|
||||
Copyright (C) 2008 Patrick Huy <patrick.huy@frz.cc>
|
||||
Matthias Butz <matze@odinms.de>
|
||||
Jan Christian Meyer <vimes@odinms.de>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
published by the Free Software Foundation version 3 as published by
|
||||
the Free Software Foundation. You may not use, modify or distribute
|
||||
this program under any other version of the GNU Affero General Public
|
||||
License.
|
||||
|
||||
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 Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
/* Author: Xterminator
|
||||
NPC Name: Oz
|
||||
Map(s): Empress' Road : Ereve (130000000)
|
||||
Description: Quest - Knighthood Exam: Blaze Wizard
|
||||
*/
|
||||
var status = -1;
|
||||
|
||||
function end(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
qm.dispose();
|
||||
} else {
|
||||
if (status == 0 && mode == 0) {
|
||||
qm.sendNext("Eh? Why? Is there something wrong?");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
if (status == 0) {
|
||||
qm.sendYesNo("You managed to bring all of #t4032097#!!! Okay, I believe that your are now qualified to become an official knight! Do you want to become one?");
|
||||
} else if (status == 1) {
|
||||
if (qm.getPlayer().getJob().getId() == 1200 && qm.getPlayer().getRemainingSp() > ((qm.getPlayer().getLevel() - 30) * 3)) {
|
||||
qm.sendNext("Wa, wait... you have way too much #bSP#k with you. You'll need to spend more SP on 1st-level skills to become an official knight.");
|
||||
qm.dispose();
|
||||
} else {
|
||||
if (qm.getPlayer().getJob().getId() != 1210) {
|
||||
if (!qm.canHold(1142067)) {
|
||||
qm.sendNext("If you wish to receive the medal befitting the title, you may want to make some room in your equipment inventory.");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
qm.gainItem(4032097, -30);
|
||||
qm.gainItem(1142067, 1);
|
||||
qm.getPlayer().changeJob(Packages.client.MapleJob.BLAZEWIZARD2);
|
||||
qm.completeQuest();
|
||||
}
|
||||
qm.sendNext("You are no longer a Knight-in-Training. You are now an official Cygnus Knight!");
|
||||
}
|
||||
} else if (status == 2) {
|
||||
qm.sendNextPrev("I have given you some #bSP#k. I have also given you some skills of Blaze Wizards that are only available to official knights, so keep working!");
|
||||
} else if (status == 3) {
|
||||
qm.sendPrev("Now that you have officially become one, I want you to keep that fire in you that you had when you first started this journey, but this time, as a proud member of the Cygnus Knights!");
|
||||
} else if (status == 4) {
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
70
scripts/quest/20203.js
Normal file
70
scripts/quest/20203.js
Normal file
@@ -0,0 +1,70 @@
|
||||
/*
|
||||
This file is part of the OdinMS Maple Story Server
|
||||
Copyright (C) 2008 Patrick Huy <patrick.huy@frz.cc>
|
||||
Matthias Butz <matze@odinms.de>
|
||||
Jan Christian Meyer <vimes@odinms.de>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
published by the Free Software Foundation version 3 as published by
|
||||
the Free Software Foundation. You may not use, modify or distribute
|
||||
this program under any other version of the GNU Affero General Public
|
||||
License.
|
||||
|
||||
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 Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
/* Author: Xterminator
|
||||
NPC Name: Irena
|
||||
Map(s): Empress' Road : Ereve (130000000)
|
||||
Description: Quest - Knighthood Exam: Wind Archer
|
||||
*/
|
||||
var status = -1;
|
||||
|
||||
function end(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
qm.dispose();
|
||||
} else {
|
||||
if (status == 0 && mode == 0) {
|
||||
qm.sendNext("Is there actually a reason why you should stay as a Knight-in-Training?");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
if (status == 0) {
|
||||
qm.sendYesNo("#t4032098#... I checked them all. I can tell you are now ready to make the leap as an official knight. Do you want to become one?");
|
||||
} else if (status == 1) {
|
||||
if (qm.getPlayer().getJob().getId() == 1300 && qm.getPlayer().getRemainingSp() > ((qm.getPlayer().getLevel() - 30) * 3)) {
|
||||
qm.sendNext("You have way too much #bSP#k with you. You'll need to spend more SP on 1st-level skills to become an official knight.");
|
||||
qm.dispose();
|
||||
} else {
|
||||
if (qm.getPlayer().getJob().getId() != 1310) {
|
||||
if (!qm.canHold(1142067)) {
|
||||
qm.sendNext("If you wish to receive the medal befitting the title, you may want to make some room in your equipment inventory.");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
qm.gainItem(4032098, -30);
|
||||
qm.gainItem(1142067, 1);
|
||||
qm.getPlayer().changeJob(Packages.client.MapleJob.WINDARCHER2);
|
||||
qm.completeQuest();
|
||||
}
|
||||
qm.sendNext("You are no longer a Knight-in-Training. You are now officially a Cygnus Knight.");
|
||||
}
|
||||
} else if (status == 2) {
|
||||
qm.sendNextPrev("I have given you some #bSP#k. I have also given you some skills of Wind Archer that are only available to official knights, so keep working!");
|
||||
} else if (status == 3) {
|
||||
qm.sendPrev("As an official Cygnus Knight, you should always keep yourself level-headed.");
|
||||
} else if (status == 4) {
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
70
scripts/quest/20204.js
Normal file
70
scripts/quest/20204.js
Normal file
@@ -0,0 +1,70 @@
|
||||
/*
|
||||
This file is part of the OdinMS Maple Story Server
|
||||
Copyright (C) 2008 Patrick Huy <patrick.huy@frz.cc>
|
||||
Matthias Butz <matze@odinms.de>
|
||||
Jan Christian Meyer <vimes@odinms.de>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
published by the Free Software Foundation version 3 as published by
|
||||
the Free Software Foundation. You may not use, modify or distribute
|
||||
this program under any other version of the GNU Affero General Public
|
||||
License.
|
||||
|
||||
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 Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
/* Author: Xterminator
|
||||
NPC Name: Eckhart
|
||||
Map(s): Empress' Road : Ereve (130000000)
|
||||
Description: Quest - Knighthood Exam: Night Walker
|
||||
*/
|
||||
var status = -1;
|
||||
|
||||
function end(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
qm.dispose();
|
||||
} else {
|
||||
if (status == 0 && mode == 0) {
|
||||
qm.sendNext("What's holding you back?");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
if (status == 0) {
|
||||
qm.sendYesNo("So you brought all the #t4032099#s with you. This is much b... way, I shouldn't congratulate you for doing something that you should be doing. At least, I can tell that you are now qualified to become an official knight. Do you want to become one right now?");
|
||||
} else if (status == 1) {
|
||||
if (qm.getPlayer().getJob().getId() == 1400 && qm.getPlayer().getRemainingSp() > ((qm.getPlayer().getLevel() - 30) * 3)) {
|
||||
qm.sendNext("What's with all this #bSP#k lying around? Use more SP on your 1st-level skills.");
|
||||
qm.dispose();
|
||||
} else {
|
||||
if (qm.getPlayer().getJob().getId() != 1410) {
|
||||
if (!qm.canHold(1142067)) {
|
||||
qm.sendNext("If you wish to receive the medal befitting the title, you may want to make some room in your equipment inventory.");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
qm.gainItem(4032099, -30);
|
||||
qm.gainItem(1142067, 1);
|
||||
qm.getPlayer().changeJob(Packages.client.MapleJob.NIGHTWALKER2);
|
||||
qm.completeQuest();
|
||||
}
|
||||
qm.sendNext("You are no longer a Knight-in-Training. You have officially become a Cygnus Knight.");
|
||||
}
|
||||
} else if (status == 2) {
|
||||
qm.sendNextPrev("I have given you some #bSP#k. I have also given you some skills of Night Walker that are only available to official knights, so keep working!");
|
||||
} else if (status == 3) {
|
||||
qm.sendPrev("As a member of the Cygnus Knights, I hope you remain unaffected by temptations and stay strong.");
|
||||
} else if (status == 4) {
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
70
scripts/quest/20205.js
Normal file
70
scripts/quest/20205.js
Normal file
@@ -0,0 +1,70 @@
|
||||
/*
|
||||
This file is part of the OdinMS Maple Story Server
|
||||
Copyright (C) 2008 Patrick Huy <patrick.huy@frz.cc>
|
||||
Matthias Butz <matze@odinms.de>
|
||||
Jan Christian Meyer <vimes@odinms.de>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
published by the Free Software Foundation version 3 as published by
|
||||
the Free Software Foundation. You may not use, modify or distribute
|
||||
this program under any other version of the GNU Affero General Public
|
||||
License.
|
||||
|
||||
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 Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
/* Author: Xterminator
|
||||
NPC Name: Hawkeye
|
||||
Map(s): Empress' Road : Ereve (130000000)
|
||||
Description: Quest - Knighthood Exam: Thunder Breaker
|
||||
*/
|
||||
var status = -1;
|
||||
|
||||
function end(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
qm.dispose();
|
||||
} else {
|
||||
if (status == 0 && mode == 0) {
|
||||
qm.sendNext("Hmm? Why? What's holding you back?");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
if (status == 0) {
|
||||
qm.sendYesNo("Oh, you brought all #t4032100#s! Ahaha, I knew you'd be good at it. Tell you what, I now commend that you're now ready to become an official knight. Do you want to become one right now?");
|
||||
} else if (status == 1) {
|
||||
if (qm.getPlayer().getJob().getId() == 1500 && qm.getPlayer().getRemainingSp() > ((qm.getPlayer().getLevel() - 30) * 3)) {
|
||||
qm.sendNext("Hey, how did you manage to hunt all that? You have way too much #bSP#k lying around unused! You can't become an official knight like this! Use more SP on the 1st level skill.");
|
||||
qm.dispose();
|
||||
} else {
|
||||
if (qm.getPlayer().getJob().getId() != 1510) {
|
||||
if (!qm.canHold(1142067)) {
|
||||
qm.sendNext("If you wish to receive the medal befitting the title, you may want to make some room in your equipment inventory.");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
qm.gainItem(4032100, -30);
|
||||
qm.gainItem(1142067, 1);
|
||||
qm.getPlayer().changeJob(Packages.client.MapleJob.THUNDERBREAKER2);
|
||||
qm.completeQuest();
|
||||
}
|
||||
qm.sendNext("You are now no longer a Knight-in-Training. You have now officially become a Cygnus Knight.");
|
||||
}
|
||||
} else if (status == 2) {
|
||||
qm.sendNextPrev("I have also given you some #bSP#k and the accompanying skills of a Thunder Breakers that are only available to the official knights. These skills are lightning-based, so use them wisely!");
|
||||
} else if (status == 3) {
|
||||
qm.sendPrev("Well, personally, I hope you don't lose your enthusiasm even after becoming the Cygnus Knights. Always seek out the positive even if you're in the midst of a barrage of negative items.");
|
||||
} else if (status == 4) {
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
66
scripts/quest/20311.js
Normal file
66
scripts/quest/20311.js
Normal file
@@ -0,0 +1,66 @@
|
||||
/*
|
||||
This file is part of the OdinMS Maple Story Server
|
||||
Copyright (C) 2008 Patrick Huy <patrick.huy@frz.cc>
|
||||
Matthias Butz <matze@odinms.de>
|
||||
Jan Christian Meyer <vimes@odinms.de>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
published by the Free Software Foundation version 3 as published by
|
||||
the Free Software Foundation. You may not use, modify or distribute
|
||||
this program under any other version of the GNU Affero General Public
|
||||
License.
|
||||
|
||||
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 Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
/* Author: ThreeStep
|
||||
NPC Name: Mihile (1101003)
|
||||
Description: Dawn Warrior 3rd job advancement
|
||||
Quest: Shinsoo's Teardrop
|
||||
*/
|
||||
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
qm.dispose();
|
||||
} else {
|
||||
if (status == 1 && mode == 0) {
|
||||
qm.sendNext("Come back when you are ready.");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
if (status == 0) {
|
||||
qm.sendNext("The jevel you brought back from the Master of Disguise is Shinsoo's Teardrop. It is the crystalization of Shinsoo's powers. If the Black Mage gets his hands on this, then this spells doom for all of us.");
|
||||
} else if (status == 1) {
|
||||
qm.sendYesNo("For your effort in preventing a potentially serious disaster, the Empress has decided to present you with a new title. Are you ready to accept it?");
|
||||
} else if (status == 2) {
|
||||
nPSP = (qm.getPlayer().getLevel() - 70) * 3;
|
||||
if (qm.getPlayer().getRemainingSp() > nPSP) {
|
||||
qm.sendNext("You still have way too much #bSP#k with you. You can't earn a new title like that, I strongly urge you to use more SP on your 1st and 2nd level skills.");
|
||||
qm.dispose();
|
||||
} else {
|
||||
if (!qm.canHold(1142068)) {
|
||||
qm.sendNext("If you wish to receive the medal befitting the title, you may want to make some room in your equipment inventory.");
|
||||
qm.dispose();
|
||||
} else {
|
||||
qm.gainItem(1142068, 1);
|
||||
qm.getPlayer().changeJob(Packages.client.MapleJob.DAWNWARRIOR3);
|
||||
qm.sendOk("#h #, as of this moment, you are an Advanced Knight. From this moment on, you shall carry yourself with dignity and respect befitting your new title, an Advanced Knight of Cygnus Knights. May your glory continue to shine as bright as this moment.");
|
||||
qm.completeQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
67
scripts/quest/20312.js
Normal file
67
scripts/quest/20312.js
Normal file
@@ -0,0 +1,67 @@
|
||||
/*
|
||||
This file is part of the OdinMS Maple Story Server
|
||||
Copyright (C) 2008 Patrick Huy <patrick.huy@frz.cc>
|
||||
Matthias Butz <matze@odinms.de>
|
||||
Jan Christian Meyer <vimes@odinms.de>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
published by the Free Software Foundation version 3 as published by
|
||||
the Free Software Foundation. You may not use, modify or distribute
|
||||
this program under any other version of the GNU Affero General Public
|
||||
License.
|
||||
|
||||
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 Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
/* Author: ThreeStep
|
||||
NPC Name: Oz (1101004)
|
||||
Description: Blaze Wizard 3rd job advancement
|
||||
Quest: Shinsoo's Teardrop
|
||||
*/
|
||||
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
qm.dispose();
|
||||
} else {
|
||||
if (status == 1 && mode == 0) {
|
||||
qm.sendNext("Come back when you are ready.");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
if (status == 0) {
|
||||
qm.sendNext("The jevel you brought back from the Master of Disguise is Shinsoo's Teardrop. It is the crystalization of Shinsoo's powers. If the Black Mage gets his hands on this, then this spells doom for all of us.");
|
||||
} else if (status == 1) {
|
||||
qm.sendYesNo("As a token of her appreciation for your effort in preventing potentially serious matter, the Empress has decided to present you with a new title. Are you ready to accept it?");
|
||||
} else if (status == 2) {
|
||||
nPSP = (qm.getPlayer().getLevel() - 70) * 3;
|
||||
if (qm.getPlayer().getRemainingSp() > nPSP) {
|
||||
qm.sendNext("You still have way too much #bSP#k with you. You can't earn a new title like that, I strongly urge you to use more SP on your 1st and 2nd level skills.");
|
||||
qm.dispose();
|
||||
} else {
|
||||
if (!qm.canHold(1142068)) {
|
||||
qm.sendNext("If you wish to receive the medal befitting the title, you may want to make some room in your equipment inventory.");
|
||||
qm.dispose();
|
||||
} else {
|
||||
qm.gainItem(1142068, 1);
|
||||
qm.getPlayer().changeJob(Packages.client.MapleJob.BLAZEWIZARD3);
|
||||
qm.sendOk("#h #, as of this moment, you are an Advanced Knight. From this moment on, you will train yourself with fervor as you will lead your group of Knights for the safety of this world. That fervor will provide you with plenty of courage.");
|
||||
qm.completeQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
67
scripts/quest/20313.js
Normal file
67
scripts/quest/20313.js
Normal file
@@ -0,0 +1,67 @@
|
||||
/*
|
||||
This file is part of the OdinMS Maple Story Server
|
||||
Copyright (C) 2008 Patrick Huy <patrick.huy@frz.cc>
|
||||
Matthias Butz <matze@odinms.de>
|
||||
Jan Christian Meyer <vimes@odinms.de>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
published by the Free Software Foundation version 3 as published by
|
||||
the Free Software Foundation. You may not use, modify or distribute
|
||||
this program under any other version of the GNU Affero General Public
|
||||
License.
|
||||
|
||||
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 Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
/* Author: ThreeStep
|
||||
NPC Name: Irena (1101005)
|
||||
Description: Wind Archer 3rd job advancement
|
||||
Quest: Shinsoo's Teardrop
|
||||
*/
|
||||
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
qm.dispose();
|
||||
} else {
|
||||
if (status == 1 && mode == 0) {
|
||||
qm.sendNext("Come back when you are ready.");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
if (status == 0) {
|
||||
qm.sendNext("The jevel you brought back from the Master of Disguise is Shinsoo's Teardrop. It is the crystalization of Shinsoo's powers. If the Black Mage gets his hands on this, then this spells doom for all of us.");
|
||||
} else if (status == 1) {
|
||||
qm.sendYesNo("As a token of her appreciation for your work on this, the Empress has decided to present you with a new title. Would you like to receive that title?");
|
||||
} else if (status == 2) {
|
||||
nPSP = (qm.getPlayer().getLevel() - 70) * 3;
|
||||
if (qm.getPlayer().getRemainingSp() > nPSP) {
|
||||
qm.sendNext("You still have way too much #bSP#k with you. You can't earn a new title like that, I strongly urge you to use more SP on your 1st and 2nd level skills.");
|
||||
qm.dispose();
|
||||
} else {
|
||||
if (!qm.canHold(1142068)) {
|
||||
qm.sendNext("If you wish to receive the medal befitting the title, you may want to make some room in your equipment inventory.");
|
||||
qm.dispose();
|
||||
} else {
|
||||
qm.gainItem(1142068, 1);
|
||||
qm.getPlayer().changeJob(Packages.client.MapleJob.WINDARCHER3);
|
||||
qm.sendOk("#h #, as of this moment, you are an Advanced Knight. From this moment on, you will be carrying a while lot of responsibility befitting your new title as an Advanced Knight of Cygnus Knights. You may view the world in a carefree mode, but please remember what your mission is.");
|
||||
qm.completeQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
67
scripts/quest/20314.js
Normal file
67
scripts/quest/20314.js
Normal file
@@ -0,0 +1,67 @@
|
||||
/*
|
||||
This file is part of the OdinMS Maple Story Server
|
||||
Copyright (C) 2008 Patrick Huy <patrick.huy@frz.cc>
|
||||
Matthias Butz <matze@odinms.de>
|
||||
Jan Christian Meyer <vimes@odinms.de>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
published by the Free Software Foundation version 3 as published by
|
||||
the Free Software Foundation. You may not use, modify or distribute
|
||||
this program under any other version of the GNU Affero General Public
|
||||
License.
|
||||
|
||||
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 Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
/* Author: ThreeStep
|
||||
NPC Name: Eckhart (1101006)
|
||||
Description: Night Walker 3rd job advancement
|
||||
Quest: Shinsoo's Teardrop
|
||||
*/
|
||||
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
qm.dispose();
|
||||
} else {
|
||||
if (status == 1 && mode == 0) {
|
||||
qm.sendNext("Come back when you are ready.");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
if (status == 0) {
|
||||
qm.sendNext("The jevel you brought back from the Master of Disguise is Shinsoo's Teardrop. It is the crystalization of Shinsoo's powers. If the Black Mage gets his hands on this, then this spells doom for all of us.");
|
||||
} else if (status == 1) {
|
||||
qm.sendYesNo("The Empress thought highly of your accomplishment and granted you a new title. Would you like to receive it?");
|
||||
} else if (status == 2) {
|
||||
nPSP = (qm.getPlayer().getLevel() - 70) * 3;
|
||||
if (qm.getPlayer().getRemainingSp() > nPSP) {
|
||||
qm.sendNext("You still have way too much #bSP#k with you. You can't earn a new title like that, I strongly urge you to use more SP on your 1st and 2nd level skills.");
|
||||
qm.dispose();
|
||||
} else {
|
||||
if (!qm.canHold(1142068)) {
|
||||
qm.sendNext("If you wish to receive the medal befitting the title, you may want to make some room in your equipment inventory.");
|
||||
qm.dispose();
|
||||
} else {
|
||||
qm.gainItem(1142068, 1);
|
||||
qm.getPlayer().changeJob(Packages.client.MapleJob.NIGHTWALKER3);
|
||||
qm.sendOk("#h #, from here on out, you are an Advanced Knight of Cygnus Knights. The title comes with a newfound broad view on everything. You may encounter temptations here and there, but I want you to keep your faith and beliefs intact and do not succumb to the darkness.");
|
||||
qm.completeQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
67
scripts/quest/20315.js
Normal file
67
scripts/quest/20315.js
Normal file
@@ -0,0 +1,67 @@
|
||||
/*
|
||||
This file is part of the OdinMS Maple Story Server
|
||||
Copyright (C) 2008 Patrick Huy <patrick.huy@frz.cc>
|
||||
Matthias Butz <matze@odinms.de>
|
||||
Jan Christian Meyer <vimes@odinms.de>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
published by the Free Software Foundation version 3 as published by
|
||||
the Free Software Foundation. You may not use, modify or distribute
|
||||
this program under any other version of the GNU Affero General Public
|
||||
License.
|
||||
|
||||
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 Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
/* Author: ThreeStep
|
||||
NPC Name: Hawkeye (1101007)
|
||||
Description: Thunder breaker 3rd job advancement
|
||||
Quest: Shinsoo's Teardrop
|
||||
*/
|
||||
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
qm.dispose();
|
||||
} else {
|
||||
if (status == 1 && mode == 0) {
|
||||
qm.sendNext("Come back when you are ready.");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
if (status == 0) {
|
||||
qm.sendNext("The jevel you brought back from the Master of Disguise is Shinsoo's Teardrop. It is the crystalization of Shinsoo's powers. If the Black Mage gets his hands on this, then this spells doom for all of us.");
|
||||
} else if (status == 1) {
|
||||
qm.sendYesNo("Because of that, the Empress gave you a new title! Can you believe that? Do you want the title?");
|
||||
} else if (status == 2) {
|
||||
nPSP = (qm.getPlayer().getLevel() - 70) * 3;
|
||||
if (qm.getPlayer().getRemainingSp() > nPSP) {
|
||||
qm.sendNext("You still have way too much #bSP#k with you. You can't earn a new title like that, I strongly urge you to use more SP on your 1st and 2nd level skills.");
|
||||
qm.dispose();
|
||||
} else {
|
||||
if (!qm.canHold(1142068)) {
|
||||
qm.sendNext("If you wish to receive the medal befitting the title, you may want to make some room in your equipment inventory.");
|
||||
qm.dispose();
|
||||
} else {
|
||||
qm.gainItem(1142068, 1);
|
||||
qm.getPlayer().changeJob(Packages.client.MapleJob.THUNDERBREAKER3);
|
||||
qm.sendOk("#h #, from here on out, you will become an Advanced Knight of the Knights of Cygnus! As your standing rises, so does the difficulty of the tasks you will be receiving. But challenge is good, right? You have to enjoy life. Enjoy what's given to you!");
|
||||
qm.completeQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
44
scripts/quest/2034.js
Normal file
44
scripts/quest/2034.js
Normal file
@@ -0,0 +1,44 @@
|
||||
importPackage(Packages.client);
|
||||
|
||||
var item;
|
||||
var stance;
|
||||
var status = -1;
|
||||
var item;
|
||||
|
||||
function end(mode, type, selection) {
|
||||
if(mode == 0) {
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
status++;
|
||||
|
||||
if(status == 0) {
|
||||
qm.sendNext("I knew it ... I knew you could get it done with, quickly! You did your job well last time, and here you are again, taking care of business!! Alright, since you have done it so well, I should reward you well. #b#p1051000##k is giving you a pair of shoes in hopes of helping you out on your future traveling.");
|
||||
}
|
||||
|
||||
else if(status == 1) {
|
||||
if(qm.getPlayer().getInventory(Packages.client.inventory.MapleInventoryType.EQUIP).getNumFreeSlot() < 1) {
|
||||
qm.sendOk("Please free a EQUIP inventory slot to receive the reward.");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
|
||||
stance = qm.getPlayer().getJobStyle();
|
||||
|
||||
if(stance == Packages.client.MapleJob.WARRIOR) item = 1072003;
|
||||
else if(stance == Packages.client.MapleJob.MAGICIAN) item = 1072077;
|
||||
else if(stance == Packages.client.MapleJob.BOWMAN || stance == Packages.client.MapleJob.CROSSBOWMAN) item = 1072081;
|
||||
else if(stance == Packages.client.MapleJob.THIEF) item = 1072035;
|
||||
else if(stance == Packages.client.MapleJob.BRAWLER || stance == Packages.client.MapleJob.GUNSLINGER) item = 1072294;
|
||||
else item = 1072018;
|
||||
|
||||
qm.gainItem(item, 1);
|
||||
qm.gainItem(4000007, -150);
|
||||
|
||||
qm.gainExp(2200 * qm.getPlayer().getExpRate());
|
||||
qm.completeQuest();
|
||||
|
||||
qm.sendOk("Alright, if you need work sometime down the road, feel free to come back and see me. This town sure can use a person like you for help~");
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
49
scripts/quest/20520.js
Normal file
49
scripts/quest/20520.js
Normal file
@@ -0,0 +1,49 @@
|
||||
/*
|
||||
This file is part of the OdinMS Maple Story Server
|
||||
Copyright (C) 2008 Patrick Huy <patrick.huy@frz.cc>
|
||||
Matthias Butz <matze@odinms.de>
|
||||
Jan Christian Meyer <vimes@odinms.de>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
published by the Free Software Foundation version 3 as published by
|
||||
the Free Software Foundation. You may not use, modify or distribute
|
||||
this program under any other version of the GNU Affero General Public
|
||||
License.
|
||||
|
||||
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 Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
/*
|
||||
Author : Biscuit
|
||||
*/
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
status++;
|
||||
if (mode != 1) {
|
||||
if(type == 1 && mode == 0) {
|
||||
qm.dispose();
|
||||
return;
|
||||
}else{
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
if (status == 0) {
|
||||
qm.sendNext("Wow, you have already reach Level 50, yet why are you still walking around like that? I mean, you've reached Level 50, but you are still walking around with your own feet. That's unusual behavior for a Knight like you.");
|
||||
} else if (status == 1) {
|
||||
qm.sendAcceptDecline("Well, I suppose it's up to you, but by doing that, you also risk marring the pride and honor of the Empress. This is why I am here to give you a helpful pointer. It's called #bMonster Riding#k. Of course you're interested in this, right?");
|
||||
} else if (status == 2) {
|
||||
qm.forceStartQuest();
|
||||
qm.forceCompleteQuest();
|
||||
qm.sendOk("There's a special mount that only the Cygnus Knights can enjoy. If you are interested, visit #bEreve#k. I will give you more information on it.");
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
86
scripts/quest/20522.js
Normal file
86
scripts/quest/20522.js
Normal file
@@ -0,0 +1,86 @@
|
||||
/*
|
||||
This file is part of the OdinMS Maple Story Server
|
||||
Copyright (C) 2008 Patrick Huy <patrick.huy@frz.cc>
|
||||
Matthias Butz <matze@odinms.de>
|
||||
Jan Christian Meyer <vimes@odinms.de>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
published by the Free Software Foundation version 3 as published by
|
||||
the Free Software Foundation. You may not use, modify or distribute
|
||||
this program under any other version of the GNU Affero General Public
|
||||
License.
|
||||
|
||||
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 Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
/*
|
||||
Author : Ronan Lana
|
||||
*/
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
|
||||
else if (status >= 2 && mode == 0) {
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
|
||||
if(mode == 1) status++;
|
||||
else status--;
|
||||
|
||||
if (status == 0) {
|
||||
qm.sendNext("The riding for Knights are a bit different from the rides available for regular folks. The takes place through a creature that is of the Mimi race that can be found on this island; they are called #bMimianas#k. Instead of riding monsters, the Knights ride Mimiana. There's one thing that you should never, ever forget.");
|
||||
} else if (status == 1) {
|
||||
qm.sendNextPrev("Dont't think of this as just a form of mount or transportation. These mounts can be your friend, your comrade, your colleague... all of the above. Even a friend close enough to entrust your life! That's why the Knights of Ereve actually grow their own mounts.");
|
||||
} else if (status == 2) {
|
||||
qm.sendAcceptDecline("Now, here's a Mimiana egg. Are you ready to raise a Mimiana and have it as your traveling companion for the rest of its life?");
|
||||
} else if (status == 3) {
|
||||
if(!qm.haveItem(4220137) && !qm.canHold(4220137)) {
|
||||
qm.sendOk("Make up a room on your ETC tab so I can give you the Mimiana egg.");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
|
||||
qm.forceStartQuest();
|
||||
if(!qm.haveItem(4220137)) qm.gainItem(4220137);
|
||||
qm.sendOk("Mimiana's egg can be raised by #bsharing your daily experiences with it#k. Once Mimiana fully grows up, please come see me.");
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
if (mode != 1) {
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
|
||||
status++;
|
||||
if (status == 0) {
|
||||
qm.sendNext("Hey there! How's Mimiana's egg?");
|
||||
} else if (status == 1) { //pretty sure there would need to have an egg EXP condition... Whatever.
|
||||
if(!qm.haveItem(4220137)) {
|
||||
qm.sendOk("I see, you lost your egg... You need to be more careful when raising a baby Mimiana!");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
|
||||
qm.sendOk("Oh, were you able to awaken Mimiana Egg? That's amazing... Most knights can't even dream of awakening it in such a short amount of time.");
|
||||
|
||||
qm.forceCompleteQuest();
|
||||
qm.gainItem(4220137, -1);
|
||||
qm.gainExp(37600 * qm.getPlayer().getExpRate());
|
||||
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
22
scripts/quest/20600.js
Normal file
22
scripts/quest/20600.js
Normal file
@@ -0,0 +1,22 @@
|
||||
/*
|
||||
* Cygnus Skill - Training Never ends
|
||||
*/
|
||||
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
status++;
|
||||
|
||||
if (status == 0) {
|
||||
qm.sendAcceptDecline("#h0#. Have you been slacking off on training since reaching Level 100? We all know how powerful you are, but the training is not complete. Take a look at these Knight Commanders. They train day and night, preparing themselves for the possible encounter with the Black Mage.");
|
||||
} else {
|
||||
if (mode == 1) {
|
||||
qm.forceStartQuest();
|
||||
}
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
qm.dispose();
|
||||
}
|
||||
24
scripts/quest/20610.js
Normal file
24
scripts/quest/20610.js
Normal file
@@ -0,0 +1,24 @@
|
||||
/*
|
||||
* Cygnus Skill -
|
||||
*/
|
||||
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
status++;
|
||||
|
||||
if (status == 0) {
|
||||
qm.sendAcceptDecline("Have you been mastering your skills? I am sure you've mastered all your skills, which means... it's time for you to learn a #bnew skill#k, right?");
|
||||
} else if (status == 1) {
|
||||
if (mode == 0) {
|
||||
qm.sendOk("Well, what you're doing right now doesn't make you look like someone that's humble. You just look complacent by doing that, and that's never a good thing.");
|
||||
} else {
|
||||
qm.forceStartQuest();
|
||||
}
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
qm.dispose();
|
||||
}
|
||||
35
scripts/quest/20700.js
Normal file
35
scripts/quest/20700.js
Normal file
@@ -0,0 +1,35 @@
|
||||
/*
|
||||
NPC Name: Nineheart
|
||||
Description: Quest - Are you sure you can leave?
|
||||
*/
|
||||
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == 1) {
|
||||
status++;
|
||||
} else {
|
||||
if (status == 1) {
|
||||
qm.sendNext("When will you realize how weak you are... When you get yourself in trouble in Victoria Island?");
|
||||
qm.safeDispose();
|
||||
return;
|
||||
}
|
||||
status--;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendNext("You have finally become a Knight-in-Training. I'd like to give you a mission right away, but you still look miles away from even being able to handle a task on your own. Are you sure you can even go to Victoria Island like this?");
|
||||
} else if (status == 1) {
|
||||
qm.askAcceptDecline("It's up to you to head over to Victoria Island, but a Knight-in-Training that can't take care of one''s self in battles is likely to cause harm to the Empress''s impeccable reputation. As the Head Tactician of this island, I can't let that happen, period. I want you to keep training until the right time comes.");
|
||||
} else if (status == 2) {
|
||||
qm.forceCompleteQuest();
|
||||
qm.sendNext("#p1102000#, the Training Instructor, will help you train into a serviceable knight. Once you reach Level 13, I'll assign you a mission or two. So until then, keep training.");
|
||||
} else if (status == 3) {
|
||||
qm.sendPrev("Oh, and are you aware that if you strike a conversation with #p1101001#, she'll give you a blessing? The blessing will definitely help you on your journey.");
|
||||
} else if (status == 4) {
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
qm.dispose();
|
||||
}
|
||||
63
scripts/quest/21000.js
Normal file
63
scripts/quest/21000.js
Normal file
@@ -0,0 +1,63 @@
|
||||
/*
|
||||
This file is part of the OdinMS Maple Story Server
|
||||
Copyright (C) 2008 Patrick Huy <patrick.huy@frz.cc>
|
||||
Matthias Butz <matze@odinms.de>
|
||||
Jan Christian Meyer <vimes@odinms.de>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
published by the Free Software Foundation version 3 as published by
|
||||
the Free Software Foundation. You may not use, modify or distribute
|
||||
this program under any other version of the GNU Affero General Public
|
||||
License.
|
||||
|
||||
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 Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
/*
|
||||
Author : kevintjuh93
|
||||
Map(s): Aran Training Map 2
|
||||
Description: Quest - Help Kid
|
||||
Quest ID : 21000
|
||||
*/
|
||||
|
||||
importPackage(Packages.client);
|
||||
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
status++;
|
||||
if (mode != 1) {
|
||||
if(type == 1 && mode == 0)
|
||||
status -= 2;
|
||||
else{
|
||||
qm.sendNext("No, Aran... We can't leave a kid behind. I know it's a lot to ask, but please reconsider. Please!");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
}
|
||||
if (status == 0)
|
||||
qm.sendAcceptDecline("Oh, no! I think there's still a child in the forest! Aran, I'm very sorry, but could you rescue the child? I know you're injured, but I don't have anyone else to ask!");
|
||||
else if (status == 1) {
|
||||
qm.forceStartQuest();
|
||||
qm.sendNext("#bThe child is probably lost deep inside the forest!#k We have to escape before the Black Mage finds us. You must rush into the forest and bring the child back with you!");
|
||||
} else if (status == 2) {
|
||||
qm.sendNextPrev("Don't panic, Aran. If you wish to check the status of the \r\nquest, press #bQ#k and view the Quest window.");
|
||||
} else if (status == 3) {
|
||||
qm.sendNextPrev("Please, Aran! I'm begging you. I can't bear to lose another person to the Black Mage!");
|
||||
} else if (status == 4) {
|
||||
qm.showInfo("Effect/OnUserEff.img/guideEffect/aranTutorial/tutorialArrow1");
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
function end(mode, type, selection) {
|
||||
qm.forceCompleteQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
83
scripts/quest/21001.js
Normal file
83
scripts/quest/21001.js
Normal file
@@ -0,0 +1,83 @@
|
||||
/*
|
||||
This file is part of the OdinMS Maple Story Server
|
||||
Copyright (C) 2008 Patrick Huy <patrick.huy@frz.cc>
|
||||
Matthias Butz <matze@odinms.de>
|
||||
Jan Christian Meyer <vimes@odinms.de>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
published by the Free Software Foundation version 3 as published by
|
||||
the Free Software Foundation. You may not use, modify or distribute
|
||||
this program under any other version of the GNU Affero General Public
|
||||
License.
|
||||
|
||||
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 Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
/*
|
||||
Author : kevintjuh93
|
||||
*/
|
||||
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
status++;
|
||||
if (mode != 1) {
|
||||
if(type == 15 && mode == 0) {
|
||||
qm.sendNext("*Sob* Aran has declined my request!");
|
||||
qm.dispose();
|
||||
return;
|
||||
}else{
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendAcceptDecline("*Sniff sniff* I was so scared... Please take me to Athena Pierce.");
|
||||
} else if (status == 1) {
|
||||
qm.gainItem(4001271, 1);
|
||||
qm.forceStartQuest();
|
||||
qm.warp(914000300);
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
status++;
|
||||
if (mode != 1) {
|
||||
if (type == 1 && mode == 0) {
|
||||
qm.sendNext("What about the child? Please give me the child!");
|
||||
}
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
if (status == 0)
|
||||
qm.sendYesNo("You made it back safely! What about the child?! Did you bring the child with you?!");
|
||||
else if (status == 1) {
|
||||
qm.gainItem(4001271, -1);
|
||||
qm.removeEquipFromSlot(-11);
|
||||
qm.forceCompleteQuest();
|
||||
qm.sendNext("Oh, what a relief. I'm so glad...", 9);
|
||||
} else if (status == 2)
|
||||
qm.sendNextPrev("Hurry and board the ship! We don't have much time!", 3);
|
||||
else if (status == 3)
|
||||
qm.sendNextPrev("We don't have any time to waste. The Black Mage's forces are getting closer and closer! We're doomed if we don't leave right right this moment!", 9);
|
||||
else if (status == 4)
|
||||
qm.sendNextPrev("Leave, now!", 3);
|
||||
else if (status == 5)
|
||||
qm.sendNextPrev("Aran, please! I know you want to stay and fight the Black Mage, but it's too late! Leave it to the others and come to Victoria Island with us!", 9);
|
||||
else if (status == 6)
|
||||
qm.sendNextPrev("No, I can't!", 3);
|
||||
else if (status == 7) {
|
||||
qm.sendNextPrev("Athena Pierce, why don't you leave for Victoria Island first? I promise I'll come for you later. I'll be alright. I must fight the Black Mage with the other heroes!", 3);
|
||||
} else if (status == 8) {
|
||||
qm.forceCompleteQuest();
|
||||
qm.warp(914090010); // Initialize Aran Tutorial Scenes
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
100
scripts/quest/21010.js
Normal file
100
scripts/quest/21010.js
Normal file
@@ -0,0 +1,100 @@
|
||||
/*
|
||||
This file is part of the OdinMS Maple Story Server
|
||||
Copyright (C) 2008 Patrick Huy <patrick.huy@frz.cc>
|
||||
Matthias Butz <matze@odinms.de>
|
||||
Jan Christian Meyer <vimes@odinms.de>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
published by the Free Software Foundation version 3 as published by
|
||||
the Free Software Foundation. You may not use, modify or distribute
|
||||
this program under any other version of the GNU Affero General Public
|
||||
License.
|
||||
|
||||
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 Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
/*
|
||||
Author : kevintjuh93
|
||||
*/
|
||||
importPackage(Packages.client);
|
||||
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
status++;
|
||||
if (mode != 1) {
|
||||
if(type == 15 && mode == 0) {
|
||||
qm.sendNext("Oh, no need to decline my offer. It's no big deal. It's just a potion. Well, let me know if you change your mind.");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
//status -= 2;
|
||||
}
|
||||
|
||||
if (status == 0) {
|
||||
qm.sendNext("Hm, what's a human doing on this island? Wait, it's #p1201000#. What are you doing here, #p1201000#? And who's that beside you? Is it someone you know, #p1201000#? What? The hero, you say?");
|
||||
} else if (status == 1) {
|
||||
qm.sendNextPrev(" #i4001170#");//gms like
|
||||
} else if (status == 2) {
|
||||
qm.sendNextPrev("Ah, this must be the hero you and your clan have been waiting for. Am I right, #p1201000#? Ah, I knew you weren't just accompanying an average passerby...");
|
||||
} else if (status == 3) {
|
||||
qm.sendAcceptDecline("Oh, but it seems our hero has become very weak since the Black Mage's curse. It's only makes sense, considering that the hero has been asleep for hundreds of years. #bHere, I'll give you a HP Recovery Potion.#k");//nexon probably forgot to remove the '.' before '#k', lol
|
||||
} else if (status == 4) {
|
||||
if (qm.c.getPlayer().getHp() >= 50) {
|
||||
qm.c.getPlayer().setHp(25);
|
||||
qm.c.getPlayer().updateSingleStat(MapleStat.HP, 25);
|
||||
}
|
||||
if (!qm.isQuestStarted(21010) && !qm.isQuestCompleted(21010)) {
|
||||
qm.gainItem(2000022, 1);
|
||||
qm.forceStartQuest();
|
||||
}
|
||||
qm.sendNext("Drink it first. Then we'll talk.", 9);
|
||||
} else if (status == 5) {
|
||||
qm.sendNextPrev("#b(How do I drink the potion? I don't remember..)", 3);
|
||||
} else if (status == 6) {
|
||||
qm.guideHint(14);
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
status++;
|
||||
if (mode != 1) {
|
||||
if(type == 1 && mode == 0)
|
||||
qm.dispose();
|
||||
else{
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
}
|
||||
if (status == 0) {
|
||||
if (qm.c.getPlayer().getHp() < 50) {
|
||||
qm.sendNext("You have't drank the potion yet.");
|
||||
qm.dispose();
|
||||
} else {
|
||||
qm.sendNext("We've been digging and digging inside the Ice Cave in the hope of finding a hero, but I never thought I'd actually see the day... The prophecy was true! You were right, #p1201000#! Now that one of the legendary heroes has returned, we have no reason to fear the Black Mage!");
|
||||
}
|
||||
} else if (status == 1) {
|
||||
qm.sendNextPrev("Oh, I've kept you too long. I'm sorry, I got a little carried away. I'm sure the other Penguins feel the same way. I know you're busy, but could you #bstop and talk to the other Penguins#k on your way to town? They would be so honored.\r\n\r\n#fUI/UIWindow.img/QuestIcon/4/0# \r\n#i2000022# 5 #t2000022#\r\n#i2000023# 5 #t2000023#\r\n\r\n#fUI/UIWindow.img/QuestIcon/8/0# 16 exp");
|
||||
} else if (status == 2) {
|
||||
if(qm.isQuestStarted(21010) && !qm.isQuestCompleted(21010)) {
|
||||
qm.gainExp(16);
|
||||
qm.gainItem(2000022, 3);
|
||||
qm.gainItem(2000023, 3);
|
||||
qm.forceCompleteQuest();
|
||||
}
|
||||
qm.sendNextPrev("Oh, you've leveled up! You may have even received some skill points. In Maple World, you can acquire 3 skill points every time you level up. Press the #bK key #kto view the Skill window.", 9);
|
||||
} else if (status == 3) {
|
||||
qm.sendNextPrev("#b(Everyone's been so nice to me, but I just can't remember anything. Am I really a hero? I should check my skills and see. But how do I check them?)", 3);
|
||||
} else if (status == 4) {
|
||||
qm.guideHint(15);
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
90
scripts/quest/21011.js
Normal file
90
scripts/quest/21011.js
Normal file
@@ -0,0 +1,90 @@
|
||||
/*
|
||||
This file is part of the OdinMS Maple Story Server
|
||||
Copyright (C) 2008 Patrick Huy <patrick.huy@frz.cc>
|
||||
Matthias Butz <matze@odinms.de>
|
||||
Jan Christian Meyer <vimes@odinms.de>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
published by the Free Software Foundation version 3 as published by
|
||||
the Free Software Foundation. You may not use, modify or distribute
|
||||
this program under any other version of the GNU Affero General Public
|
||||
License.
|
||||
|
||||
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 Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
/*
|
||||
Author : kevintjuh93
|
||||
*/
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
status++;
|
||||
if (mode != 1) {
|
||||
if(type == 1 && mode == 0) {
|
||||
qm.sendOk("Ah, okay. I understand. Heroes are very busy. *Sniff...* If you ever get any free time, though...");
|
||||
qm.dispose();
|
||||
return;
|
||||
}else{
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
if (status == 0)
|
||||
qm.sendNext("Wait, are you... No way.... Are you the hero that #p1201000# has been talking about all this time?! #p1201000#! Don't just nod... Tell me! Is this the hero you've been waiting for?! ")
|
||||
else if (status == 1) {
|
||||
qm.sendNextPrev(" #i4001171#");
|
||||
} else if (status == 2) {
|
||||
qm.sendNextPrev("I'm sorry. I'm just so overcome with emotions... *Sniff sniff* My goodness, I'm starting to tear up. You must be so happy, #p1201000#.");
|
||||
} else if (status == 3) {
|
||||
qm.sendAcceptDecline("Wait a minute... You're not carrying any weapons. From what I've heard, each of the heroes had a special weapon. Oh, you must have lost it during the battle against the Black Mage.");
|
||||
} else if (status == 4) {
|
||||
qm.forceStartQuest();
|
||||
qm.sendOk("My brother #bPuir #kis just down the street, and he's been dying to meet you! I know you're busy, but could you please stop by and say hello to Puir? Please...");
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
status++;
|
||||
if (mode != 1) {
|
||||
if(type == 1 && mode == 0) {
|
||||
qm.sendNext("*sniff sniff* Isn't this sword good enough for you, just for now? I'd be so honored...");
|
||||
qm.dispose();
|
||||
}else{
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
}
|
||||
if (status == 0)
|
||||
qm.sendNext("Wait, are you... No way... Are you the hero that Lilin has been talking about all this time?! Lilin! Don't just nod... Tell me! Is this the hero you've been waiting for?!");
|
||||
else if (status == 1) {
|
||||
qm.sendNextPrev("#i4001171#");
|
||||
} else if (status == 2) {
|
||||
qm.sendNextPrev("I'm sorry. I'm just so overcome with emotions... *Sniff sniff* My goodness, I'm starting to tear up. You must be so happy, Lilin.");
|
||||
} else if (status == 3) {
|
||||
qm.sendNextPrev("Wait a minute... You're not carrying any weapons. From what I've hear, each of the heroes had a special weapon. Oh, you must have lost it during the battle against the Black Mage.");
|
||||
} else if (status == 4) {
|
||||
qm.sendYesNo("This isn't good enough to replace your weapon, but #bcarry this sword with you for now#k. It's my gift to you. A hero can't be walking around empty-handed.\r\n\r\n#fUI/UIWindow.img/QuestIcon/4/0#\r\n#v1302000# 1 #t1302000#\r\n\r\n#fUI/UIWindow.img/QuestIcon/8/0# 35 exp");
|
||||
} else if (status == 5) {
|
||||
if(qm.isQuestCompleted(21011))
|
||||
qm.dropMessage(1,"Unknown Error");
|
||||
else if(qm.canHold(1302000)){
|
||||
qm.gainItem(1302000, 1);
|
||||
qm.gainExp(35);
|
||||
qm.forceCompleteQuest();
|
||||
qm.sendNext("#b(Your skills are nowhere close to being hero-like... But a sword? Have you ever even held a sword in your lifetime? You can't remember... How do you even equip it?)", 3);
|
||||
}else
|
||||
qm.dropMessage(1,"Your inventory is full");
|
||||
} else if (status == 6) {
|
||||
qm.guideHint(16);
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
84
scripts/quest/21012.js
Normal file
84
scripts/quest/21012.js
Normal file
@@ -0,0 +1,84 @@
|
||||
/*
|
||||
This file is part of the OdinMS Maple Story Server
|
||||
Copyright (C) 2008 Patrick Huy <patrick.huy@frz.cc>
|
||||
Matthias Butz <matze@odinms.de>
|
||||
Jan Christian Meyer <vimes@odinms.de>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
published by the Free Software Foundation version 3 as published by
|
||||
the Free Software Foundation. You may not use, modify or distribute
|
||||
this program under any other version of the GNU Affero General Public
|
||||
License.
|
||||
|
||||
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 Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
/*
|
||||
Author : kevintjuh93
|
||||
*/
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
status++;
|
||||
if (mode != 1) {
|
||||
if(type == 2 && mode == 0) {
|
||||
qm.sendOk("Hm... You don't think that would help? Think about it. It could help, you know...");
|
||||
qm.dispose();
|
||||
return;
|
||||
}else{
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
}
|
||||
if (status == 0)
|
||||
qm.sendNext("Welcome, hero! What's that? You want to know how I knew who you were? That's easy. I eavesdropped on some people talking loudly next to me. I'm sure the rumor has spread through the entire island already. Everyone knows that you've returned!")
|
||||
else if (status == 1) {
|
||||
qm.sendNextPrev("Hm, how about trying out that sword? Wouldn't that bring back some memories? How about #bfighthing some monsters#k?");
|
||||
} else if (status == 2) {
|
||||
qm.sendAcceptDecline("Ah, I'm so sorry. I was so happy to have finally met you that I guess I got a little carried away. Whew, deep breaths. Deep breaths. Okay, I feel better now. But um...can I ask you a favor? Please?");
|
||||
} else if (status == 3) {
|
||||
qm.forceStartQuest();
|
||||
qm.sendNext("It just so happens that there are a lot of #rTutorial Murus #knear here. How about defeating just #r3 #kof them? It could help you remember a thing or two.");
|
||||
} else if (status == 4) {
|
||||
qm.sendNextPrev("Ah, you've also forgotten how to use your skills? #bPlace skills in the quick slots for easy access. #kYou can also place consumable items in the slots, so use the slots to your advantage.") ;
|
||||
} else if (status == 5) {
|
||||
qm.guideHint(17);
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
status++;
|
||||
if (mode != 1) {
|
||||
if(type == 1 && mode == 0) {
|
||||
qm.sendNext("What? You don't want the potion?");
|
||||
qm.dispose();
|
||||
return;
|
||||
}else{
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
}
|
||||
if (status == 0)
|
||||
qm.sendYesNo("Hm... Your expression tells me that the exercise didn't jog any memories. But don't you worry. They'll come back, eventually. Here, drink this potion and power up!\r\n\r\n#fUI/UIWindow.img/QuestIcon/4/0#\r\n#v2000022# 10 #t2000022#\r\n#v2000023# 10 #t2000023#\r\n\r\n#fUI/UIWindow.img/QuestIcon/8/0# 57 exp");
|
||||
else if (status == 1) {
|
||||
if(qm.isQuestCompleted(21012))
|
||||
qm.dropMessage(1,"Unknown Error");
|
||||
else if(qm.canHold(2000022) && qm.canHold(2000023)){
|
||||
qm.gainExp(57);
|
||||
qm.gainItem(2000022, 10);
|
||||
qm.gainItem(2000023, 10);
|
||||
qm.forceCompleteQuest();
|
||||
qm.sendOk("#b(Even if you're really the hero everyone says you are... What good are you without any skills?)", 3);
|
||||
qm.dispose();
|
||||
}else
|
||||
qm.dropMessage(1,"Your inventory is full");
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
83
scripts/quest/21013.js
Normal file
83
scripts/quest/21013.js
Normal file
@@ -0,0 +1,83 @@
|
||||
/*
|
||||
This file is part of the OdinMS Maple Story Server
|
||||
Copyright (C) 2008 Patrick Huy <patrick.huy@frz.cc>
|
||||
Matthias Butz <matze@odinms.de>
|
||||
Jan Christian Meyer <vimes@odinms.de>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
published by the Free Software Foundation version 3 as published by
|
||||
the Free Software Foundation. You may not use, modify or distribute
|
||||
this program under any other version of the GNU Affero General Public
|
||||
License.
|
||||
|
||||
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 Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
/*
|
||||
Author : kevintjuh93
|
||||
*/
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
status++;
|
||||
if (mode != 1) {
|
||||
if(type == 1 && mode == 0) {
|
||||
qm.sendNext("I'm sure it will come in handy during your journey. Please, don't decline my offer.");
|
||||
qm.dispose();
|
||||
return;
|
||||
}else{
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
if (status == 0)
|
||||
qm.sendSimple("Ah, you're the hero. I've been dying to meet you. \r\n#b#L0#(Seems a bit shy...)#l");
|
||||
else if (status == 1) {
|
||||
qm.sendAcceptDecline("I have something I've been wanting to give you as a gift for a very long time... I know you're busy, especially since you're on your way to town, but will you accept my gift?");
|
||||
} else if (status == 2) {
|
||||
qm.forceStartQuest();
|
||||
qm.sendNext("The parts of the gift have been packed inside a box nearby. Sorry to trouble you, but could you break the box and bring me a #b#t4032309##k and some #b#t4032310##k? I'll assemble them for you right away.", 9);
|
||||
} else if (status == 3) {
|
||||
qm.guideHint(18);
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
status++;
|
||||
if (mode != 1) {
|
||||
if(type == 1 && mode == 0) {
|
||||
qm.sendNext("What? You don't want the potion?");
|
||||
qm.dispose();
|
||||
return;
|
||||
}else{
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
}
|
||||
if (status == 0)
|
||||
qm.sendYesNo("Ah, you've brought all the components. Give me a few seconds to assemble them.. Like this.. And like that.. and...\r\n\r\n#fUI/UIWindow.img/QuestIcon/4/0#\r\n#v3010062# 1 #t3010062#\r\n\r\n#fUI/UIWindow.img/QuestIcon/8/0# 95 exp");
|
||||
else if (status == 1) {
|
||||
if(qm.isQuestCompleted(21013)) {
|
||||
qm.dropMessage(1,"Unknown Error");
|
||||
}
|
||||
qm.forceCompleteQuest();
|
||||
qm.gainExp(95);
|
||||
qm.gainItem(4032309, -1);
|
||||
qm.gainItem(4032310, -1);
|
||||
qm.gainItem(3010062, 1);
|
||||
qm.sendNextPrev("Here, a fully-assembled chair, just for you! I've always wanted to give you a chair as a gift, because I know a hero can occasionally use some good rest. Tee hee.", 9);
|
||||
} else if (status == 2) {
|
||||
qm.sendNext("A hero is not invincible. A hero is human. I'm sure you will face challenges and even fatter at times. But you are a hero because you have what it takes to overcome any obstacles you may encounter.", 9);
|
||||
} else if (status == 3) {
|
||||
qm.guideHint(19);
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
30
scripts/quest/21015.js
Normal file
30
scripts/quest/21015.js
Normal file
@@ -0,0 +1,30 @@
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == 0 && type == 0) {
|
||||
status--;
|
||||
} else if (mode == -1) {
|
||||
qm.dispose();
|
||||
return;
|
||||
} else {
|
||||
status++;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendNext("Alright, I've done enough explaining for now. Let's move on to the next stage. What's the next stage, you ask? I just told you. Train as hard as you can until you become strong enough to defeat the Black Mage with a single blow.");
|
||||
} else if (status == 1) {
|
||||
qm.sendNextPrev("You may have been a hero in the past, but that was hundreds of years ago. Even if it weren't for the curse of the Black Mage, all those years you spent frozen in time have stiffened your body. You must loosen up a bit and slowly regain your agility. How do you do that, you ask?");
|
||||
} else if (status == 2) {
|
||||
qm.sendAcceptDecline("Don't you know that you must first master the fundamentals? So the wise thing to do is to begin with #bBasic Training#k. Oh, of course, I forgot that you lost your memory. Well, that's why I'm here. You'll just have to experience it yourself. Shall we begin?");
|
||||
} else if (status == 3) {
|
||||
if (mode == 0) {
|
||||
qm.sendNext("What are you so hesitant about? You're a hero! You gotta strike while the iron is hot! Come on, let's do this!");
|
||||
qm.dispose();
|
||||
} else {
|
||||
qm.forceStartQuest();
|
||||
qm.sendNext("The population of Rien may be mostly Penguins, but even this island has monsters. You'll find #o0100131#s if you go to #b#m140020000##k, located on the right side of the town. Please defeat #r10 of those #o0100131#s#k. I'm sure you'll have no trouble defeating the #o0100131#s that even the slowest penguins here can defeat.", 1);
|
||||
}
|
||||
} else if (status == 4) {
|
||||
qm.showInfo("Effect/OnUserEff.img/guideEffect/aranTutorial/tutorialArrow3");
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
26
scripts/quest/21016.js
Normal file
26
scripts/quest/21016.js
Normal file
@@ -0,0 +1,26 @@
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == 0 && type == 0) {
|
||||
status--;
|
||||
} else if (mode == -1) {
|
||||
qm.dispose();
|
||||
return;
|
||||
} else {
|
||||
status++;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendAcceptDecline("Shall we continue with your Basic Training? Before accepting, please make sure you have properly equipped your sword and your skills and potions are readily accessible.");
|
||||
} else if (status == 1) {
|
||||
if (mode == 0) {
|
||||
qm.sendNext("Are you not ready to hunt the #o0100132#s yet? Always proceed if and only if you are fully ready. There's nothing worse than engaging in battles without sufficient preparation.");
|
||||
qm.dispose();
|
||||
} else {
|
||||
qm.forceStartQuest();
|
||||
qm.sendNext("Alright. This time, let's have you defeat #r#o0100132#s#k, which are slightly more powerful than #o0100131#s. Head over to #b#m140020100##k and defeat #r15#k of them. That should help you build your strength. Alright! Let's do this!", 1);
|
||||
}
|
||||
} else if (status == 2) {
|
||||
qm.showInfo("Effect/OnUserEff.img/guideEffect/aranTutorial/tutorialArrow3");
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
40
scripts/quest/21017.js
Normal file
40
scripts/quest/21017.js
Normal file
@@ -0,0 +1,40 @@
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == 0 && type == 0) {
|
||||
status--;
|
||||
} else if (mode == -1) {
|
||||
qm.dispose();
|
||||
return;
|
||||
} else {
|
||||
status++;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendNext("It seems like you're warmed up now. This is when rigorous training can really help you build a strong foundation. Let's proceed with the Basic Training, shall we?", 8);
|
||||
} else if (status == 1) {
|
||||
qm.sendNextPrev("Go defeat some #r#o0100133#s#k in #b#m140020200##k this time. I think about #r20#k should do it. Go on ahead and... Hm? Do you have something you'd like to say?", 8);
|
||||
} else if (status == 2) {
|
||||
qm.sendNextPrev("Isn't the number getting bigger and bigger?", 2);
|
||||
} else if (status == 3) {
|
||||
qm.sendNextPrev("Of course it is. What, are you not happy with 20? Would you like to defeat 100 of them instead? Oh, how about 999 of them? Someone in Sleepywood would be able to do it easily. After all, we are training...", 8);
|
||||
} else if (status == 4) {
|
||||
qm.sendNextPrev("Oh no, no, no. Twenty is plenty.", 2);
|
||||
} else if (status == 5) {
|
||||
qm.sendAcceptDecline("You don't have to be so modest. I understand your desire to quickly become the hero you once were. This sort of attitude is what makes you a hero.");
|
||||
} else if (status == 6) {
|
||||
if (mode == 0 && type == 15) {
|
||||
qm.sendNext("#b(You declined out of fear, but it's not like you can run away like this. Take a big breath, calm down, and try again.)#k", 2);
|
||||
qm.dispose();
|
||||
} else {
|
||||
if (!qm.isQuestStarted(21017)) {
|
||||
qm.forceStartQuest();
|
||||
}
|
||||
qm.sendNext("#b(You accepted, thinking you might end up having to 999 of them if you let her keep talking.)#k", 2);
|
||||
}
|
||||
} else if (status == 7) {
|
||||
qm.sendNextPrev("Please go ahead and slay 20 #o0100133#s.", 8);
|
||||
} else if (status == 8) {
|
||||
qm.showInfo("Effect/OnUserEff.img/guideEffect/aranTutorial/tutorialArrow3");
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
28
scripts/quest/21018.js
Normal file
28
scripts/quest/21018.js
Normal file
@@ -0,0 +1,28 @@
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == 0 && type == 0) {
|
||||
status--;
|
||||
} else if (mode == -1) {
|
||||
qm.dispose();
|
||||
return;
|
||||
} else {
|
||||
status++;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendNext("Now, you will undergo a test that will determine whether you're fit or not. All you have to do is take on the most powerful monster on this island, #o0100134#s. About #r50#k of them would suffice, but...");
|
||||
} else if (status == 1) {
|
||||
qm.sendAcceptDecline("We can't have you wipe out the entire population of #o0100134#s, since they aren't many of them out there. How about 5 of them? You're here to train, not to destroy the ecosystem.");
|
||||
} else if (status == 2) {
|
||||
if (mode == 0 && type == 15) {
|
||||
qm.sendNext("Oh, is 5 not enough? If you feel the need to train further, please feel free to slay more than that. If you slay all of them, I'll just have to look the other way even if it breaks my heart, since they will have been sacrificed for a good cause...");
|
||||
qm.dispose();
|
||||
} else {
|
||||
qm.forceStartQuest();
|
||||
qm.sendNext("#o0100134#s can be found in deeper parts of the island. Continue going left until you reach #b#m140010200##k, and defeat #r5 #o0100134#s#k.");
|
||||
}
|
||||
} else if (status == 3) {
|
||||
qm.showInfo("Effect/OnUserEff.img/guideEffect/aranTutorial/tutorialArrow1");
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
36
scripts/quest/21100.js
Normal file
36
scripts/quest/21100.js
Normal file
@@ -0,0 +1,36 @@
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == 0 && type == 0) {
|
||||
status--;
|
||||
} else if (mode == -1) {
|
||||
qm.dispose();
|
||||
return;
|
||||
} else {
|
||||
status++;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendNext("There isn't much record left of the heores that fought against the Black Mage. Even in the Book of Prophecy, the only information available is that there were five of them. There is nothing about who they were or what they looked like. Is there anything you remember? Anything at all?", 8);
|
||||
} else if (status == 1) {
|
||||
qm.sendNextPrev("I don't remember a thing...", 2);
|
||||
} else if (status == 2) {
|
||||
qm.sendNextPrev("As I expected. Of course, the curse of the Black Mage was strong enough to wipe out all of your memory. But even if that's the case, there has got to be a point where the past will uncover, especially now that we are certain you are one of the heroes. I know you've lost your armor and weapon during the battle but... Oh, yes, yes. I almost forgot! Your #bweapon#k!", 8);
|
||||
} else if (status == 3) {
|
||||
qm.sendNextPrev("My weapon?", 2);
|
||||
} else if (status == 4) {
|
||||
qm.sendNextPrev("I found an incredible weapon while digging through blocks of ice a while back. I figured the weapon belonged to a hero, so I brought it to town and placed it somewhere in the center of the town. Haven't you seen it? #bThe #p1201001##k... \r\r#i4032372#\r\rIt looks like this...", 8);
|
||||
} else if (status == 5) {
|
||||
qm.sendNextPrev("Come to think of it, I did see a #p1201001# in town.", 2);
|
||||
} else if (status == 6) {
|
||||
qm.sendAcceptDecline("Yes, that's it. According to what's been recorded, the weapon of a hero will recognize its rightful owner, and if you're the hero that used the #p1201001#, the #p1201001# will react when you grab the #p1201001#. Please go find the #b#p1201001# and click on it.#k");
|
||||
} else if (status == 7) {
|
||||
if (mode == 0 && type == 15) {
|
||||
qm.sendNext("What's stopping you? I promise, I won't be disappointed even if the #p1201001# shows no reaction to you. Please, rush over there and grab the #p1201001#. Just #bclick#k on it.", 8);
|
||||
} else {
|
||||
qm.forceCompleteQuest();
|
||||
qm.sendOk("If the #p1201001# reacts to you, then we'll know that you're #bAran#k, the hero that wielded a #p1201001#.", 8);
|
||||
qm.showIntro("Effect/Direction1.img/aranTutorial/ClickPoleArm");
|
||||
}
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
68
scripts/quest/21101.js
Normal file
68
scripts/quest/21101.js
Normal file
@@ -0,0 +1,68 @@
|
||||
/*
|
||||
This file is part of the OdinMS Maple Story Server
|
||||
Copyright (C) 2008 Patrick Huy <patrick.huy@frz.cc>
|
||||
Matthias Butz <matze@odinms.de>
|
||||
Jan Christian Meyer <vimes@odinms.de>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
published by the Free Software Foundation version 3 as published by
|
||||
the Free Software Foundation. You may not use, modify or distribute
|
||||
this program under any other version of the GNU Affero General Public
|
||||
License.
|
||||
|
||||
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 Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
importPackage(Packages.client);
|
||||
|
||||
status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
status++;
|
||||
if(mode == 0 && type == 0)
|
||||
status -= 2;
|
||||
else if (mode != 1) {
|
||||
if (mode == 0)
|
||||
qm.sendNext("#b(You need to think about this for a second...)#k");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendYesNo("#b(Are you certain that you were the hero that wielded the #p1201001#? Yes, you're sure. You better grab the #p1201001# really tightly. Surely it will react to you.)#k");
|
||||
} else if (status == 1) {
|
||||
if (qm.getPlayer().getJob().getId() == 2000) {
|
||||
if(!qm.canHold(1142129)) {
|
||||
cm.sendOk("Wow, your #bequip#k inventory is full. I need you to make at least 1 empty slot to complete this quest.");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
qm.gainItem(1142129, true);
|
||||
qm.completeQuest();
|
||||
qm.changeJobById(2100);
|
||||
qm.getPlayer().setStr(35);
|
||||
qm.getPlayer().setDex(4);
|
||||
qm.getPlayer().setRemainingAp((qm.getPlayer().getLevel() - 1) * 5 - 22);
|
||||
qm.getPlayer().setRemainingSp((qm.getPlayer().getLevel() - 10) * 3 + 1);
|
||||
qm.getPlayer().setMaxHp(qm.getPlayer().getMaxHp() + 275);
|
||||
qm.getPlayer().setMaxMp(qm.getPlayer().getMaxMp() + 15);
|
||||
qm.teachSkill(21000000, 0, 10, -1);
|
||||
qm.teachSkill(21001003, 0, 20, -1);
|
||||
//qm.getPlayer().changeSkillLevel(SkillFactory.getSkill(20009000), 0, -1);
|
||||
//qm.getPlayer().changeSkillLevel(SkillFactory.getSkill(20009000), 1, 0);
|
||||
//qm.showInfo("You have acquired the Pig's Weakness skill.");
|
||||
qm.sendNextPrev("#b(You might be starting to remember something...)#k", 3);
|
||||
}
|
||||
} else if (status == 2) {
|
||||
//qm.warp(914090100);
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
}
|
||||
83
scripts/quest/21200.js
Normal file
83
scripts/quest/21200.js
Normal file
@@ -0,0 +1,83 @@
|
||||
/*
|
||||
This file is part of the OdinMS Maple Story Server
|
||||
Copyright (C) 2008 Patrick Huy <patrick.huy@frz.cc>
|
||||
Matthias Butz <matze@odinms.de>
|
||||
Jan Christian Meyer <vimes@odinms.de>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
published by the Free Software Foundation version 3 as published by
|
||||
the Free Software Foundation. You may not use, modify or distribute
|
||||
this program under any other version of the GNU Affero General Public
|
||||
License.
|
||||
|
||||
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 Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
importPackage(Packages.client);
|
||||
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
status++;
|
||||
if (mode != 1){
|
||||
if (mode == 0 && type == 12)
|
||||
qm.sendNext("Come back again when you have took your desition wisely.");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
if(status == 0)
|
||||
qm.sendAcceptDecline("How is the training going? Wow, you've reached such a high level! That's amazing. I knew you would do just fine on Victoria Island... Oh, look at me. I'm wasting your time. I know you're busy, but you'll have to return to the island for a bit.");
|
||||
else if(status == 1){
|
||||
qm.sendOk("Your #b#p1201001##k in #b#m140000000##k is acting strange all of a sudden. According to the records, the Polearm acts this way when it is calling for its master. #bPerhaps it's calling for you#k. Please return to the island and check things out.");
|
||||
qm.startQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
status++;
|
||||
if (mode != 1){
|
||||
if (mode == 0 && type == 1)
|
||||
qm.sendNext("Hey! At least say you tried!");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
if (status == 0)
|
||||
qm.sendNext("Voom voom voom voom voom...."); //Giant Polearm
|
||||
else if (status == 1)
|
||||
qm.sendNextPrev("#b(The #p1201001# is producing an undulating echo. But who is that boy standing over there?)", 2);
|
||||
else if (status == 2)
|
||||
qm.sendNextPrev("#b(You've never seen him before. He doesn't look human.)", 2);
|
||||
else if (status == 3)
|
||||
qm.sendNextPrev("Yo, Aran! Do you not hear me? I said, do you not hear me! Ugh, how frustating!");
|
||||
else if (status == 4)
|
||||
qm.sendNextPrev("#b(Hm? Who's voice was that? It sounds like an angry boy...)", 2);
|
||||
else if (status == 5)
|
||||
qm.sendNextPrev("Ugh, my only master had to end up trapped in ice for hundreds of years, abandoning me completeley, and is now completely ignoring me.");
|
||||
else if (status == 6)
|
||||
qm.sendNextPrev("Who...are you?", 2);
|
||||
else if (status == 7)
|
||||
qm.sendNextPrev("Aran? Do you hear me now? It's me! Don't you recognize me? I'm your weapon, #b#p1201002# the Polearm#k!");
|
||||
else if (status == 8)
|
||||
qm.sendNextPrev("#b(...#p1201002#? A #p1201001# can talk?)", 2);
|
||||
else if (status == 9)
|
||||
qm.sendNextPrev("What's with that suspicious look on your face? I know you've lost your memory, but did you forgot about me, too? How could you?!");
|
||||
else if (status == 10)
|
||||
qm.sendNextPrev("I'm so sorry, but I can't remember a thing.", 2);
|
||||
else if (status == 11)
|
||||
qm.sendYesNo("Sorry doesn't cut it! Do you know how lonely and bored I was for hundreds of years? I don't care what it takes! Remember me! Remember me now!");
|
||||
else if (status == 12){
|
||||
qm.completeQuest();
|
||||
qm.sendNext("#b(The voice that claims to be #p1201002# the #p1201001# is yelling in frustration. You don't think this conversation is going anywhere. You better go talk to #p1201000# first.)", 2);
|
||||
//qm.sendNoExit("#b(The voice that claims to be #p1201002# the #p1201001# is yelling in frustration. You don't think this conversation is going anywhere. You better go talk to #p1201000# first.)", true);
|
||||
}else if (status == 13){
|
||||
//qm.showVideo("Maha");
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
70
scripts/quest/21201.js
Normal file
70
scripts/quest/21201.js
Normal file
@@ -0,0 +1,70 @@
|
||||
/*
|
||||
This file is part of the OdinMS Maple Story Server
|
||||
Copyright (C) 2008 Patrick Huy <patrick.huy@frz.cc>
|
||||
Matthias Butz <matze@odinms.de>
|
||||
Jan Christian Meyer <vimes@odinms.de>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
published by the Free Software Foundation version 3 as published by
|
||||
the Free Software Foundation. You may not use, modify or distribute
|
||||
this program under any other version of the GNU Affero General Public
|
||||
License.
|
||||
|
||||
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 Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
importPackage(Packages.client);
|
||||
|
||||
var status = -1;
|
||||
|
||||
function end(mode, type, selection) {
|
||||
status++;
|
||||
if (mode != 1){
|
||||
if (mode == 0 && type == 1)
|
||||
qm.sendNext("Hey! At least say you tried!");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
if (status == 0)
|
||||
qm.sendNext("First you promise to defeat the Black Mage and make me a famous weapon, then you abandon me for hundreds of years, and now you're telling me you don't remember who I am? What the...?! Do you think I will let you get away with that? You're the one who begged and pined for me!"); //Giant Polearm
|
||||
else if (status == 1)
|
||||
qm.sendNextPrev("I did tell #p1203000# to make a pole arm for me if I could prove my worth.", 2);
|
||||
else if (status == 2)
|
||||
qm.sendNextPrev("After all that begging, shouldn't you treat me with a little more love and respect? Ya know, a weapon like me's a rare and wonderful thing. I am the ultimate #p1201001# that can help you defeat the Black Mage. How could you ditch me for hundreds of years?");
|
||||
else if (status == 3)
|
||||
qm.sendNextPrev("Hey, I never begged for you.", 2);
|
||||
else if (status == 4)
|
||||
qm.sendNextPrev("What? You never begged for me? Ha! #p1203000# told me you got on your knees, begged for me in tears, and... Wait a sec. Aran! Did you just remember who I am?");
|
||||
else if (status == 5)
|
||||
qm.sendNextPrev("Maybe a little bit...", 2);
|
||||
else if (status == 6)
|
||||
qm.sendNextPrev("Aran, it is you! *Sniff sniff* Wait, *ahem* I didn't get emotional, it's just allergies. I know the Black Mage has stripped you of your abilities so you probably don't even have the strength to lift me... but at least you remember me! I'm glad that your memory's starting to return.");
|
||||
else if (status == 7)
|
||||
qm.sendAcceptDecline("Even though you've lost your memory, you're still my master. You endured some very tough training in the past, and I'm sure your body still remembers the skills you got through those hard times. Alright, I'll restore your abilities!");
|
||||
else if (status == 8) {
|
||||
if(!qm.isQuestCompleted(21201)) {
|
||||
if(!qm.canHold(1142130)) {
|
||||
cm.sendOk("Wow, your #bequip#k inventory is full. I need you to make at least 1 empty slot to complete this quest.");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
|
||||
qm.gainItem(1142130, true);
|
||||
qm.getPlayer().setMaxMp(qm.getPlayer().getMaxMp() + 275);
|
||||
qm.changeJobById(2110);
|
||||
qm.teachSkill(21100000, 0, 20, -1);
|
||||
qm.teachSkill(21100002, 0, 30, -1);
|
||||
qm.teachSkill(21100004, 0, 20, -1);
|
||||
qm.teachSkill(21100005, 0, 20, -1);
|
||||
qm.completeQuest();
|
||||
}
|
||||
qm.sendNext("Your level isn't what it used to be back in your glory days, so I can't restore all of your old abilities. But the few I can restore should help you level up faster. Now hurry up and train so you can return to the old you.");
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
75
scripts/quest/21202.js
Normal file
75
scripts/quest/21202.js
Normal file
@@ -0,0 +1,75 @@
|
||||
/*
|
||||
This file is part of the OdinMS Maple Story Server
|
||||
Copyright (C) 2008 Patrick Huy <patrick.huy@frz.cc>
|
||||
Matthias Butz <matze@odinms.de>
|
||||
Jan Christian Meyer <vimes@odinms.de>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
published by the Free Software Foundation version 3 as published by
|
||||
the Free Software Foundation. You may not use, modify or distribute
|
||||
this program under any other version of the GNU Affero General Public
|
||||
License.
|
||||
|
||||
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 Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
status++;
|
||||
if (mode != 1){
|
||||
if (mode == 0 && type == 1)
|
||||
qm.sendNext("Do you not want to put in the work to get the ultimate weapon?");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendNext("Hmm.. What's a young person like you doing in this secluded place?");
|
||||
} else if(status == 1) {
|
||||
qm.sendNextPrev("I've come to get the best Polearm there is!", 2);
|
||||
} else if(status == 2) {
|
||||
qm.sendNextPrev("The best Polearm? You should be able to purchase it in some town or other place..");
|
||||
} else if(status == 3) {
|
||||
qm.sendNextPrev("I hear you are the best blacksmith in all of Maple World! I want nothing less than a weapon made by you!", 2);
|
||||
} else if(status == 4) {
|
||||
qm.sendAcceptDecline("I'm too old to make weapons now, but.. I do have a Polearm that I made way back when. It's still in excellent shape. But I can't give it to you because that Polearm is extremely sharp, so sharp it could hurt its master. Do you still want it?");
|
||||
} else if(status == 5) {
|
||||
qm.sendOk("Well, if you say so.. I can't object to that. I'll tell you what. I'll give you a quick test, and if you pass it, the Giant Polearm is yours. Head over to the #bTraining Center#k and take on the #rScarred Bears#k that are there. Your job is to bring back #b30 Sign of Acceptances#k.");
|
||||
qm.startQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
status++;
|
||||
if (mode != 1){
|
||||
if (mode == 0 && type == 1)
|
||||
qm.sendNext("Hm? Are you hesitant to take it now after all that? Well, give it more thought if you'd like. It'll be yours in the end anyways.");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
if (status == 0) {
|
||||
if(qm.haveItem(4032311, 30))
|
||||
qm.sendNext("Oh, have you brought me the #t4032311#? You're stronger than I thought! But more importantly, I am impressed with the amount of courage you displayed when you agreed to take this dangerous weapon without any hesitation. You deserve it. The #p1201001# is yours.");
|
||||
else{
|
||||
qm.sendNext("Go for the #t4032311#.");
|
||||
qm.dispose();
|
||||
}
|
||||
}else if (status == 1)
|
||||
qm.sendNextPrev("#b(After a long time passed, #p1203000# handed you the #p1201001#, which was carefully wrapped in cloth.)");
|
||||
else if (status == 2)
|
||||
qm.sendYesNo("Here, this is #p1201002#, the Polearm you've asked for. Please take good care of it.");
|
||||
else if (status == 3){
|
||||
//qm.showVideo("Polearm");
|
||||
qm.completeQuest();
|
||||
qm.removeAll(4032311);
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
38
scripts/quest/2124.js
Normal file
38
scripts/quest/2124.js
Normal file
@@ -0,0 +1,38 @@
|
||||
/*
|
||||
This file is part of the OdinMS Maple Story Server
|
||||
Copyright (C) 2008 Patrick Huy <patrick.huy@frz.cc>
|
||||
Matthias Butz <matze@odinms.de>
|
||||
Jan Christian Meyer <vimes@odinms.de>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
published by the Free Software Foundation version 3 as published by
|
||||
the Free Software Foundation. You may not use, modify or distribute
|
||||
this program under any other version of the GNU Affero General Public
|
||||
License.
|
||||
|
||||
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 Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
/*
|
||||
Author : Ronan Lana
|
||||
*/
|
||||
|
||||
function end(mode, type, selection) {
|
||||
|
||||
if(!qm.haveItem(4031619, 1)) {
|
||||
qm.sendOk("Please bring me the box with the supplies that lies with #b#p2012019##k...");
|
||||
}
|
||||
else {
|
||||
qm.gainItem(4031619, -1);
|
||||
qm.sendOk("Oh, you brought #p2012019#'s box! Thank you.");
|
||||
qm.forceCompleteQuest();
|
||||
}
|
||||
|
||||
qm.dispose();
|
||||
}
|
||||
38
scripts/quest/2126.js
Normal file
38
scripts/quest/2126.js
Normal file
@@ -0,0 +1,38 @@
|
||||
/*
|
||||
This file is part of the OdinMS Maple Story Server
|
||||
Copyright (C) 2008 Patrick Huy <patrick.huy@frz.cc>
|
||||
Matthias Butz <matze@odinms.de>
|
||||
Jan Christian Meyer <vimes@odinms.de>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
published by the Free Software Foundation version 3 as published by
|
||||
the Free Software Foundation. You may not use, modify or distribute
|
||||
this program under any other version of the GNU Affero General Public
|
||||
License.
|
||||
|
||||
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 Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
/*
|
||||
Author : Ronan Lana
|
||||
*/
|
||||
|
||||
function end(mode, type, selection) {
|
||||
|
||||
if(!qm.haveItem(4031619, 1)) {
|
||||
qm.sendOk("Please bring me the box with the supplies that lies with #b#p2012019##k...");
|
||||
}
|
||||
else {
|
||||
qm.gainItem(4031619, -1);
|
||||
qm.sendOk("Oh, you brought #p2012019#'s box! Thank you.");
|
||||
qm.forceCompleteQuest();
|
||||
}
|
||||
|
||||
qm.dispose();
|
||||
}
|
||||
31
scripts/quest/2127.js
Normal file
31
scripts/quest/2127.js
Normal file
@@ -0,0 +1,31 @@
|
||||
/*
|
||||
This file is part of the OdinMS Maple Story Server
|
||||
Copyright (C) 2008 Patrick Huy <patrick.huy@frz.cc>
|
||||
Matthias Butz <matze@odinms.de>
|
||||
Jan Christian Meyer <vimes@odinms.de>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
published by the Free Software Foundation version 3 as published by
|
||||
the Free Software Foundation. You may not use, modify or distribute
|
||||
this program under any other version of the GNU Affero General Public
|
||||
License.
|
||||
|
||||
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 Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
/*
|
||||
Author : Ronan Lana
|
||||
*/
|
||||
|
||||
function end(mode, type, selection) {
|
||||
qm.sendOk("I see you're ready for the task. Now, pay heed to the details of your mission...");
|
||||
qm.forceCompleteQuest();
|
||||
|
||||
qm.dispose();
|
||||
}
|
||||
23
scripts/quest/21300.js
Normal file
23
scripts/quest/21300.js
Normal file
@@ -0,0 +1,23 @@
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
status++;
|
||||
if(mode == 0 && type == 0)
|
||||
status -= 2;
|
||||
else if (mode != 1) {
|
||||
//if (mode == 0)
|
||||
qm.sendNext("#b(You need to think about this for a second...)#k");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
|
||||
if (status == 0) {
|
||||
qm.sendNext("How's the training going? Hmmm... Level 70... That's still not much, but you have really made some strides since the first time I met you fresh out of ice. Keep training, and I am sure one day you'll be able to regain your pre-battle form.");
|
||||
} else if (status == 1) {
|
||||
qm.sendAcceptDecline("But before doing that, I'll need you back in Rein for a bit. #bYour pole arm is reacting strange once again. It looks like it has something it wants to tell you. #kIt might be able to awaken your hidden powers, so please come immediately.");
|
||||
} else if (status == 2) {
|
||||
qm.sendOk("Anyway, I thought it was really something that a weapon has its own identity, but seriously... this weapon does not stop talking. It first kept on crying because I wasn't really paying attention to its needs, and... ahh, please keep this a secret from the pole arm. I don't think it's a good idea to upset the weapon any further.");
|
||||
qm.forceStartQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
31
scripts/quest/21301.js
Normal file
31
scripts/quest/21301.js
Normal file
@@ -0,0 +1,31 @@
|
||||
var status = -1;
|
||||
|
||||
function end(mode, type, selection) {
|
||||
status++;
|
||||
if(mode == 0 && type == 0)
|
||||
status -= 2;
|
||||
else if (mode != 1) {
|
||||
//if (mode == 0)
|
||||
qm.sendNext("#b(You need to think about this for a second...)#k");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
|
||||
if (status == 0) {
|
||||
qm.sendNext("Did you manage to slay #o9001013#? Hahaha... you're my master, indeed. Okay, now give me the Red Jade that you found there. I'll have to put it back on the body, and... wait, why aren't you saying a word? Don't tell me... that you didn't bring that back!");
|
||||
} else if (status == 1) {
|
||||
qm.sendNextPrev("What?! You really didn't bring back the Red Jade? Why? Did you just completely forget it? Ahh... even with the curse of the Black Mage, and the amount of time that has passed and all, never did I think my master would turn out to be stupid...");
|
||||
} else if (status == 2) {
|
||||
qm.sendNextPrev("No, no, I can't let this put me in despair. This is when I should remain calm and in control, unlike my master...\r\noosah..." );
|
||||
} else if (status == 3) {
|
||||
qm.sendNextPrev("Even if you go back there now, the thief probably made its way out of there. This means you'll have to make the Red Jade anew. You've made one before, so you do remember the materials required to make one, right? Now go...");
|
||||
} else if (status == 4) {
|
||||
qm.sendNextPrev("\r\n\r\n\r\nTHIS GUY HAS DEFINITELY LOST ALL MEMORIES!");
|
||||
} else if (status == 5) {
|
||||
qm.sendNextPrev("...No hope, no dreams... Nooooo!!");
|
||||
} else if (status == 6) {
|
||||
qm.sendNextPrev("#b(Maha is beginning to really get hysterical. I better leave right this minute. Maybe Lirin can do something about it.)", 2);
|
||||
qm.completeQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
56
scripts/quest/21302.js
Normal file
56
scripts/quest/21302.js
Normal file
@@ -0,0 +1,56 @@
|
||||
/*
|
||||
This file is part of the OdinMS Maple Story Server
|
||||
Copyright (C) 2008 Patrick Huy <patrick.huy@frz.cc>
|
||||
Matthias Butz <matze@odinms.de>
|
||||
Jan Christian Meyer <vimes@odinms.de>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
published by the Free Software Foundation version 3 as published by
|
||||
the Free Software Foundation. You may not use, modify or distribute
|
||||
this program under any other version of the GNU Affero General Public
|
||||
License.
|
||||
|
||||
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 Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
importPackage(Packages.client);
|
||||
|
||||
var status = -1;
|
||||
|
||||
function end(mode, type, selection) {
|
||||
status++;
|
||||
if (mode != 1){
|
||||
if (mode == 0 && type == 1)
|
||||
qm.sendNext("Hey! At least say you tried!");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
if (status == 0)
|
||||
qm.sendNext("Wait.. Isn't that.. Did you remember how to make Red Jade?\r\nWow... you may be stupid and prone to amnesia, but this is why I can't abandon you. Now give me the jade!"); //Giant Polearm
|
||||
else if (status == 1)
|
||||
qm.sendNextPrev("Okay, now that I have the Red Jade back on, let me work on reawakening more of your abilities. I mean, your level's gone much higher since the last time we met, so I am sure I can work my magic a bit more this time!");
|
||||
else if (status == 2) {
|
||||
if(!qm.isQuestCompleted(21302)) {
|
||||
if(!qm.canHold(1142131)) {
|
||||
cm.sendOk("Wow, your #bequip#k inventory is full. I need you to make at least 1 empty slot to complete this quest.");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
|
||||
qm.gainItem(1142131, true);
|
||||
qm.getPlayer().setMaxMp(qm.getPlayer().getMaxMp() + 275);
|
||||
qm.getPlayer().setMaxHp(qm.getPlayer().getMaxHp() + 275);
|
||||
qm.changeJobById(2111);
|
||||
qm.teachSkill(21110002, 0, 20, -1);
|
||||
qm.completeQuest();
|
||||
}
|
||||
qm.sendNext("Come on, keep training so you can get all your abilities back, and that way we can explore together once more!");
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
21
scripts/quest/21400.js
Normal file
21
scripts/quest/21400.js
Normal file
@@ -0,0 +1,21 @@
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
status++;
|
||||
if(mode == 0 && type == 0)
|
||||
status -= 2;
|
||||
else if (mode != 1) {
|
||||
//if (mode == 0)
|
||||
qm.sendNext("#b(You need to think about this for a second...)#k");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
|
||||
if (status == 0) {
|
||||
qm.sendAcceptDecline("How is the training going? I know you're busy, but please come to #bRien#k immediately. The #bMaha#k has started to act weird again... But its even weirder now. It's different from before. It's... darker than usual.");
|
||||
} else if (status == 1) {
|
||||
qm.sendOk("I have a bad feeling about this. Please come back here. I've never seen or herd Maha like this, but I can sense the suffering its going through. #bOnly you, the master of Maha, can do something about it!");
|
||||
qm.startQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
78
scripts/quest/21401.js
Normal file
78
scripts/quest/21401.js
Normal file
@@ -0,0 +1,78 @@
|
||||
importPackage(Packages.server.life);
|
||||
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
status++;
|
||||
if(mode == 0 && type == 0)
|
||||
status -= 2;
|
||||
else if (mode != 1) {
|
||||
//if (mode == 0)
|
||||
qm.sendNext("#b(You need to think about this for a second...)#k");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
|
||||
if (status == 0) {
|
||||
qm.sendNext("Why do I look like this, you ask? I don't want to talk about it, but I suppose I can't hide from you since you're my master.");
|
||||
} else if (status == 1) {
|
||||
qm.sendNextPrev("While you were trapped inside ice for hundreds of years, I, too, was frozen. It was a long time to be away from you. That's when the seed of darkness was planted in my heart.");
|
||||
} else if (status == 2) {
|
||||
qm.sendNextPrev("But since you awoke, I thought the darkness had gone away. I thought things would return to the way they were. But I was mistaken...");
|
||||
} else if (status == 3) {
|
||||
qm.sendAcceptDecline("Please, Aran. Please stop me from becoming enraged. Only you can control me. It's getting out of my hands now. Please do whatever it takes to #rstop me from going berserk#k!");
|
||||
} else if (status == 4) {
|
||||
qm.startQuest();
|
||||
|
||||
var map = qm.getClient().getChannelServer().getMapFactory().getMap(914020000);
|
||||
spawnMob(-365, 86, 9001014, map);
|
||||
qm.warp(914020000);
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
status++;
|
||||
if(mode == 0 && type == 0)
|
||||
status -= 2;
|
||||
else if (mode != 1) {
|
||||
//if (mode == 0)
|
||||
qm.sendNext("#b(You need to think about this for a second...)#k");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
|
||||
if (status == 0) {
|
||||
qm.sendNext("Thank you, Aran. If it weren't for you, I would have become enraged and who knows what could have happened. Thank you, NOT! It's only your duty as my master...");
|
||||
} else if(status == 1) {
|
||||
qm.sendYesNo("Anyway, I just noticed how high of a level you've reached. If you were able to control me in my state of rage, I think you're ready to handle more abilities.");
|
||||
} else if(status == 2) {
|
||||
if(!qm.isQuestCompleted(21401)) {
|
||||
if(!qm.canHold(1142132)) {
|
||||
cm.sendOk("Wow, your #bequip#k inventory is full. I need you to make at least 1 empty slot to complete this quest.");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
|
||||
qm.gainItem(1142132, true);
|
||||
qm.changeJobById(2112);
|
||||
|
||||
|
||||
qm.teachSkill(21121000, 0, 10, -1);
|
||||
qm.teachSkill(21120001, 0, 10, -1);
|
||||
qm.teachSkill(21121003, 0, 10, -1);
|
||||
qm.teachSkill(21120002, 0, 10, -1);
|
||||
|
||||
qm.completeQuest();
|
||||
}
|
||||
qm.sendNext("Your skills have been restored. Those skills have been dormant for so long that you'll have to re-train yourself, but you'll be as good as new once you complete your training.");
|
||||
}
|
||||
}
|
||||
|
||||
function spawnMob(x, y, id, map) {
|
||||
if(map.getMonsterById(id) != null)
|
||||
return;
|
||||
|
||||
var mob = MapleLifeFactory.getMonster(id);
|
||||
map.spawnMonsterOnGroudBelow(mob, new java.awt.Point(x, y));
|
||||
}
|
||||
10
scripts/quest/2148.js
Normal file
10
scripts/quest/2148.js
Normal file
@@ -0,0 +1,10 @@
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
qm.sendNext("Some bats seems to accompany this tree wherever it goes. Creepy...");
|
||||
qm.forceCompleteQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
function end(mode, type, selection) {
|
||||
qm.dispose();
|
||||
}
|
||||
10
scripts/quest/2149.js
Normal file
10
scripts/quest/2149.js
Normal file
@@ -0,0 +1,10 @@
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
qm.sendNext("It is said that a old tree gets alive whenever something sinister disturbs this land... We need a hero that fends our village of that creature!");
|
||||
qm.forceCompleteQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
function end(mode, type, selection) {
|
||||
qm.dispose();
|
||||
}
|
||||
10
scripts/quest/2150.js
Normal file
10
scripts/quest/2150.js
Normal file
@@ -0,0 +1,10 @@
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
qm.sendNext("The tree has a scarf upon its branches, I tell you.");
|
||||
qm.forceCompleteQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
function end(mode, type, selection) {
|
||||
qm.dispose();
|
||||
}
|
||||
10
scripts/quest/2151.js
Normal file
10
scripts/quest/2151.js
Normal file
@@ -0,0 +1,10 @@
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
qm.sendNext("The tree has a strange carving that resembles a scary face.");
|
||||
qm.forceCompleteQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
function end(mode, type, selection) {
|
||||
qm.dispose();
|
||||
}
|
||||
10
scripts/quest/2152.js
Normal file
10
scripts/quest/2152.js
Normal file
@@ -0,0 +1,10 @@
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
qm.sendNext("That tree... I've heard of it before, I even studied its behavior! If I recall correctly, the #bStumpy#k comes alive when the soil deems infertile by some sort of magic, and those stumps who evolves under these conditions starts to drain these suspicious magical sources instead of water and minerals for living, which makes them very threathening to people and villages nearby.");
|
||||
qm.forceCompleteQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
function end(mode, type, selection) {
|
||||
qm.dispose();
|
||||
}
|
||||
12
scripts/quest/2156.js
Normal file
12
scripts/quest/2156.js
Normal file
@@ -0,0 +1,12 @@
|
||||
var status = -1;
|
||||
|
||||
function end(mode, type, selection) {
|
||||
qm.sendNext("Oh, you brought it back! Thank you so much!");
|
||||
|
||||
qm.gainItem(2210006, -1);
|
||||
qm.gainExp(7500 * qm.getPlayer().getExpRate());
|
||||
qm.gainMeso(30000 * qm.getPlayer().getMesoRate());
|
||||
qm.gainFame(3);
|
||||
qm.forceCompleteQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
38
scripts/quest/21700.js
Normal file
38
scripts/quest/21700.js
Normal file
@@ -0,0 +1,38 @@
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == 1) {
|
||||
status++;
|
||||
} else {
|
||||
if (status == 4) {
|
||||
qm.sendNext("No? Are you saying you can train on your own? I'm just letting you know that you'll get better results if you train with an instructor. You can't live in this world alone. You must learn to get along with other people.");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
status--;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendNext("It seems like you've started to remember things. Your Polearm must have recognized you. This means you are surely #bAran, the wielder of Polearms#k. Is there anything else you remember? Skills you used with the Polearm perhaps? Anything?");
|
||||
} else if (status == 1) {
|
||||
qm.sendNextPrev("#b(You tell her that you remember a few skills.)#k", 2);
|
||||
} else if (status == 2) {
|
||||
qm.sendNextPrev("That's not a lot, but it's progress. Our focus, then, should be to get you back to the state before you were frozen. You may have lost your memory, but I'm sure it won't take long for you to recover the abilities that your body remembers.");
|
||||
} else if (status == 3) {
|
||||
qm.sendNextPrev('How do I recover my abilities?', 2);
|
||||
} else if (status == 4) {
|
||||
qm.sendAcceptDecline("There is only one way to do that. Train! Train! Train! Train! If you continue to train, your body will instinctively remember its abilities. To help you through the process, I'll introduce you to an instructor.");
|
||||
} else if (status == 5) {
|
||||
qm.sendNext("I gave you a #bPolearm#k because I figured it would be best for you to use a weapon you're familiar with. It will be useful in your training.");
|
||||
if (!qm.isQuestStarted(21700) && !qm.isQuestCompleted(21700)) {
|
||||
qm.gainItem(1442000,1);
|
||||
qm.forceStartQuest();
|
||||
}
|
||||
} else if (status == 6) {
|
||||
qm.sendPrev("You'll find a Training Center if you exit to the #bleft#k. There, you''ll meet #b#p1202006##k. I'm a bit worried because I think he may be struggling with bouts of Alzheimer's, but he spent a long time researching skills to help you. I'm sure you'll learn a thing or two from him.");
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
qm.dispose();
|
||||
}
|
||||
68
scripts/quest/21703.js
Normal file
68
scripts/quest/21703.js
Normal file
@@ -0,0 +1,68 @@
|
||||
|
||||
importPackage(Packages.client);
|
||||
var status = -1;
|
||||
|
||||
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == 1) {
|
||||
status++;
|
||||
} else {
|
||||
if (status == 6) {
|
||||
qm.sendNext("I know it takes an incredible amount of strength and will to outdo your instructor, but you weren't meant to let yourself wither away. You must move on to bigger and better things! You must do everything you can to embrace your heroic nature!");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
status--;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendNext("Your abilities are really beginning to take shape. I am surprised that an old man like me was able to help you. I''m tearing up just thinking about how happy it makes me to have been of assistance to you. *Sniff sniff*");
|
||||
} else if (status == 1) {
|
||||
qm.sendNextPrev("#b(You didn't even train that long with him... Why is he crying?)#k", 2);
|
||||
} else if (status == 2) {
|
||||
qm.sendNextPrev("Alright, here''s the third and the final stage of training. Your last opponent is... #r#o9300343#s#k! Do you know anything about #o1210100#s?");
|
||||
} else if (status == 3) {
|
||||
qm.sendNextPrev('Well, a little bit...', 2);
|
||||
} else if (status == 4) {
|
||||
qm.sendNextPrev("They are natural warriors! They''re born with a voracious appetite for food. They devour any food that''s visible the moment they sweep by. Terrifying, isn''t it?");
|
||||
} else if (status == 5) {
|
||||
qm.sendNextPrev("#b(Is that really true?)#k", 2);
|
||||
} else if (status == 6) {
|
||||
qm.sendAcceptDecline("Okay, now... #bEnter the Training Center again#k, defeat #r30#k #o9300343#s, and show me what you're made of! You'll have to exert all your energy to defeat them! Go, go, go! Rise above me!");
|
||||
} else if (status == 7) {
|
||||
qm.forceStartQuest();
|
||||
qm.sendOk("Now go and take on those monstrous #o9300343#s!");
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
if (mode == 1) {
|
||||
status++;
|
||||
} else {
|
||||
if (status == 2) {
|
||||
qm.sendNext("Are you reluctant to leave your instructor? *Sniff sniff* I'm so moved, but you can't stop here. You are destined for bigger and better things!");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
status--;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendNext("Ah, you've come back after defeating all 30 #o9300343#s. I knew you had it in you... Even though you have no memories and few abilities, I could see that you were different! How? Because you're carrying around a Polearm, obviously!");
|
||||
} else if (status == 1) {
|
||||
qm.sendNextPrev("#b(Is he pulling your leg?)#k'", 2);
|
||||
} else if (status == 2) {
|
||||
qm.sendYesNo("I have nothing more to teach you, as you've surpassed my level of skill. Go now! Don't look back! This old man is happy to have served as your instructor.");
|
||||
} else if (status == 3) {
|
||||
if (qm.isQuestStarted(21703)) {
|
||||
qm.forceCompleteQuest();
|
||||
qm.teachSkill(21000000, qm.getPlayer().getSkillLevel(21000000), 10, -1); // Combo Ability Skill
|
||||
qm.gainExp(2800);
|
||||
}
|
||||
qm.sendNext("(You remembered the #bCombo Ability#k skill! You were skeptical of the training at first, since the old man suffers from Alzheimer's and all, but boy, was it effective!)", 2);
|
||||
qm.showInfo("Effect/BasicEff.img/AranGetSkill");
|
||||
} else if (status == 4) {
|
||||
qm.sendPrev("Now report back to #p1201000#. I know she'll be ecstatic when she sees the progress you've made!");
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
28
scripts/quest/21704.js
Normal file
28
scripts/quest/21704.js
Normal file
@@ -0,0 +1,28 @@
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == 1) {
|
||||
status++;
|
||||
} else {
|
||||
if (status == 2) {
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
status--;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendNext("How did the training go? The Penguin Teacher #p1202006# likes to exaggerate and it worried me knowing that he has bouts of Alzheimer's, but I'm sure he helped you. He's been studying the skills of heroes for a very long time.");
|
||||
} else if (status == 1) {
|
||||
qm.sendNextPrev("#b(You tell her that you were able to remember the Combo Ability skill.)#k", 2);
|
||||
} else if (status == 2) {
|
||||
qm.sendAcceptDecline("That's great! Honestly, though, I think it has less to do with the method of #p1202006#'s training and more to do with your body remembering its old abilities. #bI'm sure your body will remember more skills as you continue to train#k! \r\n\r\n#fUI/UIWindow.img/QuestIcon/8/0# 500 exp");
|
||||
} else if (status == 3) {
|
||||
qm.forceCompleteQuest();
|
||||
qm.gainExp(500);
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
qm.dispose();
|
||||
}
|
||||
29
scripts/quest/21712.js
Normal file
29
scripts/quest/21712.js
Normal file
@@ -0,0 +1,29 @@
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == 1) {
|
||||
status++;
|
||||
} else {
|
||||
if (status == 2) {
|
||||
qm.sendNext("You still don't understand what's going on? I'll explain it to you again if you talk to me one more time.");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
status--;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendNext("#t4032315#... #rThis puppet is making a strange noise#k. You can't hear it with your ears, of course, since it can only be heard by the #o1210102#s. I believe it's this noise that changed the personality of the #o1210102#s.");
|
||||
} else if (status == 1) {
|
||||
qm.sendAcceptDecline("The #o1210102#s that have been affected by the noise have turned cynical. They've started fighting the non-affected #o1210102#s, which has made all #o1210102#s prepare for combat. #bThe reason for all these changes in the #o1210102#s is this puppet#k! Do you understand?");
|
||||
} else if (status == 2) {
|
||||
qm.forceStartQuest();
|
||||
qm.sendNext("I wonder what triggered this in the first place. There is no way this puppet was naturally created, which means someone planned this. I should keep an eye on the #o1210102#s.", 9);
|
||||
} else if (status == 3) {
|
||||
qm.sendPrev("#b(You were able to find out what caused the changes in the #o1210102#s. You should report to #p1002104# and deliver the information you''ve gathered.)#k", 2);
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
qm.dispose();
|
||||
}
|
||||
32
scripts/quest/21716.js
Normal file
32
scripts/quest/21716.js
Normal file
@@ -0,0 +1,32 @@
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == 1) {
|
||||
status++;
|
||||
} else {
|
||||
if (status == 2) {
|
||||
qm.sendNext("What? I don''t think there are any suspects besides that kid. Please think again.");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
status--;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendNext("What did #p1032112# say?", 8);
|
||||
} else if (status == 1) {
|
||||
qm.sendNextPrev("#b(You tell her what #p1032112# observed.)#k", 2);
|
||||
} else if (status == 2) {
|
||||
qm.sendAcceptDecline("A kid with a puppet? That seems very suspicious. I am sure that kid is the reason the Green Mushrooms have suddenly turned violent.");
|
||||
} else if (status == 3) {
|
||||
qm.forceStartQuest();
|
||||
qm.sendNext("How dare this kid wreak havoc in the South Forest. Who knows how long it will take to restore the forest... I''ll have to devote most of my time cleaning up the mess.", 2);
|
||||
} else if (status == 4) {
|
||||
qm.sendPrev("#b(You were able to find out what caused the changes in the Green Mushrooms. You should report #p1002104# and deliver the information you''ve collected.)#k", 2);
|
||||
} else if (status == 5) {
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
qm.dispose();
|
||||
}
|
||||
28
scripts/quest/21719.js
Normal file
28
scripts/quest/21719.js
Normal file
@@ -0,0 +1,28 @@
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == 1) {
|
||||
status++;
|
||||
} else {
|
||||
if (status == 2) {
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
status--;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendNext("Aren''t you the one that used to be in #m101000000# until not too long ago? I finally found you! Do you know how long it took for me to finally find you?", 8);
|
||||
} else if (status == 1) {
|
||||
qm.sendNextPrev("Who are you?", 2);
|
||||
} else if (status == 2) {
|
||||
qm.sendAcceptDecline("Me? If you want to know, stop by my cave. I'll even send you an invitation. You'll be directly sent to my cave as soon as you accept. Look forward to seeing you there.");
|
||||
} else if (status == 3) {
|
||||
qm.forceCompleteQuest();
|
||||
qm.warp(910510200, 0);
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
qm.dispose();
|
||||
}
|
||||
48
scripts/quest/21720.js
Normal file
48
scripts/quest/21720.js
Normal file
@@ -0,0 +1,48 @@
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
qm.dispose();
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
if (mode == 1) {
|
||||
status++;
|
||||
} else {
|
||||
if (status == 6) {
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
status--;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendNext("What can I do for you? Tru sent me a message saying that you've been training diligently in Victoria Island while helping him with his work. What is it? What? The Black Wings?", 8);
|
||||
} else if (status == 1) {
|
||||
qm.sendNextPrev("#b(You tell her about the Puppeteer and the Black Wings, and about their mission.)#k", 2);
|
||||
} else if (status == 2) {
|
||||
qm.sendNextPrev("I see... I didn''t know there was a group called the Black Wings... They must be fools if they''re trying to revive the Black Mage, knowing how dangerous he is.", 8);
|
||||
} else if (status == 3) {
|
||||
qm.sendNextPrev("That...that''s true...\r\r#b(She''s definitely not afraid to speak her mind.)#k", 2);
|
||||
} else if (status == 4) {
|
||||
qm.sendNextPrev("The Book of Prophecy states that the hero will revive and fight against the Black Mage. I wasn''t sure if that was true, but this confirms that the Black Mage is still around.", 8);
|
||||
} else if (status == 5) {
|
||||
qm.sendNextPrev("Aren't you scared?", 2);
|
||||
} else if (status == 6) {
|
||||
qm.sendYesNo("Scared? Pfft. Who cares if the Black Mage appears. You'll be here to protect us. If anything, this makes me want to prepare you for the big battle. Ah, that reminds me, I found a #bskill#k. Would you like to see it?");
|
||||
} else if (status == 7) {
|
||||
if (qm.getQuestStatus(21720) == 0) {
|
||||
qm.forceCompleteQuest();
|
||||
qm.teachSkill(21001003, qm.getPlayer().getSkillLevel(21001003), 20, -1);
|
||||
qm.gainExp(3900);
|
||||
}
|
||||
qm.showIntro("Effect/BasicEff.img/AranGetSkill");
|
||||
qm.sendNext('#b(You remembered the Polearm Booster skill!)#k', 2);
|
||||
} else if (status == 8) {
|
||||
qm.sendNextPrev("This skill was found in an ancient incomprehensible script. I had a hunch it might be a skill you used in the past, and I think I was right. You're not as strong as you used to be, but you'll get there, in time.", 8);
|
||||
} else if (status == 9) {
|
||||
qm.sendNextPrev("You are steadily becoming more powerful, and I''ll be here to keep motivating you. You have nothing to be afraid of. You will not lose the battle. You didn''t emerge from ice only to lose to the Black Mage, did you? This time, you''ll finish him, once and for all!", 8);
|
||||
} else if (status == 10) {
|
||||
qm.sendPrev("To do so, there''s only one thing you can do. Train, train, train. Head to Victoria Island and continue training. Let''s make sure you become so powerful that the Black Mage doesn''t stand a chance!", 8);
|
||||
} else if (status == 11) {
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
40
scripts/quest/2186.js
Normal file
40
scripts/quest/2186.js
Normal file
@@ -0,0 +1,40 @@
|
||||
/*
|
||||
Author: BubblesDev 0.75
|
||||
Quest: Abel Glasses Quest
|
||||
*/
|
||||
|
||||
function end(mode, type, selection){
|
||||
if(!qm.isQuestCompleted(2186)) {
|
||||
if(qm.haveItem(4031853)){
|
||||
if(qm.canHold(2030019)) {
|
||||
qm.gainItem(4031853, -1);
|
||||
qm.gainExp(1700 * qm.getPlayer().getExpRate());
|
||||
qm.gainItem(2030019, 10);
|
||||
|
||||
qm.sendOk("Geez, you found my glasses! Thank you, thank you so much. Now I'm able to see everything again!");
|
||||
qm.forceCompleteQuest();
|
||||
}
|
||||
else {
|
||||
qm.sendOk("I need you to have an USE slot available to reward you properly!");
|
||||
}
|
||||
}else if(qm.haveItem(4031854) || qm.haveItem(4031855)){ //When I figure out how to make a completance with just a pickup xD
|
||||
if(qm.canHold(2030019)) {
|
||||
if(qm.haveItem(4031854))
|
||||
qm.gainItem(4031854, -1);
|
||||
else
|
||||
qm.gainItem(4031855, -1);
|
||||
|
||||
qm.gainExp(1000 * qm.getPlayer().getExpRate());
|
||||
qm.gainItem(2030019, 5);
|
||||
|
||||
qm.sendOk("Hm, those aren't my glasses... But alas, I'll take it anyway. Thanks.");
|
||||
qm.forceCompleteQuest();
|
||||
}
|
||||
else {
|
||||
qm.sendOk("I need you to have an USE slot available to reward you properly!");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
qm.dispose();
|
||||
}
|
||||
62
scripts/quest/22000.js
Normal file
62
scripts/quest/22000.js
Normal file
@@ -0,0 +1,62 @@
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == 0 && type == 0) {
|
||||
status--;
|
||||
} else if (mode == -1) {
|
||||
qm.dispose();
|
||||
return;
|
||||
} else {
|
||||
status++;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendNext("Did you sleep well, Evan?");
|
||||
} else if (status == 1) {
|
||||
qm.sendNextPrev("#bYes, what about you, Mom?", 2);
|
||||
} else if (status == 2) {
|
||||
qm.sendNextPrev("I did as well, but you seem so tired. Are you sure you slept okay? Did the thunder and lightning last night keep you up?");
|
||||
} else if (status == 3) {
|
||||
qm.sendNextPrev("#bOh, no. It's not that, Mom. I just had a strange dream last night.", 2);
|
||||
} else if (status == 4) {
|
||||
qm.sendNextPrev("A strange dream? What kind of strange dream?");
|
||||
} else if (status == 5) {
|
||||
qm.sendNextPrev("#bWell...", 2);
|
||||
} else if (status == 6) {
|
||||
qm.sendNextPrev("#b(You explain that you met a dragon in your dream.)", 2);
|
||||
} else if (status == 7) {
|
||||
qm.sendAcceptDecline("Hahaha, a dragon? That's incredible. I'm glad he didn't swallow you whole! You should tell #p1013101# about your dream. I'm sure he'll enjoy it.");
|
||||
} else if (status == 8) {
|
||||
if (mode == 0) {//decline
|
||||
qm.sendNext("Hm? Don't you want to tell #p1013101#? You have to be nice to your brother, dear.");//guess
|
||||
qm.dispose();//get the message xd
|
||||
} else {//accept
|
||||
qm.forceStartQuest();
|
||||
qm.sendNext("#b#p1013101##k went to the #b#m100030102##k to feed the Bull Dog. You'll see him right outside.");
|
||||
}
|
||||
} else if (status == 9) {
|
||||
qm.sendImage("UI/tutorial/evan/1/0");
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
if (mode == 0 && type == 0) {
|
||||
status--;
|
||||
} else if (mode == -1) {
|
||||
qm.dispose();
|
||||
return;
|
||||
} else {
|
||||
status++;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendNext("Hey, Evan. You up? What's with the dark circles under your eyes? Didn't sleep well? Huh? A strange dream? What was it about? Whoa? A dream about a dragon?");
|
||||
} else if (status == 1) {
|
||||
qm.sendNextPrev("Muahahahahaha, a dragon? Are you serious? I don't know how to interpret dreams, but that sounds like a good one! Did you see a dog in your dream, too? Hahaha! \r\n\r\n#fUI/UIWindow.img/QuestIcon/8/0# 20 exp");
|
||||
} else if (status == 2) {
|
||||
qm.forceCompleteQuest();
|
||||
qm.gainExp(20);
|
||||
qm.sendImage("UI/tutorial/evan/2/0");
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
31
scripts/quest/22001.js
Normal file
31
scripts/quest/22001.js
Normal file
@@ -0,0 +1,31 @@
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == 0 && type == 0) {
|
||||
status--;
|
||||
} else if (mode == -1) {
|
||||
qm.dispose();
|
||||
return;
|
||||
} else {
|
||||
status++;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendNext("Haha. I had a good laugh. Hahaha. But enough with that nonsense. Feed #p1013102#, would you?");
|
||||
} else if (status == 1) {
|
||||
qm.sendNextPrev("#bWhat? That's #p1013101#'s job!", 2);
|
||||
} else if (status == 2) {
|
||||
qm.sendAcceptDecline("You little brat! I told you to call me Older Brother! You know how much #p1013102# hates me. He'll bite me if I go near him. You feed him. He likes you.");
|
||||
} else if (status == 3) {
|
||||
if (mode == 0) {
|
||||
qm.sendNext("Stop being lazy. Do you want to see your brother bitten by a dog? Hurry up! Talk to me again and accept the quest!");
|
||||
qm.dispose();
|
||||
} else {//accept
|
||||
qm.gainItem(4032447, true);
|
||||
qm.forceStartQuest();
|
||||
qm.sendNext("Hurry up and head #bleft#k to feed #b#p1013102##k. He's been barking to be fed all morning.");
|
||||
}
|
||||
} else if (status == 4) {
|
||||
qm.sendPrev("Feed #p1013102# and come back to see me.");
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
51
scripts/quest/22002.js
Normal file
51
scripts/quest/22002.js
Normal file
@@ -0,0 +1,51 @@
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == 0 && type == 0) {
|
||||
status--;
|
||||
} else if (mode == -1) {
|
||||
qm.dispose();
|
||||
return;
|
||||
} else {
|
||||
status++;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendNext("Did you feed #p1013102#? You should have some breakfast now then, Evan. Today's breakfast is a #t2022620#. I've brought it with me. Hee hee. I was going to eat it myself if you didn't agree to feed #p1013102#.");
|
||||
} else if (status == 1) {
|
||||
qm.sendAcceptDecline("Here, I'll give you this #bSandwich#k, so #bgo talk to mom when you finish eating#k. She says she has something to tell you.");
|
||||
} else if (status == 2) {
|
||||
if (mode == 0) {//decline
|
||||
qm.sendNext("Oh, what? Aren't you going to have breakfast? Breakfast is the most important meal of the day! Talk to me again if you change your mind. If you don't, I'm going to eat it myself.");
|
||||
qm.dispose();
|
||||
} else {
|
||||
qm.gainItem(2022620, true);
|
||||
qm.forceStartQuest();
|
||||
qm.sendNext("#b(Mom has something to say? Eat your #t2022620# and head back inside the house.)#k");
|
||||
}
|
||||
} else if (status == 3) {
|
||||
qm.sendImage("UI/tutorial/evan/3/0");
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
if (mode == 0 && type == 0) {
|
||||
status--;
|
||||
} else if (mode == -1) {
|
||||
qm.dispose();
|
||||
return;
|
||||
} else {
|
||||
status++;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendNext("Did you eat your breakfast, Evan? Then, will you do me a favor? \r\n\r\n#fUI/UIWindow.img/QuestIcon/4/0# \r\n#i1003028# 1 #t1003028# \r\n#i2022621# 5 #t2022621#s \r\n#i2022622# 5 #t2022622# \r\n#fUI/UIWindow.img/QuestIcon/8/0# 60 exp");
|
||||
} else if (status == 1) {
|
||||
qm.gainItem(1003028, 1, true);
|
||||
qm.gainItem(2022621, 5, true);
|
||||
qm.gainItem(2022622, 5, true);
|
||||
qm.forceCompleteQuest();
|
||||
qm.gainExp(60);
|
||||
qm.sendImage("UI/tutorial/evan/4/0");
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
33
scripts/quest/22003.js
Normal file
33
scripts/quest/22003.js
Normal file
@@ -0,0 +1,33 @@
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == 0 && type == 0) {
|
||||
status--;
|
||||
} else if (mode == -1) {
|
||||
qm.dispose();
|
||||
return;
|
||||
} else {
|
||||
status++;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendAcceptDecline("Your #bDad#k forgot his Lunch Box when he left for the farm this morning. Will you #bdeliver this Lunch Box#k to your Dad in #b#m100030300##k, honey?");
|
||||
} else if (status == 1) {
|
||||
if (mode == 0 && type == 15) {//decline
|
||||
qm.sendNext("Good kids listen to their mothers. Now, Evan, be a good kid and talk to me again.");
|
||||
qm.dispose();
|
||||
} else {
|
||||
if (!qm.isQuestStarted(22003)) {
|
||||
if (!qm.haveItem(4032448)) {
|
||||
qm.gainItem(4032448, true);
|
||||
}
|
||||
qm.forceStartQuest();
|
||||
}
|
||||
qm.sendNext("Heehee, my Evan is such a good kid! Head #bleft after you exit the house#k. Rush over to your dad. I'm sure he's starving.");
|
||||
}
|
||||
} else if (status == 2) {
|
||||
qm.sendNextPrev("Come back to me if you happen to lose the Lunch Box. I'll make his lunch again.");
|
||||
} else if (status == 3) {
|
||||
qm.sendImage("UI/tutorial/evan/5/0");
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
52
scripts/quest/22004.js
Normal file
52
scripts/quest/22004.js
Normal file
@@ -0,0 +1,52 @@
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == 0 && type == 0) {
|
||||
status--;
|
||||
} else if (mode == -1) {
|
||||
qm.dispose();
|
||||
return;
|
||||
} else {
|
||||
status++;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendNext("The #o1210100#s at the farm have been acting strange these past couple days. They've been angry and irritable for no reason. I was worried so I came out to the farm early this morning and sure enough, it seems like a few of these #o1210100#s got past the fence.");
|
||||
} else if (status == 1) {
|
||||
qm.sendAcceptDecline("Before I go and find the #o1210100#s, I should mend the broken fence. Luckily, it wasn't damaged too badly. I just need a few #t4032498#es to fix it right up. Will you bring me #b3#k #b#t4032498#es#k, Evan?");
|
||||
} else if (status == 2) {
|
||||
if (mode == 0) {//decline
|
||||
qm.sendNext("Hm, #p1013101# would have done it at the drop of a hat.");
|
||||
qm.dispose();
|
||||
} else {
|
||||
qm.forceStartQuest();
|
||||
qm.sendNext("Oh, that's very nice of you. You'll be able to find #b#t4032498#es#k from the nearby #r#o0130100#s#k. They're not too strong, but use your skills and items when you find yourself in danger.");
|
||||
}
|
||||
} else if (status == 3) {
|
||||
qm.sendImage("UI/tutorial/evan/6/0");
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
if (mode == 0 && type == 0) {
|
||||
status--;
|
||||
} else if (mode == -1) {
|
||||
qm.dispose();
|
||||
return;
|
||||
} else {
|
||||
status++;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendNext("Ah, did you bring all the #t4032498#es? That's my kid! What shall I give you as a reward... Let's see... Oh, right! \r\n\r\n#fUI/UIWindow.img/QuestIcon/4/0# \r\n#i3010097# 1 #t3010097# \r\n#i2022621# 15 #t2022621#s \r\n#i2022622# 15 #t2022622#s \r\n\r\n#fUI/UIWindow.img/QuestIcon/8/0# 210 exp");
|
||||
} else if (status == 1) {
|
||||
if (!qm.isQuestCompleted(22004)) {
|
||||
qm.gainItem(3010097, true);
|
||||
qm.forceCompleteQuest();
|
||||
qm.gainExp(210);
|
||||
}
|
||||
qm.sendNextPrev("Here. I made this new chair from the wooden boards I had left over after fixing the fence. It may not seem like much, but it's sturdy. I'm sure it'll come in handy.");
|
||||
} else if (status == 2) {
|
||||
qm.sendImage("UI/tutorial/evan/7/0");
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
27
scripts/quest/22007.js
Normal file
27
scripts/quest/22007.js
Normal file
@@ -0,0 +1,27 @@
|
||||
var status = -1;
|
||||
|
||||
function end(mode, type, selection) {
|
||||
if (mode == 0 && type == 0) {
|
||||
status--;
|
||||
} else if (mode == -1) {
|
||||
qm.dispose();
|
||||
return;
|
||||
} else {
|
||||
status++;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendNext("Oh, did you bring the #t4032451#? Here, give it to me. I'll give you the Incubator then.");
|
||||
} else if (status == 1) {
|
||||
qm.sendYesNo("Alright, here you go. I have no idea how you use it, but it's yours... \r\n\r\n#fUI/UIWindow.img/QuestIcon/8/0# 360 exp");
|
||||
} else if (status == 2) {
|
||||
if (mode == 0) {//decline
|
||||
qm.sendNext("Hm? That's strange. The Incubator wasn't installed properly. Try again.");
|
||||
} else {
|
||||
qm.gainItem(4032451, -1);
|
||||
qm.forceCompleteQuest();
|
||||
qm.gainExp(360);
|
||||
qm.sendImage("UI/tutorial/evan/9/0");
|
||||
}
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
74
scripts/quest/22008.js
Normal file
74
scripts/quest/22008.js
Normal file
@@ -0,0 +1,74 @@
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == 0 && type == 0) {
|
||||
status--;
|
||||
} else if (mode == -1) {
|
||||
qm.dispose();
|
||||
return;
|
||||
} else {
|
||||
status++;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendAcceptDecline("It's strange. The chickens are acting funny. They used to hatch way more #t4032451#s. Do you think the Foxes have something to do with it? If so, we better hurry up and do something.");
|
||||
} else if (status == 1) {
|
||||
if (mode == 0) {//decline
|
||||
qm.sendNext("Oh what... Are you scared of the #o9300385#es? Don't tell anyone you're related to me. That's shameful.");
|
||||
qm.dispose();
|
||||
} else {
|
||||
qm.forceStartQuest();
|
||||
qm.sendNext("Right? Let us go and defeat those Foxes. Go on ahead and defeat #r10 #o9300385#es#k in #b#m100030103##k first. I'll follow you and take care of what's left behind. Now, hurry over to #m100030103#!");
|
||||
}
|
||||
} else if (status == 2) {
|
||||
qm.sendImage("UI/tutorial/evan/10/0");
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
if (mode == 0 && type == 0) {
|
||||
status--;
|
||||
} else if (mode == -1) {
|
||||
qm.dispose();
|
||||
return;
|
||||
} else {
|
||||
status++;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendNext("Did you defeat the #o9300385#es?");
|
||||
} else if (status == 1) {
|
||||
qm.sendNextPrev("#bWhat happened to slaying the Foxes left behind?", 2);
|
||||
} else if (status == 2) {
|
||||
qm.sendNextPrev("Oh, that? Haha. I did chase them, sort of, but I wanted to make sure that they catch up to you. I wouldn't want you eaten by a #o9300385# or anything. So I just let them be.");
|
||||
} else if (status == 3) {
|
||||
qm.sendNextPrev("#bAre you sure you weren't just hiding because you were scared of the Foxes?", 2);
|
||||
} else if (status == 4) {
|
||||
qm.sendNextPrev("What? No way! Sheesh, I fear nothing!");
|
||||
} else if (status == 5) {
|
||||
qm.sendNextPrev("#bWatch out! There's a #o9300385# right behind you!", 2);
|
||||
} else if (status == 6) {
|
||||
qm.sendNextPrev("Eeeek! Mommy!");
|
||||
} else if (status == 7) {
|
||||
qm.sendNextPrev("#b...", 2);
|
||||
} else if (status == 8) {
|
||||
qm.sendNextPrev("...");
|
||||
} else if (status == 9) {
|
||||
qm.sendNextPrev("You little brat! I'm your older brother. Don't you mess with me! Your brother has a weak heart, you know. Don't surprise me like that!");
|
||||
} else if (status == 10) {
|
||||
qm.sendNextPrev("#b(This is why I don't want to call you Older Brother...)", 2);
|
||||
} else if (status == 11) {
|
||||
qm.sendNextPrev("Hmph! Anyway, I'm glad you were able to defeat the #o9300385#es. As a reward, I'll give you something an adventurer gave me a long time ago. Here you are. \r\n\r\n#fUI/UIWindow.img/QuestIcon/4/0# \r\n#i1372043# 1 #t1372043# \r\n#i2022621# 25 #t2022621# \r\n#i2022622# 25 #t2022622#s \r\n\r\n#fUI/UIWindow.img/QuestIcon/8/0# 910 exp");
|
||||
} else if (status == 12) {
|
||||
if (!qm.isQuestCompleted(22008)) {
|
||||
qm.gainItem(1372043, true);
|
||||
qm.gainItem(2022621, 25, true);
|
||||
qm.gainItem(2022622, 25, true);
|
||||
qm.forceCompleteQuest();
|
||||
qm.gainExp(910);
|
||||
}
|
||||
qm.sendNextPrev("#bThis is a weapon that Magicians use. It's a Wand#k. You probably won't really need it, but it'll make you look important if you carry it around. Hahahahaha.");
|
||||
} else if (status == 13) {
|
||||
qm.sendPrev("Anyway, the Foxes have increased, right? How weird is that? Why are they growing day by day? We should really look into it and get to the bottom of this.");
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
80
scripts/quest/2230.js
Normal file
80
scripts/quest/2230.js
Normal file
@@ -0,0 +1,80 @@
|
||||
/*
|
||||
This file is part of the OdinMS Maple Story Server
|
||||
Copyright (C) 2008 Patrick Huy <patrick.huy@frz.cc>
|
||||
Matthias Butz <matze@odinms.de>
|
||||
Jan Christian Meyer <vimes@odinms.de>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
published by the Free Software Foundation version 3 as published by
|
||||
the Free Software Foundation. You may not use, modify or distribute
|
||||
this program under any other version of the GNU Affero General Public
|
||||
License.
|
||||
|
||||
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 Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
/*
|
||||
Author : Generic
|
||||
NPC Name: Mar the Fairy
|
||||
Map(s): Everywhere
|
||||
Description: Quest - A Mysterious Small Egg
|
||||
Quest ID: 2230
|
||||
*/
|
||||
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
qm.dispose();
|
||||
} else {
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
if (status == 0)
|
||||
qm.sendNext("I put this small, precious life in your hands...Guard it with your life...");
|
||||
else if (status == 1)
|
||||
qm.sendYesNo("Looking after another life...That is the inevitable mission given to you...Follow the force that leads you to me.");
|
||||
else if (status == 2) {
|
||||
qm.sendOk("Put your hand in your pocket. I think your friend has already found you.\r\nThe purple bellflower that soaks in the sun in between the skyscraping trees...Follow the path to the unknown that leads you to the bellflower. I will wait for you here.");
|
||||
qm.forceStartQuest();
|
||||
qm.gainItem(4032086, 1); // Mysterious Egg * 1
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
qm.dispose();
|
||||
} else {
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
if (status == 0)
|
||||
qm.sendSimple("Hello, traveler... You have finally come to see me. Have you fulfilled your duties? \r\n #b#L0#What duties? Who are you?#l#k");
|
||||
else if (selection == 0 && status == 1) {
|
||||
qm.sendNext("Have you found a small egg in your pocket? That egg is your duty, your responsibility. Life is hard when you're all by yourself. In times like this, there's nothing quite like having a friend that will be there for you at all times. Have you heard of a #bpet#k?\r\nPeople raise pets to ease the burden, sorrow, and loneliness, because knowing that you have someone, or something in this matter, on your side will really bring a peace of mind. But everything has consequences, and with it comes responsibility...");
|
||||
} else if (status == 2) {
|
||||
qm.sendNextPrev("Raising a pet requires a huge amount of responsibility. Remember a pet is a form of life, as well, so you'll need to feed it, name it, share your thoughts with it, and ultimately form a bond. That's how the owners get attached to these pets.");
|
||||
} else if (status == 3) {
|
||||
qm.sendNextPrev("I wanted to instill this in you, and that's why I sent you a baby that I cherish. The egg you have brought is #bRune Snail#k, a creature that is born through the power of Mana. Since you took great care of it as you brought the egg here, the egg will hatch soon.");
|
||||
} else if (status == 4) {
|
||||
qm.sendNextPrev("Rune Snail is a pet of many skills. It'll pick up items, feed you with potions, and do other things that will astound you. The downside is that since Rune Snail was born out of power of Mana, it's lifespan is very short. Once it turns into a doll, it'll never be able to be revived.");
|
||||
} else if (status == 5) {
|
||||
qm.sendYesNo("Now do you understand? Every action comes with consequences, and pets are no exception. The egg of the snail shall hatch soon.");
|
||||
} else if (status == 6) {
|
||||
qm.gainItem(5000054, 1); // rune snail * 1
|
||||
qm.gainItem(4032086, -1); // Mysterious Egg * -1
|
||||
qm.forceCompleteQuest();
|
||||
qm.sendNext("This snail will only be alive for #b5 hours#k. Shower it with love. Your love will be reciprocated in the end.");
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
54
scripts/quest/22500.js
Normal file
54
scripts/quest/22500.js
Normal file
@@ -0,0 +1,54 @@
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == 0 && type == 0) {
|
||||
status--;
|
||||
} else if (mode == -1) {
|
||||
qm.dispose();
|
||||
return;
|
||||
} else {
|
||||
status++;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendNext("I'm finally here! *inhales* Ah, this must be air I'm breathing. And that, that must be the sun! And that, a tree! And that, a plant! And that, a flower! Woohahahaha! This is incredible! This is much better than I imagined the world to be while I was trapped inside the egg. And you... Are you my master? Hm, I pictured you differently.");
|
||||
} else if (status == 1) {
|
||||
qm.sendNextPrev("#bWhoooooa, it talks!", 2);
|
||||
} else if (status == 2) {
|
||||
qm.sendNextPrev("My master is strange. I guess I can't do anything about it now, since the pact has been made. *sigh* Well, good to meet you. We'll be seeing a lot of each other.");
|
||||
} else if (status == 3) {
|
||||
qm.sendNextPrev("#bEh? What do you mean? We'll be seeing a lot of each other? What pact?", 2);
|
||||
} else if (status == 4) {
|
||||
qm.sendNextPrev("What do you mean what do I mean?! You woke me from the Egg. You're my master! So of course it's your responsibility to take care of me and train me and help me become a strong Dragon. Obviously!");
|
||||
} else if (status == 5) {
|
||||
qm.sendNextPrev("#bWhaaat? A Dragon? You're a Dragon?! I don't get it... Why am I your master? What are you talking about?", 2);
|
||||
} else if (status == 6) {
|
||||
qm.sendNextPrev("What are YOU talking about? Your spirit made a pact with my spirit! We're pretty much the same person now. Do I really have to explain? As a result, you've become my master. We're bound by the pact. You can't change your mind... The pact cannot be broken.");
|
||||
} else if (status == 7) {
|
||||
qm.sendNextPrev("#bWait, wait, wait. Let me get this straight. You're saying I have no choice but to help you?", 2);
|
||||
} else if (status == 8) {
|
||||
qm.sendNextPrev("Yuuup! Heeeey...! What's with the face? You...don't want to be my master?");
|
||||
} else if (status == 9) {
|
||||
qm.sendNextPrev("#bNo... It's not that... I just don't know if I'm ready for a pet.", 2);
|
||||
} else if (status == 10) {
|
||||
qm.sendNextPrev("A p-p-pet?! Did you just call me a pet?! How dare... Why, I'm a Dragon! The strongest being in the world!");
|
||||
} else if (status == 11) {
|
||||
qm.sendNextPrev("#b...#b(You stare at him skeptically. He looks like a lizard. A puny little one, at that.)#k", 2);
|
||||
} else if (status == 12) {
|
||||
qm.sendAcceptDecline("Why are you looking at me like that?! Just watch! See what I can do with my power. Ready?");
|
||||
} else if (status == 13) {
|
||||
if (mode == 0 && type == 15) {
|
||||
qm.sendNext("You don't believe me? Grrrrr, you're getting me mad!");
|
||||
qm.dispose();
|
||||
} else {
|
||||
if (!qm.isQuestStarted(22500)) {
|
||||
qm.forceStartQuest();
|
||||
}
|
||||
qm.sendNext("Command me to slay the #r#o1210100##ks! Do it now! I'll show you how fast a Dragon can defeat the #o1210100#s! Goooo, charge!");
|
||||
}
|
||||
} else if (status == 14) {
|
||||
qm.sendNextPrev("Wait a minute! Did you distribute your AP? I'm heavily affected by my master's #bINT and LUK#k! If you really want to see what I can do, distribute your AP and #bequip your Magician equipment#k before you use the skill!");
|
||||
} else if (status == 15) {
|
||||
qm.sendImage("UI/tutorial/evan/11/0");
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
30
scripts/quest/22501.js
Normal file
30
scripts/quest/22501.js
Normal file
@@ -0,0 +1,30 @@
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == 0 && type == 0) {
|
||||
status--;
|
||||
} else if (mode == -1) {
|
||||
qm.dispose();
|
||||
return;
|
||||
} else {
|
||||
status++;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendNext("Yo, master. Now that I've shown you what I can do, it's your turn. Prove to me...that you can find food! I'm starving. You can use my power now, so you have to take care of me.");
|
||||
} else if (status == 1) {
|
||||
qm.sendNextPrev("Eh, I still don't get what's going on, but I can't let a poor little critter like you starve, right? Food, you say? What do you want to eat?", 2);
|
||||
} else if (status == 2) {
|
||||
qm.sendNextPrev("Hi, I was just born a few minutes ago. How would I know what I eat? All I know is that I'm a Dragon... I'm YOUR Dragon. And you're my master. You have to treat me well!");
|
||||
} else if (status == 3) {
|
||||
qm.sendAcceptDecline("I guess we're supposed to learn together. But I'm hungry. Master, I want food. Remember, I'm a baby! I'll start crying soon!");
|
||||
} else if (status == 4) {
|
||||
if (mode == 0) {
|
||||
qm.sendNext("*gasp* How can you refuse to feed your Dragon? This is child abuse! ");
|
||||
qm.dispose();
|
||||
} else {
|
||||
qm.forceStartQuest();
|
||||
qm.sendOk("#b#b(#p1013000# the baby Dragon appears to be extremely hungry. You must feed him. Maybe your Dad can give you advice on what dragons eat.)");
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
23
scripts/quest/22502.js
Normal file
23
scripts/quest/22502.js
Normal file
@@ -0,0 +1,23 @@
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == 0 && type == 0) {
|
||||
status--;
|
||||
} else if (mode == -1) {
|
||||
qm.dispose();
|
||||
return;
|
||||
} else {
|
||||
status++;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendAcceptDecline("Wouldn't a lizard enjoy a #b#t4032452##k, like a cow? There are a lot of #bHaystacks#k nearby, so try feeding it that.");
|
||||
} else if (status == 1) {
|
||||
if (mode == 0) {
|
||||
qm.sendNext("Hm, you never know unless you try. That lizard is big enough to be on Maple's Believe It Or Not. It might eat hay.");
|
||||
} else {
|
||||
qm.forceStartQuest();
|
||||
qm.sendImage("UI/tutorial/evan/12/0");
|
||||
}
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
27
scripts/quest/22503.js
Normal file
27
scripts/quest/22503.js
Normal file
@@ -0,0 +1,27 @@
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == 0 && type == 0) {
|
||||
status--;
|
||||
} else if (mode == -1) {
|
||||
qm.dispose();
|
||||
return;
|
||||
} else {
|
||||
status++;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendNext("No, no, no. This isn't what I need. I need something more nutritious, master!");
|
||||
} else if (status == 1) {
|
||||
qm.sendNextPrev("#bHm... So you're not a herbivore. You might be a carnivore. You're a Dragon, after all. How does some #t4032453# sound?", 2);
|
||||
} else if (status == 2) {
|
||||
qm.sendAcceptDecline("What's a...#t4032453#? Never heard of it, but if it's yummy, I accept! Just feed me something tasty. Anything but plants!");
|
||||
} else if (status == 3) {
|
||||
if (mode == 0) {
|
||||
qm.sendNext("How can you starve me like this. I'm just a baby. This is wrong!");
|
||||
} else {
|
||||
qm.forceStartQuest();
|
||||
qm.sendNext("#b#b(Try giving #p1013000# some #t4032453#. You have to hunt a few #o1210100#s at the farm. Ten should be plenty...)");
|
||||
}
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
26
scripts/quest/22504.js
Normal file
26
scripts/quest/22504.js
Normal file
@@ -0,0 +1,26 @@
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == 0 && type == 0) {
|
||||
status--;
|
||||
} else if (mode == -1) {
|
||||
qm.dispose();
|
||||
return;
|
||||
} else {
|
||||
status++;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendNext("Ugh. This isn't going to work. I need something else. No plants. No meat. What, you have no idea? But you're the master, and you're older than me, too. You must know what'd be good for me!");
|
||||
} else if (status == 1) {
|
||||
qm.sendNextPrev("#bBut I don't. It's not like age has anything to do with this...", 2);
|
||||
} else if (status == 2) {
|
||||
qm.sendAcceptDecline("Since you're older, you must be more experienced in the world, too. Makes sense that you'd know more than me. Oh, fine. I'll ask someone who's even older than you, master!");
|
||||
} else if (status == 3) {
|
||||
if (mode == 0) {
|
||||
qm.sendNext("No use trying to find an answer to this on my own. I'd better look for #bsomeone older and wiser than master#k!");
|
||||
} else {
|
||||
qm.forceStartQuest();
|
||||
qm.sendNext("#b#b(You already asked Dad once, but you don't have any better ideas. Time to ask him again!)");
|
||||
}
|
||||
}
|
||||
}
|
||||
58
scripts/quest/22507.js
Normal file
58
scripts/quest/22507.js
Normal file
@@ -0,0 +1,58 @@
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == 0 && type == 0) {
|
||||
status--;
|
||||
} else if (mode == -1) {
|
||||
qm.dispose();
|
||||
return;
|
||||
} else {
|
||||
status++;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendNext("I knew it! I knew we were connected, master! When you get stronger, I get stronger, too. And when I get stronger, you can use my strength! That's our pact. I knew I picked a good master!");
|
||||
} else if (status == 1) {
|
||||
qm.sendNextPrev("#bI see. How did we end up in this pact anyway?", 2);
|
||||
} else if (status == 2) {
|
||||
qm.sendNextPrev("I don't know. I was just an egg. I can't really remember...though I faintly recall you, master, walking toward me in a foggy forest. I remember your surprise upon seeing me. And I was calling out to you in return.");
|
||||
} else if (status == 3) {
|
||||
qm.sendNextPrev("#b#b(Wait! That sounds just like that one dream you had... Did the two of you meet in a dream? Is it possible that the giant Dragon you saw in that dream was...#p1013000#?)", 2);
|
||||
} else if (status == 4) {
|
||||
qm.sendNextPrev("Master, you and I are one in spirit. I knew it the moment I saw you. That's why I wanted to make the pact with you. No one else. You had to pay the price I set, of course.");
|
||||
} else if (status == 5) {
|
||||
qm.sendNextPrev("#bI paid a price?", 2);
|
||||
} else if (status == 6) {
|
||||
qm.sendNextPrev("Don't you remember? When you recognized me and touched me? That was the one condition I set. The moment you touched my egg, you and I became one in spirit.");
|
||||
} else if (status == 7) {
|
||||
qm.sendNextPrev("#bOne in...spirit?", 2);
|
||||
} else if (status == 8) {
|
||||
qm.sendNextPrev("Yes! The Spirit Pact! You and I have seperate bodies, but we share one spirit. That's why you get stronger when I get stronger, and vice versa! Awesome, right? At least, I think so.");
|
||||
} else if (status == 9) {
|
||||
qm.sendNextPrev("#bI have no idea what you're talking about, but it sounds like a pretty big deal.", 2);
|
||||
} else if (status == 10) {
|
||||
qm.sendNextPrev("Of course it's a big deal, silly master! You never have to worry about monsters again. You have me to protect you now! Go ahead and test me. In fact, let's go right now!");
|
||||
} else if (status == 11) {
|
||||
qm.sendNextPrev("#bBut it's peaceful here. There are no dangerous monsters around.", 2);
|
||||
} else if (status == 12) {
|
||||
qm.sendNextPrev("WHAT?! That's no fun! Don't you like adventuring, master? Fighting monsters on behalf of your people, defeating evil, rescuing the innocent, and all that? You're not into that kind of thing?");
|
||||
} else if (status == 13) {
|
||||
qm.sendNextPrev("#bIt's not part of my five year plan. I'm just kidding, but seriously, I'm a farmer's kid...", 2);
|
||||
} else if (status == 14) {
|
||||
qm.sendAcceptDecline("Bah, well let me tell you this. It's impossible for a Dragon Master to live a peaceful life. I'll have plenty of chances to prove my skills. Trust me, our life will be one big adventure. Promise me that you'll stick with me, okay?\r\n\r\n#fUI/UIWindow.img/QuestIcon/8/0# 810 exp");
|
||||
} else if (status == 15) {
|
||||
if (mode == 0) {
|
||||
qm.sendNext("Uh, you're kidding me, right? Tell me your finger slipped! Go ahead and accept the quest.");
|
||||
} else {
|
||||
if (!qm.isQuestCompleted(22507)) {
|
||||
qm.forceCompleteQuest();
|
||||
qm.gainExp(810);
|
||||
}
|
||||
qm.sendNext("Hehehe, alrighty then, master. Let's get to it!");
|
||||
}
|
||||
} else if (status == 16) {
|
||||
qm.sendNextPrev("#b(You're a bit confused, but you are now traveling with Mir the Dragon. Perhaps you'll go on an adventure together, like he said.)", 2);
|
||||
} else if (status == 17) {
|
||||
qm.sendPrev("#b#b(You still have an errand to run. Your dad needs to talk to you, so go and see him now.)");
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
64
scripts/quest/2301.js
Normal file
64
scripts/quest/2301.js
Normal file
@@ -0,0 +1,64 @@
|
||||
/* ===========================================================
|
||||
Resonance
|
||||
NPC Name: Maple Administrator
|
||||
Description: Quest - Kingdom of Mushroom in Danger
|
||||
=============================================================
|
||||
Version 1.0 - Script Done.(17/7/2010)
|
||||
=============================================================
|
||||
*/
|
||||
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
status++;
|
||||
if (mode != 1) {
|
||||
if(type == 1 && mode == 0)
|
||||
status -= 2;
|
||||
else{
|
||||
//if(status == 0){
|
||||
qm.sendOk("Really? It's an urgent matter, so if you have some time, please see me.");
|
||||
qm.dispose();
|
||||
return;
|
||||
//} else if(status == 3){
|
||||
//qm.sendNext("Okay. In that case, I'll just give you the routes to the Kingdom of Mushroom. #bNear the west entrance of Henesys,#k you'll find an #bempty house#k. Enter the house, and turn left to enter#b<Themed Dungeon : Mushroom Castle>#k. That's the entrance to the Kingdom of Mushroom. There's not much time!");
|
||||
//qm.forceStartQuest();
|
||||
//return;
|
||||
}
|
||||
}
|
||||
//}
|
||||
if(status == 0)
|
||||
qm.sendAcceptDecline("Now that you have made the job advancement, you look like you're ready for this. I have something I'd like to ask you for help. Are you willing to listen?");
|
||||
if(status == 1)
|
||||
qm.sendNext("What happened is that the #bKingdom of Mushroom#k is currently in disarray. Kingdom of Mushroom is located near Henesys, featuring the peace-loving, intelligent King Mush. Recently, he began to feel ill, so he decided to appoint his only daughter #bPrincess Violetta#k. Something must have happened since then for the kingdom to be in its current state.");
|
||||
if(status == 2)
|
||||
qm.sendNext("I am not aware of the exact details, but it's obvious something terrible had taken place, so I think it'll be better if you go there and assess the damage yourself. An explorer like you seem more than capable of saving Kingdom of Mushroom. I have just written you a #brecommendation letter#k, so I suggest you head over to Kingdom of Mushroom immediately and look for the #bHead Patrol Officer#k.\r\n\r\n#fUI/UIWindow.img/QuestIcon/4/0#\r\n#v4032375# #t4032375#");
|
||||
if(status == 3)
|
||||
qm.sendYesNo("By the way, do you know where Kingdom of Mushroom is located? It'll be okay if you can find your way there, but if you don't mind, I can take you straight to the entrance.");
|
||||
if(status == 4){
|
||||
qm.gainItem(4032375, 1);
|
||||
qm.forceStartQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
status++;
|
||||
if (mode != 1) {
|
||||
if(type == 1 && mode == 0)
|
||||
status -= 2;
|
||||
else{
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
}
|
||||
if(status == 0)
|
||||
qm.sendNext("Hmmm? Is that a #brecommendation letter from the job instructor#k??! What is this, are you the one that came to save us, the Kingdom of Mushroom?");
|
||||
if(status == 1)
|
||||
qm.sendNextPrev("Hmmm... okay. Since the letter is from the job instructor, I suppose you are really the one. I apologize for not introducing myself to you earlier. I'm the #bHead Security Officer#k in charge of protecting King Mush. As you can see, this temporary hideout is protected by the team of security and soldiers. Our situation may be dire, but nevertheless, welcome to Kingdom of Mushroom.");
|
||||
if(status == 2){
|
||||
qm.forceCompleteQuest();
|
||||
qm.gainItem(4032375, -1);
|
||||
qm.forceStartQuest(2312);
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
32
scripts/quest/23011.js
Normal file
32
scripts/quest/23011.js
Normal file
@@ -0,0 +1,32 @@
|
||||
var status = -1;
|
||||
|
||||
function end(mode, type, selection) {
|
||||
if (mode == 0 && type == 0) {
|
||||
status--;
|
||||
} else if (mode == -1) {
|
||||
qm.dispose();
|
||||
return;
|
||||
} else {
|
||||
status++;
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.sendYesNo("So you've finally decided to become a Battle Mage, eh? Well, you can still change your mind. Just stop our conversation, forfeit this quest, and talk to another class trainer. So, you sure you want to become a Battle Mage? I'm not interested in teaching you unless you're a hundred percent sure...");
|
||||
} else if (status == 1) {
|
||||
if (mode == 0) {
|
||||
qm.sendNext("Think carefully before you make your decision.");
|
||||
} else {
|
||||
if (!qm.isQuestCompleted(23011)) {
|
||||
qm.gainItem(1382100);
|
||||
qm.gainItem(1142242);
|
||||
qm.forceCompleteQuest();
|
||||
qm.changeJobById(3200);
|
||||
qm.showItemGain(1382100, 1142242);
|
||||
}
|
||||
qm.sendNext("Okay, okay. Welcome to the Resistance, kid. From now on, you will play the role of a Battle Mage, a fierce Magician always ready to lead your party into battle.");
|
||||
}
|
||||
} else if (status == 2) {
|
||||
qm.sendNextPrev("But don't go spreading it around that you're a Battle Mage, hm? No need to tempt the Black Wings to come after you. From now on, I'll be your teacher. If anyone asks, you're visiting me just as a regular student, not as a member of the Resistance. I'll give you special lessons now and then. You better not fall asleep in class, hear? ");
|
||||
} else if (status == 3) {
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
64
scripts/quest/2302.js
Normal file
64
scripts/quest/2302.js
Normal file
@@ -0,0 +1,64 @@
|
||||
/* ===========================================================
|
||||
Resonance
|
||||
NPC Name: Maple Administrator
|
||||
Description: Quest - Kingdom of Mushroom in Danger
|
||||
=============================================================
|
||||
Version 1.0 - Script Done.(17/7/2010)
|
||||
=============================================================
|
||||
*/
|
||||
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
status++;
|
||||
if (mode != 1) {
|
||||
if(type == 1 && mode == 0)
|
||||
status -= 2;
|
||||
else{
|
||||
//if(status == 0){
|
||||
qm.sendOk("Really? It's an urgent matter, so if you have some time, please see me.");
|
||||
qm.dispose();
|
||||
return;
|
||||
//} else if(status == 3){
|
||||
//qm.sendNext("Okay. In that case, I'll just give you the routes to the Kingdom of Mushroom. #bNear the west entrance of Henesys,#k you'll find an #bempty house#k. Enter the house, and turn left to enter#b<Themed Dungeon : Mushroom Castle>#k. That's the entrance to the Kingdom of Mushroom. There's not much time!");
|
||||
//qm.forceStartQuest();
|
||||
//return;
|
||||
}
|
||||
}
|
||||
//}
|
||||
if(status == 0)
|
||||
qm.sendAcceptDecline("Now that you have made the job advancement, you look like you're ready for this. I have something I'd like to ask you for help. Are you willing to listen?");
|
||||
if(status == 1)
|
||||
qm.sendNext("What happened is that the #bKingdom of Mushroom#k is currently in disarray. Kingdom of Mushroom is located near Henesys, featuring the peace-loving, intelligent King Mush. Recently, he began to feel ill, so he decided to appoint his only daughter #bPrincess Violetta#k. Something must have happened since then for the kingdom to be in its current state.");
|
||||
if(status == 2)
|
||||
qm.sendNext("I am not aware of the exact details, but it's obvious something terrible had taken place, so I think it'll be better if you go there and assess the damage yourself. An explorer like you seem more than capable of saving Kingdom of Mushroom. I have just written you a #brecommendation letter#k, so I suggest you head over to Kingdom of Mushroom immediately and look for the #bHead Patrol Officer#k.\r\n\r\n#fUI/UIWindow.img/QuestIcon/4/0#\r\n#v4032375# #t4032375#");
|
||||
if(status == 3)
|
||||
qm.sendYesNo("By the way, do you know where Kingdom of Mushroom is located? It'll be okay if you can find your way there, but if you don't mind, I can take you straight to the entrance.");
|
||||
if(status == 4){
|
||||
qm.gainItem(4032375, 1);
|
||||
qm.forceStartQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
status++;
|
||||
if (mode != 1) {
|
||||
if(type == 1 && mode == 0)
|
||||
status -= 2;
|
||||
else{
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
}
|
||||
if(status == 0)
|
||||
qm.sendNext("Hmmm? Is that a #brecommendation letter from the job instructor#k??! What is this, are you the one that came to save us, the Kingdom of Mushroom?");
|
||||
if(status == 1)
|
||||
qm.sendNextPrev("Hmmm... okay. Since the letter is from the job instructor, I suppose you are really the one. I apologize for not introducing myself to you earlier. I'm the #bHead Security Officer#k in charge of protecting King Mush. As you can see, this temporary hideout is protected by the team of security and soldiers. Our situation may be dire, but nevertheless, welcome to Kingdom of Mushroom.");
|
||||
if(status == 2){
|
||||
qm.forceCompleteQuest();
|
||||
qm.gainItem(4032375, -1);
|
||||
qm.forceStartQuest(2312);
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
63
scripts/quest/2303.js
Normal file
63
scripts/quest/2303.js
Normal file
@@ -0,0 +1,63 @@
|
||||
/* ===========================================================
|
||||
Resonance
|
||||
NPC Name: Maple Administrator
|
||||
Description: Quest - Kingdom of Mushroom in Danger
|
||||
=============================================================
|
||||
Version 1.0 - Script Done.(17/7/2010)
|
||||
=============================================================
|
||||
*/
|
||||
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
status++;
|
||||
if (mode != 1) {
|
||||
if(type == 1 && mode == 0)
|
||||
status -= 2;
|
||||
else{
|
||||
//if(status == 0){
|
||||
qm.sendOk("Really? It's an urgent matter, so if you have some time, please see me.");
|
||||
qm.dispose();
|
||||
return;
|
||||
//} else if(status == 3){
|
||||
//qm.sendNext("Okay. In that case, I'll just give you the routes to the Kingdom of Mushroom. #bNear the west entrance of Henesys,#k you'll find an #bempty house#k. Enter the house, and turn left to enter#b<Themed Dungeon : Mushroom Castle>#k. That's the entrance to the Kingdom of Mushroom. There's not much time!");
|
||||
//qm.forceStartQuest();
|
||||
//return;
|
||||
}
|
||||
}
|
||||
//}
|
||||
if(status == 0)
|
||||
qm.sendAcceptDecline("Now that you have made the job advancement, you look like you're ready for this. I have something I'd like to ask you for help. Are you willing to listen?");
|
||||
if(status == 1)
|
||||
qm.sendNext("What happened is that the #bKingdom of Mushroom#k is currently in disarray. Kingdom of Mushroom is located near Henesys, featuring the peace-loving, intelligent King Mush. Recently, he began to feel ill, so he decided to appoint his only daughter #bPrincess Violetta#k. Something must have happened since then for the kingdom to be in its current state.");
|
||||
if(status == 2)
|
||||
qm.sendNext("I am not aware of the exact details, but it's obvious something terrible had taken place, so I think it'll be better if you go there and assess the damage yourself. An explorer like you seem more than capable of saving Kingdom of Mushroom. I have just written you a #brecommendation letter#k, so I suggest you head over to Kingdom of Mushroom immediately and look for the #bHead Patrol Officer#k.\r\n\r\n#fUI/UIWindow.img/QuestIcon/4/0#\r\n#v4032375# #t4032375#");
|
||||
if(status == 3)
|
||||
qm.sendYesNo("By the way, do you know where Kingdom of Mushroom is located? It'll be okay if you can find your way there, but if you don't mind, I can take you straight to the entrance.");
|
||||
if(status == 4){
|
||||
qm.gainItem(4032375, 1);
|
||||
qm.forceStartQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
function end(mode, type, selection) {
|
||||
status++;
|
||||
if (mode != 1) {
|
||||
if(type == 1 && mode == 0)
|
||||
status -= 2;
|
||||
else{
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
}
|
||||
if(status == 0)
|
||||
qm.sendNext("Hmmm? Is that a #brecommendation letter from the job instructor#k??! What is this, are you the one that came to save us, the Kingdom of Mushroom?");
|
||||
if(status == 1)
|
||||
qm.sendNextPrev("Hmmm... okay. Since the letter is from the job instructor, I suppose you are really the one. I apologize for not introducing myself to you earlier. I'm the #bHead Security Officer#k in charge of protecting King Mush. As you can see, this temporary hideout is protected by the team of security and soldiers. Our situation may be dire, but nevertheless, welcome to Kingdom of Mushroom.");
|
||||
if(status == 2){
|
||||
qm.forceCompleteQuest();
|
||||
qm.gainItem(4032375, -1);
|
||||
qm.forceStartQuest(2312);
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
64
scripts/quest/2304.js
Normal file
64
scripts/quest/2304.js
Normal file
@@ -0,0 +1,64 @@
|
||||
/* ===========================================================
|
||||
Resonance
|
||||
NPC Name: Maple Administrator
|
||||
Description: Quest - Kingdom of Mushroom in Danger
|
||||
=============================================================
|
||||
Version 1.0 - Script Done.(17/7/2010)
|
||||
=============================================================
|
||||
*/
|
||||
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
status++;
|
||||
if (mode != 1) {
|
||||
if(type == 1 && mode == 0)
|
||||
status -= 2;
|
||||
else{
|
||||
//if(status == 0){
|
||||
qm.sendOk("Really? It's an urgent matter, so if you have some time, please see me.");
|
||||
qm.dispose();
|
||||
return;
|
||||
//} else if(status == 3){
|
||||
//qm.sendNext("Okay. In that case, I'll just give you the routes to the Kingdom of Mushroom. #bNear the west entrance of Henesys,#k you'll find an #bempty house#k. Enter the house, and turn left to enter#b<Themed Dungeon : Mushroom Castle>#k. That's the entrance to the Kingdom of Mushroom. There's not much time!");
|
||||
//qm.forceStartQuest();
|
||||
//return;
|
||||
}
|
||||
}
|
||||
//}
|
||||
if(status == 0)
|
||||
qm.sendAcceptDecline("Now that you have made the job advancement, you look like you're ready for this. I have something I'd like to ask you for help. Are you willing to listen?");
|
||||
if(status == 1)
|
||||
qm.sendNext("What happened is that the #bKingdom of Mushroom#k is currently in disarray. Kingdom of Mushroom is located near Henesys, featuring the peace-loving, intelligent King Mush. Recently, he began to feel ill, so he decided to appoint his only daughter #bPrincess Violetta#k. Something must have happened since then for the kingdom to be in its current state.");
|
||||
if(status == 2)
|
||||
qm.sendNext("I am not aware of the exact details, but it's obvious something terrible had taken place, so I think it'll be better if you go there and assess the damage yourself. An explorer like you seem more than capable of saving Kingdom of Mushroom. I have just written you a #brecommendation letter#k, so I suggest you head over to Kingdom of Mushroom immediately and look for the #bHead Patrol Officer#k.\r\n\r\n#fUI/UIWindow.img/QuestIcon/4/0#\r\n#v4032375# #t4032375#");
|
||||
if(status == 3)
|
||||
qm.sendYesNo("By the way, do you know where Kingdom of Mushroom is located? It'll be okay if you can find your way there, but if you don't mind, I can take you straight to the entrance.");
|
||||
if(status == 4){
|
||||
qm.gainItem(4032375, 1);
|
||||
qm.forceStartQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
status++;
|
||||
if (mode != 1) {
|
||||
if(type == 1 && mode == 0)
|
||||
status -= 2;
|
||||
else{
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
}
|
||||
if(status == 0)
|
||||
qm.sendNext("Hmmm? Is that a #brecommendation letter from the job instructor#k??! What is this, are you the one that came to save us, the Kingdom of Mushroom?");
|
||||
if(status == 1)
|
||||
qm.sendNextPrev("Hmmm... okay. Since the letter is from the job instructor, I suppose you are really the one. I apologize for not introducing myself to you earlier. I'm the #bHead Security Officer#k in charge of protecting King Mush. As you can see, this temporary hideout is protected by the team of security and soldiers. Our situation may be dire, but nevertheless, welcome to Kingdom of Mushroom.");
|
||||
if(status == 2){
|
||||
qm.forceCompleteQuest();
|
||||
qm.gainItem(4032375, -1);
|
||||
qm.forceStartQuest(2312);
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
64
scripts/quest/2305.js
Normal file
64
scripts/quest/2305.js
Normal file
@@ -0,0 +1,64 @@
|
||||
/* ===========================================================
|
||||
Resonance
|
||||
NPC Name: Maple Administrator
|
||||
Description: Quest - Kingdom of Mushroom in Danger
|
||||
=============================================================
|
||||
Version 1.0 - Script Done.(17/7/2010)
|
||||
=============================================================
|
||||
*/
|
||||
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
status++;
|
||||
if (mode != 1) {
|
||||
if(type == 1 && mode == 0)
|
||||
status -= 2;
|
||||
else{
|
||||
//if(status == 0){
|
||||
qm.sendOk("Really? It's an urgent matter, so if you have some time, please see me.");
|
||||
qm.dispose();
|
||||
return;
|
||||
//} else if(status == 3){
|
||||
//qm.sendNext("Okay. In that case, I'll just give you the routes to the Kingdom of Mushroom. #bNear the west entrance of Henesys,#k you'll find an #bempty house#k. Enter the house, and turn left to enter#b<Themed Dungeon : Mushroom Castle>#k. That's the entrance to the Kingdom of Mushroom. There's not much time!");
|
||||
//qm.forceStartQuest();
|
||||
//return;
|
||||
}
|
||||
}
|
||||
//}
|
||||
if(status == 0)
|
||||
qm.sendAcceptDecline("Now that you have made the job advancement, you look like you're ready for this. I have something I'd like to ask you for help. Are you willing to listen?");
|
||||
if(status == 1)
|
||||
qm.sendNext("What happened is that the #bKingdom of Mushroom#k is currently in disarray. Kingdom of Mushroom is located near Henesys, featuring the peace-loving, intelligent King Mush. Recently, he began to feel ill, so he decided to appoint his only daughter #bPrincess Violetta#k. Something must have happened since then for the kingdom to be in its current state.");
|
||||
if(status == 2)
|
||||
qm.sendNext("I am not aware of the exact details, but it's obvious something terrible had taken place, so I think it'll be better if you go there and assess the damage yourself. An explorer like you seem more than capable of saving Kingdom of Mushroom. I have just written you a #brecommendation letter#k, so I suggest you head over to Kingdom of Mushroom immediately and look for the #bHead Patrol Officer#k.\r\n\r\n#fUI/UIWindow.img/QuestIcon/4/0#\r\n#v4032375# #t4032375#");
|
||||
if(status == 3)
|
||||
qm.sendYesNo("By the way, do you know where Kingdom of Mushroom is located? It'll be okay if you can find your way there, but if you don't mind, I can take you straight to the entrance.");
|
||||
if(status == 4){
|
||||
qm.gainItem(4032375, 1);
|
||||
qm.forceStartQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
status++;
|
||||
if (mode != 1) {
|
||||
if(type == 1 && mode == 0)
|
||||
status -= 2;
|
||||
else{
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
}
|
||||
if(status == 0)
|
||||
qm.sendNext("Hmmm? Is that a #brecommendation letter from the job instructor#k??! What is this, are you the one that came to save us, the Kingdom of Mushroom?");
|
||||
if(status == 1)
|
||||
qm.sendNextPrev("Hmmm... okay. Since the letter is from the job instructor, I suppose you are really the one. I apologize for not introducing myself to you earlier. I'm the #bHead Security Officer#k in charge of protecting King Mush. As you can see, this temporary hideout is protected by the team of security and soldiers. Our situation may be dire, but nevertheless, welcome to Kingdom of Mushroom.");
|
||||
if(status == 2){
|
||||
qm.forceCompleteQuest();
|
||||
qm.gainItem(4032375, -1);
|
||||
qm.forceStartQuest(2312);
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
64
scripts/quest/2306.js
Normal file
64
scripts/quest/2306.js
Normal file
@@ -0,0 +1,64 @@
|
||||
/* ===========================================================
|
||||
Resonance
|
||||
NPC Name: Maple Administrator
|
||||
Description: Quest - Kingdom of Mushroom in Danger
|
||||
=============================================================
|
||||
Version 1.0 - Script Done.(17/7/2010)
|
||||
=============================================================
|
||||
*/
|
||||
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
status++;
|
||||
if (mode != 1) {
|
||||
if(type == 1 && mode == 0)
|
||||
status -= 2;
|
||||
else{
|
||||
//if(status == 0){
|
||||
qm.sendOk("Really? It's an urgent matter, so if you have some time, please see me.");
|
||||
qm.dispose();
|
||||
return;
|
||||
//} else if(status == 3){
|
||||
//qm.sendNext("Okay. In that case, I'll just give you the routes to the Kingdom of Mushroom. #bNear the west entrance of Henesys,#k you'll find an #bempty house#k. Enter the house, and turn left to enter#b<Themed Dungeon : Mushroom Castle>#k. That's the entrance to the Kingdom of Mushroom. There's not much time!");
|
||||
//qm.forceStartQuest();
|
||||
//return;
|
||||
}
|
||||
}
|
||||
//}
|
||||
if(status == 0)
|
||||
qm.sendAcceptDecline("Now that you have made the job advancement, you look like you're ready for this. I have something I'd like to ask you for help. Are you willing to listen?");
|
||||
if(status == 1)
|
||||
qm.sendNext("What happened is that the #bKingdom of Mushroom#k is currently in disarray. Kingdom of Mushroom is located near Henesys, featuring the peace-loving, intelligent King Mush. Recently, he began to feel ill, so he decided to appoint his only daughter #bPrincess Violetta#k. Something must have happened since then for the kingdom to be in its current state.");
|
||||
if(status == 2)
|
||||
qm.sendNext("I am not aware of the exact details, but it's obvious something terrible had taken place, so I think it'll be better if you go there and assess the damage yourself. An explorer like you seem more than capable of saving Kingdom of Mushroom. I have just written you a #brecommendation letter#k, so I suggest you head over to Kingdom of Mushroom immediately and look for the #bHead Patrol Officer#k.\r\n\r\n#fUI/UIWindow.img/QuestIcon/4/0#\r\n#v4032375# #t4032375#");
|
||||
if(status == 3)
|
||||
qm.sendYesNo("By the way, do you know where Kingdom of Mushroom is located? It'll be okay if you can find your way there, but if you don't mind, I can take you straight to the entrance.");
|
||||
if(status == 4){
|
||||
qm.gainItem(4032375, 1);
|
||||
qm.forceStartQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
status++;
|
||||
if (mode != 1) {
|
||||
if(type == 1 && mode == 0)
|
||||
status -= 2;
|
||||
else{
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
}
|
||||
if(status == 0)
|
||||
qm.sendNext("Hmmm? Is that a #brecommendation letter from the job instructor#k??! What is this, are you the one that came to save us, the Kingdom of Mushroom?");
|
||||
if(status == 1)
|
||||
qm.sendNextPrev("Hmmm... okay. Since the letter is from the job instructor, I suppose you are really the one. I apologize for not introducing myself to you earlier. I'm the #bHead Security Officer#k in charge of protecting King Mush. As you can see, this temporary hideout is protected by the team of security and soldiers. Our situation may be dire, but nevertheless, welcome to Kingdom of Mushroom.");
|
||||
if(status == 2){
|
||||
qm.forceCompleteQuest();
|
||||
qm.gainItem(4032375, -1);
|
||||
qm.forceStartQuest(2312);
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
64
scripts/quest/2307.js
Normal file
64
scripts/quest/2307.js
Normal file
@@ -0,0 +1,64 @@
|
||||
/* ===========================================================
|
||||
Resonance
|
||||
NPC Name: Maple Administrator
|
||||
Description: Quest - Kingdom of Mushroom in Danger
|
||||
=============================================================
|
||||
Version 1.0 - Script Done.(17/7/2010)
|
||||
=============================================================
|
||||
*/
|
||||
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
status++;
|
||||
if (mode != 1) {
|
||||
if(type == 1 && mode == 0)
|
||||
status -= 2;
|
||||
else{
|
||||
//if(status == 0){
|
||||
qm.sendOk("Really? It's an urgent matter, so if you have some time, please see me.");
|
||||
qm.dispose();
|
||||
return;
|
||||
//} else if(status == 3){
|
||||
//qm.sendNext("Okay. In that case, I'll just give you the routes to the Kingdom of Mushroom. #bNear the west entrance of Henesys,#k you'll find an #bempty house#k. Enter the house, and turn left to enter#b<Themed Dungeon : Mushroom Castle>#k. That's the entrance to the Kingdom of Mushroom. There's not much time!");
|
||||
//qm.forceStartQuest();
|
||||
//return;
|
||||
}
|
||||
}
|
||||
//}
|
||||
if(status == 0)
|
||||
qm.sendAcceptDecline("Now that you have made the job advancement, you look like you're ready for this. I have something I'd like to ask you for help. Are you willing to listen?");
|
||||
if(status == 1)
|
||||
qm.sendNext("What happened is that the #bKingdom of Mushroom#k is currently in disarray. Kingdom of Mushroom is located near Henesys, featuring the peace-loving, intelligent King Mush. Recently, he began to feel ill, so he decided to appoint his only daughter #bPrincess Violetta#k. Something must have happened since then for the kingdom to be in its current state.");
|
||||
if(status == 2)
|
||||
qm.sendNext("I am not aware of the exact details, but it's obvious something terrible had taken place, so I think it'll be better if you go there and assess the damage yourself. An explorer like you seem more than capable of saving Kingdom of Mushroom. I have just written you a #brecommendation letter#k, so I suggest you head over to Kingdom of Mushroom immediately and look for the #bHead Patrol Officer#k.\r\n\r\n#fUI/UIWindow.img/QuestIcon/4/0#\r\n#v4032375# #t4032375#");
|
||||
if(status == 3)
|
||||
qm.sendYesNo("By the way, do you know where Kingdom of Mushroom is located? It'll be okay if you can find your way there, but if you don't mind, I can take you straight to the entrance.");
|
||||
if(status == 4){
|
||||
qm.gainItem(4032375, 1);
|
||||
qm.forceStartQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
status++;
|
||||
if (mode != 1) {
|
||||
if(type == 1 && mode == 0)
|
||||
status -= 2;
|
||||
else{
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
}
|
||||
if(status == 0)
|
||||
qm.sendNext("Hmmm? Is that a #brecommendation letter from the job instructor#k??! What is this, are you the one that came to save us, the Kingdom of Mushroom?");
|
||||
if(status == 1)
|
||||
qm.sendNextPrev("Hmmm... okay. Since the letter is from the job instructor, I suppose you are really the one. I apologize for not introducing myself to you earlier. I'm the #bHead Security Officer#k in charge of protecting King Mush. As you can see, this temporary hideout is protected by the team of security and soldiers. Our situation may be dire, but nevertheless, welcome to Kingdom of Mushroom.");
|
||||
if(status == 2){
|
||||
qm.forceCompleteQuest();
|
||||
qm.gainItem(4032375, -1);
|
||||
qm.forceStartQuest(2312);
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
64
scripts/quest/2308.js
Normal file
64
scripts/quest/2308.js
Normal file
@@ -0,0 +1,64 @@
|
||||
/* ===========================================================
|
||||
Resonance
|
||||
NPC Name: Maple Administrator
|
||||
Description: Quest - Kingdom of Mushroom in Danger
|
||||
=============================================================
|
||||
Version 1.0 - Script Done.(17/7/2010)
|
||||
=============================================================
|
||||
*/
|
||||
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
status++;
|
||||
if (mode != 1) {
|
||||
if(type == 1 && mode == 0)
|
||||
status -= 2;
|
||||
else{
|
||||
//if(status == 0){
|
||||
qm.sendOk("Really? It's an urgent matter, so if you have some time, please see me.");
|
||||
qm.dispose();
|
||||
return;
|
||||
//} else if(status == 3){
|
||||
//qm.sendNext("Okay. In that case, I'll just give you the routes to the Kingdom of Mushroom. #bNear the west entrance of Henesys,#k you'll find an #bempty house#k. Enter the house, and turn left to enter#b<Themed Dungeon : Mushroom Castle>#k. That's the entrance to the Kingdom of Mushroom. There's not much time!");
|
||||
//qm.forceStartQuest();
|
||||
//return;
|
||||
}
|
||||
}
|
||||
//}
|
||||
if(status == 0)
|
||||
qm.sendAcceptDecline("Now that you have made the job advancement, you look like you're ready for this. I have something I'd like to ask you for help. Are you willing to listen?");
|
||||
if(status == 1)
|
||||
qm.sendNext("What happened is that the #bKingdom of Mushroom#k is currently in disarray. Kingdom of Mushroom is located near Henesys, featuring the peace-loving, intelligent King Mush. Recently, he began to feel ill, so he decided to appoint his only daughter #bPrincess Violetta#k. Something must have happened since then for the kingdom to be in its current state.");
|
||||
if(status == 2)
|
||||
qm.sendNext("I am not aware of the exact details, but it's obvious something terrible had taken place, so I think it'll be better if you go there and assess the damage yourself. An explorer like you seem more than capable of saving Kingdom of Mushroom. I have just written you a #brecommendation letter#k, so I suggest you head over to Kingdom of Mushroom immediately and look for the #bHead Patrol Officer#k.\r\n\r\n#fUI/UIWindow.img/QuestIcon/4/0#\r\n#v4032375# #t4032375#");
|
||||
if(status == 3)
|
||||
qm.sendYesNo("By the way, do you know where Kingdom of Mushroom is located? It'll be okay if you can find your way there, but if you don't mind, I can take you straight to the entrance.");
|
||||
if(status == 4){
|
||||
qm.gainItem(4032375, 1);
|
||||
qm.forceStartQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
status++;
|
||||
if (mode != 1) {
|
||||
if(type == 1 && mode == 0)
|
||||
status -= 2;
|
||||
else{
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
}
|
||||
if(status == 0)
|
||||
qm.sendNext("Hmmm? Is that a #brecommendation letter from the job instructor#k??! What is this, are you the one that came to save us, the Kingdom of Mushroom?");
|
||||
if(status == 1)
|
||||
qm.sendNextPrev("Hmmm... okay. Since the letter is from the job instructor, I suppose you are really the one. I apologize for not introducing myself to you earlier. I'm the #bHead Security Officer#k in charge of protecting King Mush. As you can see, this temporary hideout is protected by the team of security and soldiers. Our situation may be dire, but nevertheless, welcome to Kingdom of Mushroom.");
|
||||
if(status == 2){
|
||||
qm.forceCompleteQuest();
|
||||
qm.gainItem(4032375, -1);
|
||||
qm.forceStartQuest(2312);
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
64
scripts/quest/2309.js
Normal file
64
scripts/quest/2309.js
Normal file
@@ -0,0 +1,64 @@
|
||||
/* ===========================================================
|
||||
Resonance
|
||||
NPC Name: Maple Administrator
|
||||
Description: Quest - Kingdom of Mushroom in Danger
|
||||
=============================================================
|
||||
Version 1.0 - Script Done.(17/7/2010)
|
||||
=============================================================
|
||||
*/
|
||||
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
status++;
|
||||
if (mode != 1) {
|
||||
if(type == 1 && mode == 0)
|
||||
status -= 2;
|
||||
else{
|
||||
//if(status == 0){
|
||||
qm.sendOk("Really? It's an urgent matter, so if you have some time, please see me.");
|
||||
qm.dispose();
|
||||
return;
|
||||
//} else if(status == 3){
|
||||
//qm.sendNext("Okay. In that case, I'll just give you the routes to the Kingdom of Mushroom. #bNear the west entrance of Henesys,#k you'll find an #bempty house#k. Enter the house, and turn left to enter#b<Themed Dungeon : Mushroom Castle>#k. That's the entrance to the Kingdom of Mushroom. There's not much time!");
|
||||
//qm.forceStartQuest();
|
||||
//return;
|
||||
}
|
||||
}
|
||||
//}
|
||||
if(status == 0)
|
||||
qm.sendAcceptDecline("Now that you have made the job advancement, you look like you're ready for this. I have something I'd like to ask you for help. Are you willing to listen?");
|
||||
if(status == 1)
|
||||
qm.sendNext("What happened is that the #bKingdom of Mushroom#k is currently in disarray. Kingdom of Mushroom is located near Henesys, featuring the peace-loving, intelligent King Mush. Recently, he began to feel ill, so he decided to appoint his only daughter #bPrincess Violetta#k. Something must have happened since then for the kingdom to be in its current state.");
|
||||
if(status == 2)
|
||||
qm.sendNext("I am not aware of the exact details, but it's obvious something terrible had taken place, so I think it'll be better if you go there and assess the damage yourself. An explorer like you seem more than capable of saving Kingdom of Mushroom. I have just written you a #brecommendation letter#k, so I suggest you head over to Kingdom of Mushroom immediately and look for the #bHead Patrol Officer#k.\r\n\r\n#fUI/UIWindow.img/QuestIcon/4/0#\r\n#v4032375# #t4032375#");
|
||||
if(status == 3)
|
||||
qm.sendYesNo("By the way, do you know where Kingdom of Mushroom is located? It'll be okay if you can find your way there, but if you don't mind, I can take you straight to the entrance.");
|
||||
if(status == 4){
|
||||
qm.gainItem(4032375, 1);
|
||||
qm.forceStartQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
status++;
|
||||
if (mode != 1) {
|
||||
if(type == 1 && mode == 0)
|
||||
status -= 2;
|
||||
else{
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
}
|
||||
if(status == 0)
|
||||
qm.sendNext("Hmmm? Is that a #brecommendation letter from the job instructor#k??! What is this, are you the one that came to save us, the Kingdom of Mushroom?");
|
||||
if(status == 1)
|
||||
qm.sendNextPrev("Hmmm... okay. Since the letter is from the job instructor, I suppose you are really the one. I apologize for not introducing myself to you earlier. I'm the #bHead Security Officer#k in charge of protecting King Mush. As you can see, this temporary hideout is protected by the team of security and soldiers. Our situation may be dire, but nevertheless, welcome to Kingdom of Mushroom.");
|
||||
if(status == 2){
|
||||
qm.forceCompleteQuest();
|
||||
qm.gainItem(4032375, -1);
|
||||
qm.forceStartQuest(2312);
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
64
scripts/quest/2310.js
Normal file
64
scripts/quest/2310.js
Normal file
@@ -0,0 +1,64 @@
|
||||
/* ===========================================================
|
||||
Resonance
|
||||
NPC Name: Maple Administrator
|
||||
Description: Quest - Kingdom of Mushroom in Danger
|
||||
=============================================================
|
||||
Version 1.0 - Script Done.(17/7/2010)
|
||||
=============================================================
|
||||
*/
|
||||
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
status++;
|
||||
if (mode != 1) {
|
||||
if(type == 1 && mode == 0)
|
||||
status -= 2;
|
||||
else{
|
||||
//if(status == 0){
|
||||
qm.sendOk("Really? It's an urgent matter, so if you have some time, please see me.");
|
||||
qm.dispose();
|
||||
return;
|
||||
//} else if(status == 3){
|
||||
//qm.sendNext("Okay. In that case, I'll just give you the routes to the Kingdom of Mushroom. #bNear the west entrance of Henesys,#k you'll find an #bempty house#k. Enter the house, and turn left to enter#b<Themed Dungeon : Mushroom Castle>#k. That's the entrance to the Kingdom of Mushroom. There's not much time!");
|
||||
//qm.forceStartQuest();
|
||||
//return;
|
||||
}
|
||||
}
|
||||
//}
|
||||
if(status == 0)
|
||||
qm.sendAcceptDecline("Now that you have made the job advancement, you look like you're ready for this. I have something I'd like to ask you for help. Are you willing to listen?");
|
||||
if(status == 1)
|
||||
qm.sendNext("What happened is that the #bKingdom of Mushroom#k is currently in disarray. Kingdom of Mushroom is located near Henesys, featuring the peace-loving, intelligent King Mush. Recently, he began to feel ill, so he decided to appoint his only daughter #bPrincess Violetta#k. Something must have happened since then for the kingdom to be in its current state.");
|
||||
if(status == 2)
|
||||
qm.sendNext("I am not aware of the exact details, but it's obvious something terrible had taken place, so I think it'll be better if you go there and assess the damage yourself. An explorer like you seem more than capable of saving Kingdom of Mushroom. I have just written you a #brecommendation letter#k, so I suggest you head over to Kingdom of Mushroom immediately and look for the #bHead Patrol Officer#k.\r\n\r\n#fUI/UIWindow.img/QuestIcon/4/0#\r\n#v4032375# #t4032375#");
|
||||
if(status == 3)
|
||||
qm.sendYesNo("By the way, do you know where Kingdom of Mushroom is located? It'll be okay if you can find your way there, but if you don't mind, I can take you straight to the entrance.");
|
||||
if(status == 4){
|
||||
qm.gainItem(4032375, 1);
|
||||
qm.forceStartQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
status++;
|
||||
if (mode != 1) {
|
||||
if(type == 1 && mode == 0)
|
||||
status -= 2;
|
||||
else{
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
}
|
||||
if(status == 0)
|
||||
qm.sendNext("Hmmm? Is that a #brecommendation letter from the job instructor#k??! What is this, are you the one that came to save us, the Kingdom of Mushroom?");
|
||||
if(status == 1)
|
||||
qm.sendNextPrev("Hmmm... okay. Since the letter is from the job instructor, I suppose you are really the one. I apologize for not introducing myself to you earlier. I'm the #bHead Security Officer#k in charge of protecting King Mush. As you can see, this temporary hideout is protected by the team of security and soldiers. Our situation may be dire, but nevertheless, welcome to Kingdom of Mushroom.");
|
||||
if(status == 2){
|
||||
qm.forceCompleteQuest();
|
||||
qm.gainItem(4032375, -1);
|
||||
qm.forceStartQuest(2312);
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
57
scripts/quest/2314.js
Normal file
57
scripts/quest/2314.js
Normal file
@@ -0,0 +1,57 @@
|
||||
/* ===========================================================
|
||||
Resonance
|
||||
NPC Name: Minister of Home Affairs
|
||||
Map(s): Mushroom Castle: Corner of Mushroom Forest(106020000)
|
||||
Description: Quest - Exploring Mushroom Forest(1)
|
||||
=============================================================
|
||||
Version 1.0 - Script Done.(18/7/2010)
|
||||
=============================================================
|
||||
*/
|
||||
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
status++;
|
||||
if (mode != 1) {
|
||||
if(type == 1 && mode == 0)
|
||||
status -= 2;
|
||||
else{
|
||||
qm.sendNext("Please do not lose faith in our Kingdom of Mushroom.");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
}
|
||||
if (status == 0)
|
||||
qm.sendYesNo("In order to rescue the princess, you must first navigate the Mushroom Forest. King Pepe set up a powerful barrier forbidding anyone from entering the castle. Please investigate this matter for us.");
|
||||
if (status == 1)
|
||||
qm.sendNext("You'll run into the barrier at the Mushroom Forest by heading east of where you are standing right now. Please be careful. I hear that the area is infested with crazy, fear-inducing monsters.");
|
||||
if(status == 2){
|
||||
//qm.forceStartQuest();
|
||||
//qm.forceStartQuest(2314,"1");
|
||||
qm.gainExp(8300);
|
||||
qm.sendOk("I see, so it was indeed not a regular barrier by any means. Great work there. If not for you help, we wouldn't have had a clue as to what that was all about.");
|
||||
qm.forceCompleteQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
status++;
|
||||
if (mode != 1) {
|
||||
if(type == 1 && mode == 0)
|
||||
status -= 2;
|
||||
else{
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
}
|
||||
if (status == 0)
|
||||
qm.sendOk("I see that you have thoroughly investigated the barrier at the Mushroom Forest. What was it like?");
|
||||
if (status == 1){
|
||||
qm.gainExp(8300);
|
||||
qm.sendOk("I see, so it was indeed not a regular barrier by any means. Great work there. If not for you help, we wouldn't have had a clue as to what that was all about.");
|
||||
qm.forceCompleteQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user