Nihal quests + Reactor's mapitem detection + MapleQuestMesoFetcher
Improved quests and game progression in the Nihal Desert region. Reactors that uses map items now automatically detects those already on the ground after changing states. New tool: MapleQuestMesoFetcher. This tool parses the Quest.wz XML files, detecting and reporting quest ids from quests that does not properly checks for mesos to take from the player before completing the quest.
This commit is contained in:
@@ -1,8 +1,6 @@
|
||||
/*
|
||||
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 file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
|
||||
@@ -1,8 +1,6 @@
|
||||
/*
|
||||
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 file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
|
||||
@@ -1,8 +1,6 @@
|
||||
/*
|
||||
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 file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
|
||||
@@ -1,8 +1,6 @@
|
||||
/*
|
||||
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 file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
|
||||
@@ -1,8 +1,6 @@
|
||||
/*
|
||||
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 file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
|
||||
@@ -1,8 +1,6 @@
|
||||
/*
|
||||
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 file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
|
||||
@@ -1,8 +1,6 @@
|
||||
/*
|
||||
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 file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
|
||||
@@ -1,8 +1,6 @@
|
||||
/*
|
||||
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 file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
|
||||
10
scripts/map/onUserEnter/926000000.js
Normal file
10
scripts/map/onUserEnter/926000000.js
Normal file
@@ -0,0 +1,10 @@
|
||||
function start(ms) {
|
||||
var map = ms.getClient().getChannelServer().getMapFactory().getMap(926000000);
|
||||
map.resetPQ(1);
|
||||
|
||||
if(map.countMonster(9100013) == 0) {
|
||||
map.spawnMonsterOnGroundBelow(MapleLifeFactory.getMonster(9100013), new java.awt.Point(82, 200));
|
||||
}
|
||||
|
||||
return(true);
|
||||
}
|
||||
25
scripts/map/onUserEnter/926000010.js
Normal file
25
scripts/map/onUserEnter/926000010.js
Normal file
@@ -0,0 +1,25 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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/>.
|
||||
*/
|
||||
|
||||
function start(ms) {
|
||||
var map = ms.getClient().getChannelServer().getMapFactory().getMap(926000010);
|
||||
map.resetPQ(1);
|
||||
return(true);
|
||||
}
|
||||
20
scripts/map/onUserEnter/926120300.js
Normal file
20
scripts/map/onUserEnter/926120300.js
Normal file
@@ -0,0 +1,20 @@
|
||||
function getInactiveReactors(map) {
|
||||
var reactors = new Array();
|
||||
|
||||
var iter = map.getReactors().iterator();
|
||||
while (iter.hasNext()) {
|
||||
var mo = iter.next();
|
||||
if (mo.getState() >= 7) {
|
||||
reactors.push(mo);
|
||||
}
|
||||
}
|
||||
|
||||
return reactors;
|
||||
}
|
||||
|
||||
function start(ms) {
|
||||
var map = ms.getClient().getChannelServer().getMapFactory().getMap(926120300);
|
||||
map.resetReactors(getInactiveReactors(map));
|
||||
|
||||
return(true);
|
||||
}
|
||||
@@ -22,7 +22,7 @@ function action(mode, type, selection) {
|
||||
} else if (status == 2) {
|
||||
if (!cm.canHold(itemids[selection], 1)) {
|
||||
cm.sendOk("Please make room");
|
||||
} else if (cm.itemQuantity(4001261) < 1) {
|
||||
} else if (cm.getItemQuantity(4001261) < 1) {
|
||||
cm.sendOk("You don't have enough leathers.");
|
||||
} else {
|
||||
cm.gainItem(4001261, -1);
|
||||
|
||||
56
scripts/npc/1092018.js
Normal file
56
scripts/npc/1092018.js
Normal file
@@ -0,0 +1,56 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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;
|
||||
|
||||
function start() {
|
||||
status = -1;
|
||||
action(1, 0, 0);
|
||||
}
|
||||
|
||||
function action(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
cm.dispose();
|
||||
} else {
|
||||
if (mode == 0 && type > 0) {
|
||||
cm.dispose();
|
||||
return;
|
||||
}
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
|
||||
if(status == 0) {
|
||||
var qs = cm.getQuestStatus(2162);
|
||||
|
||||
if((qs == 0 || qs == 1) && !cm.haveItem(4031839, 1)) {
|
||||
if(cm.canHold(4031839, 1)) {
|
||||
cm.gainItem(4031839, 1);
|
||||
cm.sendNext("(You retrieved a Crumpled Paper standing out of the trash can. It's content seems important.)", 2);
|
||||
} else {
|
||||
cm.sendNext("(You see a Crumpled Paper standing out of the trash can. It's content seems important, but you can't retrieve it since your inventory is full.)", 2);
|
||||
}
|
||||
}
|
||||
|
||||
cm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -30,8 +30,8 @@
|
||||
**/
|
||||
|
||||
var status = 0;
|
||||
var questid = new Array(3615,3616,3617,3618,3630,3633,3639);
|
||||
var questitem = new Array(4031235,4031236,4031237,4031238,4031270,4031280,4031298);
|
||||
var questid = new Array(3615,3616,3617,3618,3630,3633,3639,3920);
|
||||
var questitem = new Array(4031235,4031236,4031237,4031238,4031270,4031280,4031298,4031591);
|
||||
var counter = 0;
|
||||
var books;
|
||||
var i;
|
||||
|
||||
@@ -1,8 +1,6 @@
|
||||
/*
|
||||
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 file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
@@ -19,11 +17,15 @@
|
||||
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/>.
|
||||
*/
|
||||
/* NPC Base
|
||||
Map Name (Map ID)
|
||||
Extra NPC info.
|
||||
/* Oasis near Ariant Castle
|
||||
*/
|
||||
|
||||
importPackage(Packages.client);
|
||||
|
||||
function isTigunMorphed(ch) {
|
||||
return ch.getBuffSource(MapleBuffStat.MORPH) == 2210005;
|
||||
}
|
||||
|
||||
function start() {
|
||||
status = -1;
|
||||
action(1, 0, 0);
|
||||
@@ -38,12 +40,30 @@ function action(mode, type, selection) {
|
||||
else
|
||||
status--;
|
||||
if (status == 0 && mode == 1) {
|
||||
if(cm.isQuestStarted(3900) && cm.getPlayer().getQuestInfo(3900) != 5) {
|
||||
cm.sendOk("#b(You drink the water from the oasis and feel refreshed.)", 2);
|
||||
//TODO: Update quest progress.
|
||||
cm.getPlayer().updateQuestInfo(3900, "5");
|
||||
}
|
||||
cm.dispose();
|
||||
}
|
||||
if(cm.isQuestStarted(3900) && cm.getPlayer().getQuestInfo(3900) != 5) {
|
||||
cm.sendOk("#b(You drink the water from the oasis and feel refreshed.)", 2);
|
||||
cm.getPlayer().updateQuestInfo(3900, "5");
|
||||
} else if(cm.isQuestCompleted(3938)) {
|
||||
if(cm.canHold(2210005)) {
|
||||
if(!cm.haveItem(2210005) && !isTigunMorphed(cm.getPlayer())) {
|
||||
cm.gainItem(2210005, 1);
|
||||
cm.sendOk("You found a lock of hair (probably Tigun's) floating by the water and catched it. Remembering how #bJano#k made it last time, you crafted a new #t2210005#", 2);
|
||||
}
|
||||
} else {
|
||||
cm.sendOk("You don't have a USE slot available.", 2);
|
||||
}
|
||||
} else if(cm.isQuestStarted(3934) || (cm.isQuestCompleted(3934) && !cm.isQuestCompleted(3935))) {
|
||||
if(cm.canHold(2210005)) {
|
||||
if(!cm.haveItem(2210005) && !isTigunMorphed(cm.getPlayer())) {
|
||||
cm.gainItem(2210005, 1);
|
||||
cm.sendOk("You managed to find a strange flask floating on the river. It seems like a transformation bottle mimicking one of the guards of the castle, maybe with it you will be able to roam inside freely.", 2);
|
||||
}
|
||||
} else {
|
||||
cm.sendOk("You found a strange flask floating on the river. But you decided to ignore it since you don't have a USE slot available.", 2);
|
||||
}
|
||||
}
|
||||
|
||||
cm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
56
scripts/npc/2103002.js
Normal file
56
scripts/npc/2103002.js
Normal file
@@ -0,0 +1,56 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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/>.
|
||||
*/
|
||||
/* Queen's treasure chest
|
||||
*/
|
||||
|
||||
var status;
|
||||
|
||||
function start() {
|
||||
status = -1;
|
||||
action(1, 0, 0);
|
||||
}
|
||||
|
||||
function action(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
cm.dispose();
|
||||
} else {
|
||||
if (mode == 0 && type > 0) {
|
||||
cm.dispose();
|
||||
return;
|
||||
}
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
|
||||
if(status == 0) {
|
||||
if(cm.isQuestStarted(3923) && !cm.haveItem(4031578, 1)) {
|
||||
if(cm.canHold(4031578, 1)) {
|
||||
cm.sendOk("You have just swiped the ring. Clear the area asap.", 2);
|
||||
cm.gainItem(4031578, 1);
|
||||
} else {
|
||||
cm.sendOk("You don't have a ETC slot available.", 2);
|
||||
}
|
||||
}
|
||||
|
||||
cm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
57
scripts/npc/2103003.js
Normal file
57
scripts/npc/2103003.js
Normal file
@@ -0,0 +1,57 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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/>.
|
||||
*/
|
||||
/*
|
||||
Food depot on Ariant Residential area
|
||||
*/
|
||||
|
||||
var status;
|
||||
|
||||
function start() {
|
||||
status = -1;
|
||||
action(1, 0, 0);
|
||||
}
|
||||
|
||||
function action(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
cm.dispose();
|
||||
} else {
|
||||
if (mode == 0 && type > 0) {
|
||||
cm.dispose();
|
||||
return;
|
||||
}
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
|
||||
if(status == 0) {
|
||||
if(cm.isQuestStarted(3929)) {
|
||||
if(cm.getQuestProgress(3929, 0) != 1) {
|
||||
if(cm.haveItem(4031580)) {
|
||||
cm.gainItem(4031580, -1);
|
||||
cm.setQuestProgress(3929, 0, 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
cm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
57
scripts/npc/2103004.js
Normal file
57
scripts/npc/2103004.js
Normal file
@@ -0,0 +1,57 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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/>.
|
||||
*/
|
||||
/*
|
||||
Food depot on Ariant Residential area
|
||||
*/
|
||||
|
||||
var status;
|
||||
|
||||
function start() {
|
||||
status = -1;
|
||||
action(1, 0, 0);
|
||||
}
|
||||
|
||||
function action(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
cm.dispose();
|
||||
} else {
|
||||
if (mode == 0 && type > 0) {
|
||||
cm.dispose();
|
||||
return;
|
||||
}
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
|
||||
if(status == 0) {
|
||||
if(cm.isQuestStarted(3929)) {
|
||||
if(cm.getQuestProgress(3929, 2) != 1) {
|
||||
if(cm.haveItem(4031580)) {
|
||||
cm.gainItem(4031580, -1);
|
||||
cm.setQuestProgress(3929, 2, 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
cm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
57
scripts/npc/2103005.js
Normal file
57
scripts/npc/2103005.js
Normal file
@@ -0,0 +1,57 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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/>.
|
||||
*/
|
||||
/*
|
||||
Food depot on Ariant Residential area
|
||||
*/
|
||||
|
||||
var status;
|
||||
|
||||
function start() {
|
||||
status = -1;
|
||||
action(1, 0, 0);
|
||||
}
|
||||
|
||||
function action(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
cm.dispose();
|
||||
} else {
|
||||
if (mode == 0 && type > 0) {
|
||||
cm.dispose();
|
||||
return;
|
||||
}
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
|
||||
if(status == 0) {
|
||||
if(cm.isQuestStarted(3929)) {
|
||||
if(cm.getQuestProgress(3929, 1) != 1) {
|
||||
if(cm.haveItem(4031580)) {
|
||||
cm.gainItem(4031580, -1);
|
||||
cm.setQuestProgress(3929, 1, 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
cm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
57
scripts/npc/2103006.js
Normal file
57
scripts/npc/2103006.js
Normal file
@@ -0,0 +1,57 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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/>.
|
||||
*/
|
||||
/*
|
||||
Food depot on Ariant Residential area
|
||||
*/
|
||||
|
||||
var status;
|
||||
|
||||
function start() {
|
||||
status = -1;
|
||||
action(1, 0, 0);
|
||||
}
|
||||
|
||||
function action(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
cm.dispose();
|
||||
} else {
|
||||
if (mode == 0 && type > 0) {
|
||||
cm.dispose();
|
||||
return;
|
||||
}
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
|
||||
if(status == 0) {
|
||||
if(cm.isQuestStarted(3929)) {
|
||||
if(cm.getQuestProgress(3929, 3) != 1) {
|
||||
if(cm.haveItem(4031580)) {
|
||||
cm.gainItem(4031580, -1);
|
||||
cm.setQuestProgress(3929, 3, 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
cm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
57
scripts/npc/2103009.js
Normal file
57
scripts/npc/2103009.js
Normal file
@@ -0,0 +1,57 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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/>.
|
||||
*/
|
||||
/*
|
||||
Jewel depot on Ariant Residential area
|
||||
*/
|
||||
|
||||
var status;
|
||||
|
||||
function start() {
|
||||
status = -1;
|
||||
action(1, 0, 0);
|
||||
}
|
||||
|
||||
function action(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
cm.dispose();
|
||||
} else {
|
||||
if (mode == 0 && type > 0) {
|
||||
cm.dispose();
|
||||
return;
|
||||
}
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
|
||||
if(status == 0) {
|
||||
if(cm.isQuestStarted(3926)) {
|
||||
if(cm.getQuestProgress(3926, 0) != 1) {
|
||||
if(cm.haveItem(4031579)) {
|
||||
cm.gainItem(4031579, -1);
|
||||
cm.setQuestProgress(3926, 0, 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
cm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
57
scripts/npc/2103010.js
Normal file
57
scripts/npc/2103010.js
Normal file
@@ -0,0 +1,57 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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/>.
|
||||
*/
|
||||
/*
|
||||
Jewel depot on Ariant Residential area
|
||||
*/
|
||||
|
||||
var status;
|
||||
|
||||
function start() {
|
||||
status = -1;
|
||||
action(1, 0, 0);
|
||||
}
|
||||
|
||||
function action(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
cm.dispose();
|
||||
} else {
|
||||
if (mode == 0 && type > 0) {
|
||||
cm.dispose();
|
||||
return;
|
||||
}
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
|
||||
if(status == 0) {
|
||||
if(cm.isQuestStarted(3926)) {
|
||||
if(cm.getQuestProgress(3926, 2) != 1) {
|
||||
if(cm.haveItem(4031579)) {
|
||||
cm.gainItem(4031579, -1);
|
||||
cm.setQuestProgress(3926, 2, 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
cm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
57
scripts/npc/2103011.js
Normal file
57
scripts/npc/2103011.js
Normal file
@@ -0,0 +1,57 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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/>.
|
||||
*/
|
||||
/*
|
||||
Jewel depot on Ariant Residential area
|
||||
*/
|
||||
|
||||
var status;
|
||||
|
||||
function start() {
|
||||
status = -1;
|
||||
action(1, 0, 0);
|
||||
}
|
||||
|
||||
function action(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
cm.dispose();
|
||||
} else {
|
||||
if (mode == 0 && type > 0) {
|
||||
cm.dispose();
|
||||
return;
|
||||
}
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
|
||||
if(status == 0) {
|
||||
if(cm.isQuestStarted(3926)) {
|
||||
if(cm.getQuestProgress(3926, 1) != 1) {
|
||||
if(cm.haveItem(4031579)) {
|
||||
cm.gainItem(4031579, -1);
|
||||
cm.setQuestProgress(3926, 1, 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
cm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
57
scripts/npc/2103012.js
Normal file
57
scripts/npc/2103012.js
Normal file
@@ -0,0 +1,57 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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/>.
|
||||
*/
|
||||
/*
|
||||
Jewel depot on Ariant Residential area
|
||||
*/
|
||||
|
||||
var status;
|
||||
|
||||
function start() {
|
||||
status = -1;
|
||||
action(1, 0, 0);
|
||||
}
|
||||
|
||||
function action(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
cm.dispose();
|
||||
} else {
|
||||
if (mode == 0 && type > 0) {
|
||||
cm.dispose();
|
||||
return;
|
||||
}
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
|
||||
if(status == 0) {
|
||||
if(cm.isQuestStarted(3926)) {
|
||||
if(cm.getQuestProgress(3926, 3) != 1) {
|
||||
if(cm.haveItem(4031579)) {
|
||||
cm.gainItem(4031579, -1);
|
||||
cm.setQuestProgress(3926, 3, 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
cm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -23,11 +23,17 @@
|
||||
-- Odin JavaScript --------------------------------------------------------------------------------
|
||||
Carson - Magatia (GMS Like)
|
||||
-- Version Info -----------------------------------------------------------------------------------
|
||||
1.2 - Improved by Ronan
|
||||
1.1 - Shortened by Moogra
|
||||
1.0 - First Version by Maple4U
|
||||
---------------------------------------------------------------------------------------------------
|
||||
*/
|
||||
function start() {
|
||||
cm.sendNext("Alchemy....and Alchemist.....both of them are important. But more importantly, it is the Magatia that tolerate everything. The honor of Magatia should be protected by me.");
|
||||
if(cm.isQuestStarted(3310) && !cm.haveItem(4031709, 1)) {
|
||||
cm.warp(926120100);
|
||||
} else {
|
||||
cm.sendNext("Alchemy....and Alchemist.....both of them are important. But more importantly, it is the Magatia that tolerate everything. The honor of Magatia should be protected by me.");
|
||||
}
|
||||
|
||||
cm.dispose();
|
||||
}
|
||||
|
||||
@@ -25,12 +25,18 @@
|
||||
-- By ---------------------------------------------------------------------------------------------
|
||||
Maple4U
|
||||
-- Version Info -----------------------------------------------------------------------------------
|
||||
1.2 - With quest feature by Ronan
|
||||
1.1 - Shortened 3x by Moogra
|
||||
1.0 - First Version by Maple4U
|
||||
---------------------------------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
function start() {
|
||||
cm.sendOk("Emotion that I feel is real? Or just illusion coming from mechanical error?");
|
||||
cm.dispose();
|
||||
if(cm.isQuestStarted(3335) && !cm.haveItem(4031695, 1)) {
|
||||
cm.warp(926120300);
|
||||
cm.dispose();
|
||||
} else {
|
||||
cm.sendOk("Emotion that I feel is real? Or just illusion coming from mechanical error?");
|
||||
cm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -23,12 +23,18 @@
|
||||
-- Odin JavaScript --------------------------------------------------------------------------------
|
||||
Parwen - Magatia (GMS Like)
|
||||
-- Version Info -----------------------------------------------------------------------------------
|
||||
1.2 - Improved by Ronan
|
||||
1.1 - Shortened by Moogra
|
||||
1.0 - First Version by Maple4U
|
||||
---------------------------------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
function start() {
|
||||
cm.sendOk("uuuuhuk...Why only Ghost are around here?...");
|
||||
if(cm.isQuestStarted(3320) || cm.isQuestCompleted(3320)) {
|
||||
cm.warp(926120200, 1);
|
||||
} else {
|
||||
cm.sendOk("uuuuhuk...Why only Ghost are around here?...");
|
||||
}
|
||||
|
||||
cm.dispose();
|
||||
}
|
||||
|
||||
53
scripts/npc/2111010.js
Normal file
53
scripts/npc/2111010.js
Normal file
@@ -0,0 +1,53 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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;
|
||||
|
||||
function start() {
|
||||
status = -1;
|
||||
action(1, 0, 0);
|
||||
}
|
||||
|
||||
function action(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
cm.dispose();
|
||||
} else {
|
||||
if (mode == 0 && type > 0) {
|
||||
cm.dispose();
|
||||
return;
|
||||
}
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
|
||||
if(status == 0) {
|
||||
if(cm.isQuestStarted(3309) && !cm.haveItem(4031708, 1)) {
|
||||
if(cm.canHold(4031708, 1)) {
|
||||
cm.gainItem(4031708, 1);
|
||||
} else {
|
||||
cm.sendOk("Have a ETC slot available to get the Alcadno's secret document.");
|
||||
}
|
||||
}
|
||||
|
||||
cm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
50
scripts/npc/2111013.js
Normal file
50
scripts/npc/2111013.js
Normal file
@@ -0,0 +1,50 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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;
|
||||
|
||||
function start() {
|
||||
status = -1;
|
||||
action(1, 0, 0);
|
||||
}
|
||||
|
||||
function action(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
cm.dispose();
|
||||
} else {
|
||||
if (mode == 0 && type > 0) {
|
||||
cm.dispose();
|
||||
return;
|
||||
}
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
|
||||
if(status == 0) {
|
||||
if(cm.isQuestStarted(3311)) {
|
||||
cm.setQuestProgress(3311, 0, 1);
|
||||
cm.sendOk("This is a mug picture of Dr. De Lang. It seems he is adorning a locket with the emblem of the Alcadno academy, he is a retainer of the Alcadno society.", 2);
|
||||
}
|
||||
|
||||
cm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
55
scripts/npc/2111014.js
Normal file
55
scripts/npc/2111014.js
Normal file
@@ -0,0 +1,55 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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;
|
||||
|
||||
function start() {
|
||||
status = -1;
|
||||
action(1, 0, 0);
|
||||
}
|
||||
|
||||
function action(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
cm.dispose();
|
||||
} else {
|
||||
if (mode == 0 && type > 0) {
|
||||
cm.dispose();
|
||||
return;
|
||||
}
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
|
||||
if(status == 0) {
|
||||
if(cm.isQuestStarted(3311)) {
|
||||
cm.setQuestProgress(3311, 1, 1);
|
||||
cm.sendOk("The diary of Dr. De Lang. A lot of formulas and pompous scientific texts can be found all way through the pages, but it is worth noting that in the last entry (3 weeks ago), it is written that he concluded the researches on an improvement on the blueprints for the Neo Huroids, thus making the last preparations to show it to the 'society'... No words after this...", 2);
|
||||
} else if(cm.isQuestStarted(3322) && !cm.haveItem(4031697, 1)) {
|
||||
if(cm.canHold(4031697, 1))
|
||||
cm.gainItem(4031697, 1);
|
||||
else
|
||||
cm.sendNext("Your inventory is full, make sure a ETC slot is available for the item.");
|
||||
}
|
||||
|
||||
cm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
60
scripts/npc/2111015.js
Normal file
60
scripts/npc/2111015.js
Normal file
@@ -0,0 +1,60 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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;
|
||||
|
||||
function isPillUsed(ch) {
|
||||
return ch.getBuffSource(MapleBuffStat.HPREC) == 2022198;
|
||||
}
|
||||
|
||||
function start() {
|
||||
status = -1;
|
||||
action(1, 0, 0);
|
||||
}
|
||||
|
||||
function action(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
cm.dispose();
|
||||
} else {
|
||||
if (mode == 0 && type > 0) {
|
||||
cm.dispose();
|
||||
return;
|
||||
}
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
|
||||
if(status == 0) {
|
||||
if(cm.isQuestStarted(3314) && !cm.haveItem(2022198, 1) && !isPillUsed(cm.getPlayer())) {
|
||||
if(cm.canHold(2022198, 1)) {
|
||||
cm.gainItem(2022198, 1);
|
||||
cm.sendOk("You took the pills that were laying on the desk.", 2);
|
||||
} else {
|
||||
cm.sendOk("You don't have a USE slot available to get Russellon's pills.", 2);
|
||||
}
|
||||
}
|
||||
|
||||
cm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
76
scripts/npc/2111017.js
Normal file
76
scripts/npc/2111017.js
Normal file
@@ -0,0 +1,76 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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;
|
||||
|
||||
function start() {
|
||||
status = -1;
|
||||
action(1, 0, 0);
|
||||
}
|
||||
|
||||
function action(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
cm.dispose();
|
||||
} else {
|
||||
if (mode == 0 && type > 0) {
|
||||
cm.dispose();
|
||||
return;
|
||||
}
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
|
||||
if(status == 0) {
|
||||
if(cm.isQuestStarted(3339)) {
|
||||
var progress = cm.getQuestProgress(3339, 0);
|
||||
|
||||
if(progress == 3) {
|
||||
cm.sendGetText("The pipe reacts as the water starts flowing. A secret compartment with a keypad shows up. #bPassword#k!");
|
||||
} else if(progress == 0) {
|
||||
cm.setQuestProgress(3339, 0, 1);
|
||||
cm.dispose();
|
||||
} else if(progress < 3) {
|
||||
cm.setQuestProgress(3339, 0, 0);
|
||||
cm.dispose();
|
||||
} else {
|
||||
cm.warp(261000001, 1);
|
||||
cm.dispose();
|
||||
}
|
||||
} else {
|
||||
if(cm.isQuestCompleted(3339)) {
|
||||
cm.warp(261000001, 1);
|
||||
}
|
||||
|
||||
cm.dispose();
|
||||
}
|
||||
} else if(status == 1) {
|
||||
if(cm.getText() == "my love Phyllia") {
|
||||
cm.setQuestProgress(3339, 0, 4);
|
||||
cm.warp(261000001, 1);
|
||||
cm.dispose();
|
||||
}
|
||||
else{
|
||||
cm.sendOk("#rWrong!");
|
||||
cm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
76
scripts/npc/2111018.js
Normal file
76
scripts/npc/2111018.js
Normal file
@@ -0,0 +1,76 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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;
|
||||
|
||||
function start() {
|
||||
status = -1;
|
||||
action(1, 0, 0);
|
||||
}
|
||||
|
||||
function action(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
cm.dispose();
|
||||
} else {
|
||||
if (mode == 0 && type > 0) {
|
||||
cm.dispose();
|
||||
return;
|
||||
}
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
|
||||
if(status == 0) {
|
||||
if(cm.isQuestStarted(3339)) {
|
||||
var progress = cm.getQuestProgress(3339, 0);
|
||||
|
||||
if(progress == 3) {
|
||||
cm.sendGetText("The pipe reacts as the water starts flowing. A secret compartment with a keypad shows up. #bPassword#k!");
|
||||
} else if(progress == 2) {
|
||||
cm.setQuestProgress(3339, 0, 3);
|
||||
cm.sendGetText("The pipe reacts as the water starts flowing. A secret compartment with a keypad shows up. #bPassword#k!");
|
||||
} else if(progress < 3) {
|
||||
cm.setQuestProgress(3339, 0, 0);
|
||||
cm.dispose();
|
||||
} else {
|
||||
cm.warp(261000001, 1);
|
||||
cm.dispose();
|
||||
}
|
||||
} else {
|
||||
if(cm.isQuestCompleted(3339)) {
|
||||
cm.warp(261000001, 1);
|
||||
}
|
||||
|
||||
cm.dispose();
|
||||
}
|
||||
} else if(status == 1) {
|
||||
if(cm.getText() == "my love Phyllia") {
|
||||
cm.setQuestProgress(3339, 0, 4);
|
||||
cm.warp(261000001, 1);
|
||||
cm.dispose();
|
||||
}
|
||||
else{
|
||||
cm.sendOk("#rWrong!");
|
||||
cm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
76
scripts/npc/2111019.js
Normal file
76
scripts/npc/2111019.js
Normal file
@@ -0,0 +1,76 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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;
|
||||
|
||||
function start() {
|
||||
status = -1;
|
||||
action(1, 0, 0);
|
||||
}
|
||||
|
||||
function action(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
cm.dispose();
|
||||
} else {
|
||||
if (mode == 0 && type > 0) {
|
||||
cm.dispose();
|
||||
return;
|
||||
}
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
|
||||
if(status == 0) {
|
||||
if(cm.isQuestStarted(3339)) {
|
||||
var progress = cm.getQuestProgress(3339, 0);
|
||||
|
||||
if(progress == 3) {
|
||||
cm.sendGetText("The pipe reacts as the water starts flowing. A secret compartment with a keypad shows up. #bPassword#k!");
|
||||
} else if(progress == 1) {
|
||||
cm.setQuestProgress(3339, 0, 2);
|
||||
cm.dispose();
|
||||
} else if(progress < 3) {
|
||||
cm.setQuestProgress(3339, 0, 0);
|
||||
cm.dispose();
|
||||
} else {
|
||||
cm.warp(261000001, 1);
|
||||
cm.dispose();
|
||||
}
|
||||
} else {
|
||||
if(cm.isQuestCompleted(3339)) {
|
||||
cm.warp(261000001, 1);
|
||||
}
|
||||
|
||||
cm.dispose();
|
||||
}
|
||||
} else if(status == 1) {
|
||||
if(cm.getText() == "my love Phyllia") {
|
||||
cm.setQuestProgress(3339, 0, 4);
|
||||
cm.warp(261000001, 1);
|
||||
cm.dispose();
|
||||
}
|
||||
else{
|
||||
cm.sendOk("#rWrong!");
|
||||
cm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
57
scripts/npc/2111020.js
Normal file
57
scripts/npc/2111020.js
Normal file
@@ -0,0 +1,57 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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;
|
||||
|
||||
function start() {
|
||||
status = -1;
|
||||
action(1, 0, 0);
|
||||
}
|
||||
|
||||
function action(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
cm.dispose();
|
||||
} else {
|
||||
if (mode == 0 && type > 0) {
|
||||
cm.dispose();
|
||||
return;
|
||||
}
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
|
||||
if(status == 0) {
|
||||
if(cm.isQuestStarted(3345)) {
|
||||
var progress = cm.getQuestProgress(3345, 0);
|
||||
|
||||
if(progress == 0) {
|
||||
cm.setQuestProgress(3345, 0, 1);
|
||||
cm.dispose();
|
||||
} else if(progress < 4) {
|
||||
cm.setQuestProgress(3345, 0, 0);
|
||||
cm.dispose();
|
||||
} else {
|
||||
cm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
57
scripts/npc/2111021.js
Normal file
57
scripts/npc/2111021.js
Normal file
@@ -0,0 +1,57 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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;
|
||||
|
||||
function start() {
|
||||
status = -1;
|
||||
action(1, 0, 0);
|
||||
}
|
||||
|
||||
function action(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
cm.dispose();
|
||||
} else {
|
||||
if (mode == 0 && type > 0) {
|
||||
cm.dispose();
|
||||
return;
|
||||
}
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
|
||||
if(status == 0) {
|
||||
if(cm.isQuestStarted(3345)) {
|
||||
var progress = cm.getQuestProgress(3345, 0);
|
||||
|
||||
if(progress == 1) {
|
||||
cm.setQuestProgress(3345, 0, 2);
|
||||
cm.dispose();
|
||||
} else if(progress < 4) {
|
||||
cm.setQuestProgress(3345, 0, 0);
|
||||
cm.dispose();
|
||||
} else {
|
||||
cm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
57
scripts/npc/2111022.js
Normal file
57
scripts/npc/2111022.js
Normal file
@@ -0,0 +1,57 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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;
|
||||
|
||||
function start() {
|
||||
status = -1;
|
||||
action(1, 0, 0);
|
||||
}
|
||||
|
||||
function action(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
cm.dispose();
|
||||
} else {
|
||||
if (mode == 0 && type > 0) {
|
||||
cm.dispose();
|
||||
return;
|
||||
}
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
|
||||
if(status == 0) {
|
||||
if(cm.isQuestStarted(3345)) {
|
||||
var progress = cm.getQuestProgress(3345, 0);
|
||||
|
||||
if(progress == 2) {
|
||||
cm.setQuestProgress(3345, 0, 3);
|
||||
cm.dispose();
|
||||
} else if(progress < 4) {
|
||||
cm.setQuestProgress(3345, 0, 0);
|
||||
cm.dispose();
|
||||
} else {
|
||||
cm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
62
scripts/npc/2111023.js
Normal file
62
scripts/npc/2111023.js
Normal file
@@ -0,0 +1,62 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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;
|
||||
|
||||
function start() {
|
||||
status = -1;
|
||||
action(1, 0, 0);
|
||||
}
|
||||
|
||||
function action(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
cm.dispose();
|
||||
} else {
|
||||
if (mode == 0 && type > 0) {
|
||||
cm.dispose();
|
||||
return;
|
||||
}
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
|
||||
if(status == 0) {
|
||||
if(cm.isQuestStarted(3345)) {
|
||||
var progress = cm.getQuestProgress(3345, 0);
|
||||
|
||||
if(progress == 3 && cm.haveItem(4031739, 1) && cm.haveItem(4031740, 1) && cm.haveItem(4031741, 1)) {
|
||||
cm.setQuestProgress(3345, 0, 4);
|
||||
cm.gainItem(4031739, -1);
|
||||
cm.gainItem(4031740, -1);
|
||||
cm.gainItem(4031741, -1);
|
||||
|
||||
cm.sendOk("(As you place the shards a light shines over the circle, repelling whatever omens were brewing inside the artifact.)", 2);
|
||||
cm.dispose();
|
||||
} else if(progress < 4) {
|
||||
cm.setQuestProgress(3345, 0, 0);
|
||||
cm.dispose();
|
||||
} else {
|
||||
cm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,8 +1,6 @@
|
||||
/*
|
||||
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 file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
|
||||
60
scripts/npc/2112016.js
Normal file
60
scripts/npc/2112016.js
Normal file
@@ -0,0 +1,60 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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
|
||||
* @npc: Hidden Documents
|
||||
* @func: Yulete lab 2 quest
|
||||
*/
|
||||
|
||||
function start() {
|
||||
if(cm.isQuestStarted(3367)) {
|
||||
var c = cm.getQuestProgress(3367, 30);
|
||||
if(c == 30) {
|
||||
cm.sendNext("(All files have been organized. Report the found files to Yulete.)", 2);
|
||||
cm.dispose();
|
||||
return;
|
||||
}
|
||||
|
||||
var book = (cm.getNpcObjectId() % 30);
|
||||
var prog = cm.getQuestProgress(3367, book);
|
||||
if(prog == 0) {
|
||||
c++;
|
||||
|
||||
if(book < 20) {
|
||||
if(!cm.canHold(4031797, 1)) {
|
||||
cm.sendNext("(You found a report file, but since your ETC is full you choose to put the file in the place you've found.)");
|
||||
cm.dispose();
|
||||
return;
|
||||
} else {
|
||||
cm.gainItem(4031797, 1);
|
||||
cm.setQuestProgress(3367, 31, cm.getQuestProgress(3367, 31) + 1);
|
||||
}
|
||||
}
|
||||
|
||||
cm.sendNext("(Organized file. #r" + (30 - c) + "#k left.)", 2);
|
||||
|
||||
cm.setQuestProgress(3367, book, 1);
|
||||
cm.setQuestProgress(3367, 30, c);
|
||||
}
|
||||
}
|
||||
|
||||
cm.dispose();
|
||||
}
|
||||
@@ -48,7 +48,7 @@ function action(mode, type, selection){
|
||||
if (status == 0) {
|
||||
cm.sendNext("To return back to the city, follow this way.");
|
||||
} else {
|
||||
cm.getPlayer().warp(103000000, cm.getClient().getChannelServer().getMapFactory().getMap(103000000).getRandomPlayerSpawnpoint());
|
||||
cm.warp(103000000);
|
||||
cm.dispose();
|
||||
}
|
||||
} else {
|
||||
|
||||
32
scripts/npc/MagatiaPassword.js
Normal file
32
scripts/npc/MagatiaPassword.js
Normal file
@@ -0,0 +1,32 @@
|
||||
var status;
|
||||
|
||||
function start(){
|
||||
status = -1;
|
||||
action(1, 0, 0);
|
||||
}
|
||||
|
||||
function action(mode, type, selection){
|
||||
if(mode == -1 || (mode == 0 && status == 0)){
|
||||
cm.dispose();
|
||||
return;
|
||||
}
|
||||
else if(mode == 0)
|
||||
status--;
|
||||
else
|
||||
status++;
|
||||
|
||||
if(status == 0){
|
||||
cm.sendGetText("The door reacts to the entry pass inserted. #bPassword#k!");
|
||||
}
|
||||
else if(status == 1){
|
||||
if(cm.getText() == cm.getStringQuestProgress(3360, 0)){
|
||||
cm.setQuestProgress(3360, 1, 1);
|
||||
cm.warp((cm.getMapId() == 261010000) ? 261020200 : 261010000, "secret00");
|
||||
}
|
||||
else {
|
||||
cm.sendOk("#rWrong!");
|
||||
}
|
||||
|
||||
cm.dispose();
|
||||
}
|
||||
}
|
||||
39
scripts/npc/ThiefPassword.js
Normal file
39
scripts/npc/ThiefPassword.js
Normal file
@@ -0,0 +1,39 @@
|
||||
var status;
|
||||
|
||||
function start(){
|
||||
status = -1;
|
||||
action(1, 0, 0);
|
||||
}
|
||||
|
||||
function action(mode, type, selection){
|
||||
if(mode == -1 || (mode == 0 && status == 0)){
|
||||
cm.dispose();
|
||||
return;
|
||||
}
|
||||
else if(mode == 0)
|
||||
status--;
|
||||
else
|
||||
status++;
|
||||
|
||||
|
||||
|
||||
if(status == 0){
|
||||
cm.sendGetText("A suspicious voice pierces through the silence. #bPassword#k!");
|
||||
}
|
||||
else if(status == 1){
|
||||
if(cm.getText() == "Open Sesame"){
|
||||
if(cm.isQuestCompleted(3925))
|
||||
cm.warp(260010402);
|
||||
else
|
||||
cm.playerMessage(5, "Although you said the right answer, the door will not budge.");
|
||||
|
||||
cm.dispose();
|
||||
}
|
||||
else{
|
||||
cm.sendOk("#rWrong!");
|
||||
}
|
||||
}
|
||||
else if(status == 2){
|
||||
cm.dispose();
|
||||
}
|
||||
}
|
||||
59
scripts/portal/MD_error.js
Normal file
59
scripts/portal/MD_error.js
Normal file
@@ -0,0 +1,59 @@
|
||||
/*
|
||||
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 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/>.
|
||||
*/
|
||||
|
||||
/*
|
||||
MiniDungeon - Critical Error
|
||||
*/
|
||||
|
||||
var baseid = 261020300;
|
||||
var dungeonid = 261020301;
|
||||
var dungeons = 30;
|
||||
|
||||
function enter(pi) {
|
||||
if (pi.getMapId() == baseid) {
|
||||
if (pi.getParty() != null) {
|
||||
if (pi.isLeader()) {
|
||||
for (var i = 0; i < dungeons; i++) {
|
||||
if(pi.startDungeonInstance(dungeonid + i)) {
|
||||
pi.warpParty(dungeonid + i);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
pi.playerMessage(5, "Only solo or party leaders are supposed to enter the Mini-Dungeon.");
|
||||
return false;
|
||||
}
|
||||
} else {
|
||||
for (var i = 0; i < dungeons; i++) {
|
||||
if(pi.startDungeonInstance(dungeonid + i)) {
|
||||
pi.warp(dungeonid + i);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
pi.playerMessage(5, "All of the Mini-Dungeons are in use right now, please try again later.");
|
||||
return false;
|
||||
} else {
|
||||
pi.playPortalSound();
|
||||
pi.warp(baseid, "MD00");
|
||||
return true;
|
||||
}
|
||||
}
|
||||
@@ -1,14 +1,13 @@
|
||||
/*
|
||||
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 file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License 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.
|
||||
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
|
||||
|
||||
@@ -1,14 +1,13 @@
|
||||
/*
|
||||
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 file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License 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.
|
||||
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
|
||||
|
||||
34
scripts/portal/ariant_Agit.js
Normal file
34
scripts/portal/ariant_Agit.js
Normal file
@@ -0,0 +1,34 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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/>.
|
||||
*/
|
||||
|
||||
/*
|
||||
Agit's hideout (leader of the Sand Bandits)
|
||||
@author Ronan
|
||||
*/
|
||||
|
||||
function enter(pi) {
|
||||
if(pi.isQuestCompleted(3928) && pi.isQuestCompleted(3931) && pi.isQuestCompleted(3934)) {
|
||||
pi.warp(260000201, 1);
|
||||
return true;
|
||||
} else {
|
||||
pi.message("Access restricted to only members of the Sand Bandits team.");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@@ -1,4 +1,35 @@
|
||||
//some quest where you must use hidden portals
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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);
|
||||
|
||||
function isTigunMorphed(ch) {
|
||||
return ch.getBuffSource(MapleBuffStat.MORPH) == 2210005;
|
||||
}
|
||||
|
||||
function enter(pi) {
|
||||
return false;
|
||||
if(isTigunMorphed(pi.getPlayer())) {
|
||||
return false;
|
||||
} else {
|
||||
pi.warp(260000300, 7);
|
||||
pi.message("You, intruder! You don't have permission to roam the palace! Get out!!");
|
||||
return true;
|
||||
}
|
||||
}
|
||||
@@ -29,7 +29,17 @@ importPackage(Packages.server.life);
|
||||
function enter(pi) {
|
||||
if(pi.isQuestStarted(20301) || pi.isQuestStarted(20302) || pi.isQuestStarted(20303) || pi.isQuestStarted(20304) || pi.isQuestStarted(20305)) {
|
||||
var map = pi.getClient().getChannelServer().getMapFactory().getMap(108010610);
|
||||
spawnMob(3345, -452, 9001009, map);
|
||||
if(map.countPlayers() > 0) {
|
||||
pi.message("Someone else is already challenging the Master of Disguise.");
|
||||
return false;
|
||||
}
|
||||
|
||||
if(pi.haveItem(4032101, 1)) {
|
||||
pi.message("You have already challenged the Master of Disguise, report your success to Neinheart.");
|
||||
return false;
|
||||
}
|
||||
|
||||
spawnMob(3345, -452, 9001009, map);
|
||||
pi.warp(108010610, "out00");
|
||||
} else {
|
||||
pi.warp(130010020, "out00");
|
||||
|
||||
29
scripts/portal/magatia_alc0.js
Normal file
29
scripts/portal/magatia_alc0.js
Normal file
@@ -0,0 +1,29 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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/>.
|
||||
*/
|
||||
|
||||
function enter(pi) {
|
||||
if(!pi.isQuestStarted(3309) || pi.haveItem(4031708, 1)) {
|
||||
pi.warp(261020700, "down00");
|
||||
} else {
|
||||
pi.warp(926120000, "out00");
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
29
scripts/portal/q3366in.js
Normal file
29
scripts/portal/q3366in.js
Normal file
@@ -0,0 +1,29 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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/>.
|
||||
*/
|
||||
function enter(pi) {
|
||||
if(pi.isQuestStarted(3366)) {
|
||||
pi.warp(926130101, 0);
|
||||
return true;
|
||||
} else {
|
||||
pi.message("You don't have permission to access this room.");
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
23
scripts/portal/q3366out.js
Normal file
23
scripts/portal/q3366out.js
Normal file
@@ -0,0 +1,23 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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/>.
|
||||
*/
|
||||
function enter(pi) {
|
||||
pi.warp(926130100, "in00");
|
||||
return true;
|
||||
}
|
||||
33
scripts/portal/q3367in.js
Normal file
33
scripts/portal/q3367in.js
Normal file
@@ -0,0 +1,33 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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/>.
|
||||
*/
|
||||
function enter(pi) {
|
||||
if(pi.isQuestStarted(3367)) {
|
||||
if(pi.getQuestProgress(3367, 31) < pi.getItemQuantity(4031797)) {
|
||||
pi.gainItem(4031797, pi.getQuestProgress(3367, 31) - pi.getItemQuantity(4031797));
|
||||
}
|
||||
|
||||
pi.warp(926130102, 0);
|
||||
return true;
|
||||
} else {
|
||||
pi.message("You don't have permission to access this room.");
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
23
scripts/portal/q3367out.js
Normal file
23
scripts/portal/q3367out.js
Normal file
@@ -0,0 +1,23 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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/>.
|
||||
*/
|
||||
function enter(pi) {
|
||||
pi.warp(926130100, "in01");
|
||||
return true;
|
||||
}
|
||||
29
scripts/portal/q3368in.js
Normal file
29
scripts/portal/q3368in.js
Normal file
@@ -0,0 +1,29 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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/>.
|
||||
*/
|
||||
function enter(pi) {
|
||||
if(pi.isQuestStarted(3368)) {
|
||||
pi.warp(926130103, 0);
|
||||
return true;
|
||||
} else {
|
||||
pi.message("You don't have permission to access this room.");
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
23
scripts/portal/q3368out.js
Normal file
23
scripts/portal/q3368out.js
Normal file
@@ -0,0 +1,23 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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/>.
|
||||
*/
|
||||
function enter(pi) {
|
||||
pi.warp(926130100, "in02");
|
||||
return true;
|
||||
}
|
||||
43
scripts/portal/secretDoor.js
Normal file
43
scripts/portal/secretDoor.js
Normal file
@@ -0,0 +1,43 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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
|
||||
*/
|
||||
|
||||
function doorCross(pi) {
|
||||
pi.warp(261030000, "sp_" + ((pi.getMapId() == 261010000) ? "jenu" : "alca"));
|
||||
return true;
|
||||
}
|
||||
|
||||
function enter(pi) {
|
||||
if(pi.isQuestCompleted(3360)) {
|
||||
return doorCross(pi);
|
||||
} else if(pi.isQuestStarted(3360)) {
|
||||
if(pi.getQuestProgress(3360, 1) == 0) {
|
||||
pi.openNpc(2111024, "MagatiaPassword");
|
||||
return false;
|
||||
} else {
|
||||
return doorCross(pi);
|
||||
}
|
||||
} else {
|
||||
pi.message("This door is locked.");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
33
scripts/portal/skyrom.js
Normal file
33
scripts/portal/skyrom.js
Normal file
@@ -0,0 +1,33 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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/>.
|
||||
*/
|
||||
|
||||
function enter(pi) {
|
||||
if(pi.isQuestStarted(3935) && !pi.haveItem(4031574, 1)) {
|
||||
if(pi.getWarpMap(926000010).countPlayers() == 0) {
|
||||
pi.warp(926000010);
|
||||
return true;
|
||||
} else {
|
||||
pi.message("Someone is already trying this map.");
|
||||
return false;
|
||||
}
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
9
scripts/portal/thief_in1.js
Normal file
9
scripts/portal/thief_in1.js
Normal file
@@ -0,0 +1,9 @@
|
||||
function enter(pi) {
|
||||
if(pi.isQuestCompleted(20730) || pi.isQuestCompleted(21734)) { // puppeteer defeated, newfound secret path
|
||||
pi.warp(105040201,2);
|
||||
return true;
|
||||
}
|
||||
|
||||
pi.openNpc(1063011, "ThiefPassword");
|
||||
return false;
|
||||
}
|
||||
@@ -21,10 +21,10 @@ function end(mode, type, selection) {
|
||||
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 aren't sure what to raise, just click on #bAuto#k.");
|
||||
if (qm.getplayer().getJob().getId() != 1500) {
|
||||
if (qm.getPlayer().getJob().getId() != 1500) {
|
||||
qm.gainItem(1482014, 1);
|
||||
qm.gainItem(1142066, 1);
|
||||
qm.getplayer().changeJob(MapleJob.THUNDERBREAKER1);
|
||||
qm.getPlayer().changeJob(MapleJob.THUNDERBREAKER1);
|
||||
qm.getPlayer().resetStats();
|
||||
}
|
||||
qm.forceCompleteQuest();
|
||||
|
||||
@@ -41,7 +41,7 @@ function start(mode, type, selection) {
|
||||
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.");
|
||||
qm.sendNext("The jewel 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) {
|
||||
|
||||
@@ -41,7 +41,7 @@ function start(mode, type, selection) {
|
||||
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.");
|
||||
qm.sendNext("The jewel 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) {
|
||||
|
||||
@@ -41,7 +41,7 @@ function start(mode, type, selection) {
|
||||
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.");
|
||||
qm.sendNext("The jewel 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) {
|
||||
|
||||
@@ -41,7 +41,7 @@ function start(mode, type, selection) {
|
||||
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.");
|
||||
qm.sendNext("The jewel 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) {
|
||||
|
||||
@@ -41,7 +41,7 @@ function start(mode, type, selection) {
|
||||
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.");
|
||||
qm.sendNext("The jewel 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) {
|
||||
|
||||
@@ -32,7 +32,7 @@ function start(mode, type, selection) {
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
if (mode == -1 || (mode == 0 && type > 0)) {
|
||||
qm.dispose();
|
||||
} else {
|
||||
oreArray = getOreArray();
|
||||
|
||||
@@ -32,7 +32,7 @@ function start(mode, type, selection) {
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
if (mode == -1 || (mode == 0 && type > 0)) {
|
||||
qm.dispose();
|
||||
} else {
|
||||
oreArray = getOreArray();
|
||||
|
||||
49
scripts/quest/3311.js
Normal file
49
scripts/quest/3311.js
Normal file
@@ -0,0 +1,49 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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 end(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
qm.dispose();
|
||||
} else {
|
||||
if(mode == 0 && type > 0) {
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
|
||||
if (status == 0) {
|
||||
if(qm.getQuestProgress(3311, 0) == 1 && qm.getQuestProgress(3311, 1) == 1) {
|
||||
qm.sendNext("Hmm, so the Alcadno doctor wrote something about researching some vanguardist Neo Huroid machine, that could beat by far the existing one, and was about to prepare the last steps of his rehearsal? We don't have a word about him for about three weeks now, something must have gone wrong...");
|
||||
qm.gainExp(60000 * qm.getPlayer().getExpRate());
|
||||
qm.forceCompleteQuest();
|
||||
} else {
|
||||
qm.sendNext("Found nothing yet? Please check out Dr. De Lang's house properly, something there may give out a clue about what is going on.");
|
||||
}
|
||||
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
65
scripts/quest/3314.js
Normal file
65
scripts/quest/3314.js
Normal file
@@ -0,0 +1,65 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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 isPillUsed(ch) {
|
||||
return ch.getBuffSource(MapleBuffStat.HPREC) == 2022198;
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
qm.dispose();
|
||||
} else {
|
||||
if(mode == 0 && type > 0) {
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
|
||||
if (status == 0) {
|
||||
if(isPillUsed(qm.getPlayer())) {
|
||||
if(qm.canHoldAll([2050004, 2022224], [10, 20])) {
|
||||
qm.sendNext("You did took my experiments. Hmm, so THAT is the result of it, hehehehe... Ok, take that as compensation will you? And oh, you can #rspew that#k right away (#bright-click on the pill icon at the top-right corner of the screen#k), no worries.");
|
||||
|
||||
qm.gainExp(12500 * qm.getPlayer().getExpRate());
|
||||
qm.gainItem(2050004, 10);
|
||||
|
||||
var i = Math.floor(Math.random() * 5);
|
||||
qm.gainItem(2022224 + i, 10);
|
||||
|
||||
qm.forceCompleteQuest();
|
||||
} else {
|
||||
qm.sendNext("Huh, your inventory is full. Free some spaces on your USE first.");
|
||||
}
|
||||
} else {
|
||||
qm.sendNext("You seem pretty normal, don't you? I can't detect any possible effect from my experiment on you. Go take the pill I asked you to take and show me the effects, will you?");
|
||||
}
|
||||
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
47
scripts/quest/3320.js
Normal file
47
scripts/quest/3320.js
Normal file
@@ -0,0 +1,47 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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) {
|
||||
if (mode == -1) {
|
||||
qm.dispose();
|
||||
} else {
|
||||
if(mode == 0 && type > 0) {
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
|
||||
if (status == 0) {
|
||||
qm.sendAcceptDecline("I may have an idea of the whereabouts of Dr. De Lang. Are you ready to be transported to the area?");
|
||||
} else if (status == 1) {
|
||||
qm.forceStartQuest();
|
||||
qm.warp(926120200, 1);
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
56
scripts/quest/3321.js
Normal file
56
scripts/quest/3321.js
Normal file
@@ -0,0 +1,56 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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) {
|
||||
if (mode == -1) {
|
||||
qm.dispose();
|
||||
} else {
|
||||
if(mode == 0 && type > 0) {
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
|
||||
if (status == 0) {
|
||||
qm.sendNext("As you may know by now, I am Dr. De Lang. Once an influent alchemist amongst the ranks of the Alcadno society, I have been disconnected from their society due to the disaster of the aftermatch of my failed experiments, that can be seen now all over Magatia.");
|
||||
} else if (status == 1) {
|
||||
qm.sendNextPrev("Huroids, my creation, were originally engineered to fulfill both domestic, scientific and military affairs, however a critical malfunction on their main processing unit chips rendered them unstable and violent, rapidly causing upheavals and havoc all over the place. Due to that, I've been stripped of my status as Alcadno's alchemist and researcher and got myself an arrest warrant.");
|
||||
} else if (status == 2) {
|
||||
qm.sendAcceptDecline("Even so, I must not be stopped now! Creations of mine are still roaming around causing destruction and casualities every day, with no great hopes of repelling them from the city! They can replicate themselves too fast, normal weapons cannot stop them. I've been since relentlessly researching a way to shut them down all at once, trying to find a way to stop this insanity. Surely you can understand my situation?");
|
||||
} else if (status == 3) {
|
||||
qm.sendNext("My gratitude for understanding my point. You must have met Parwen, since you know where I am. Make him aware of the current situation.");
|
||||
} else if (status == 4) {
|
||||
qm.sendNext("Oh, and I have a personal favor to ask, if it's not too much. I am worried about my wife, #b#p2111004##k. Since the incident with the Huroids I could send a word to her, that must have made a toll on her... Please, if you could, could you get the #bSilver Pendant#k I left #bback at home#k, and give it to her in my stead? I regret not giving the item right away to her, it was her birthday... Maybe giving it now to her can get her a good sleeping night, at least.");
|
||||
} else if (status == 5) {
|
||||
qm.sendNext("#rMake sure to remember this pattern!#k I've hid the pendant in my house, in a container #bbehind the water pipes#k. The pipes must be turned #bin order#k: top, bottom, middle. And then, enter the secret password: '#rmy love Phyllia#k'.");
|
||||
|
||||
qm.forceStartQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
50
scripts/quest/3345.js
Normal file
50
scripts/quest/3345.js
Normal file
@@ -0,0 +1,50 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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 end(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
qm.dispose();
|
||||
} else {
|
||||
if(mode == 0 && type > 0) {
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
|
||||
if (status == 0) {
|
||||
if(qm.getQuestProgress(3345, 0) == 4) {
|
||||
qm.sendNext("So, you have succeeded. With this, Magatia's upfront demise has been averted, well done brave adventurer!");
|
||||
qm.forceCompleteQuest();
|
||||
|
||||
qm.gainExp(20000 * qm.getPlayer().getExpRate());
|
||||
} else {
|
||||
qm.sendNext("Did you not seal the #rmagic circle beneath Magatia#k yet? It is a matter of great importance, please haste yourself.");
|
||||
}
|
||||
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
48
scripts/quest/3353.js
Normal file
48
scripts/quest/3353.js
Normal file
@@ -0,0 +1,48 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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) {
|
||||
if (mode == -1) {
|
||||
qm.dispose();
|
||||
} else {
|
||||
if(mode == 0 && type > 0) {
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
|
||||
if (status == 0) {
|
||||
qm.sendNext("I see. De Lang wants to stop the Huroids from causing more destruction, but the societies would like to get him on jail at once. So that's why he hid himself there.");
|
||||
} else if (status == 1) {
|
||||
qm.sendAcceptDecline("In that case, go there again and hear more details from De Lang, will you?");
|
||||
} else if (status == 2) {
|
||||
qm.warp(926120200, 1);
|
||||
|
||||
qm.forceStartQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
44
scripts/quest/3354.js
Normal file
44
scripts/quest/3354.js
Normal file
@@ -0,0 +1,44 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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) {
|
||||
if (mode == -1) {
|
||||
qm.dispose();
|
||||
} else {
|
||||
if(mode == 0 && type > 0) {
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
|
||||
if (status == 0) {
|
||||
qm.sendAcceptDecline("I have a request for you. Can you ask #bMaed#k for a potion of my devise? Obviously, don't mention I have asked you that, that would be a problem. #bKeeny#k got an illness due to the contact with the Huroids, this have bothering me so much I couldn't give progress on my researches... Please #rbring her the potion#k, so that I could feel better and start making progress. I'm counting on you.");
|
||||
} else if (status == 1) {
|
||||
qm.forceStartQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -43,13 +43,14 @@ function start(mode, type, selection) {
|
||||
}
|
||||
|
||||
if (status == 0) {
|
||||
qm.sendNext("Oh! Finally you have come! I'm glad you are here in time. I have the master key for you to open the secert passage! Hahahaha! Isn't it amazing? Say it amazing!");
|
||||
qm.sendNext("Oh! Finally you have come! I'm glad you are here in time. I have the master key for you to open the secret passage! Hahahaha! Isn't it amazing? Say it amazing!");
|
||||
} else if (status == 1) {
|
||||
qm.sendAcceptDecline("All right, now, this key is very long and complex. I need you to memorize it very well. I won't say again, so you'd better write it down somewhere. Are you ready?");
|
||||
} else if (status == 2) {
|
||||
var pass = generateString();
|
||||
qm.sendOk("The key code is #b" + pass + "#k. Got that? Put the key into the door of the secret passage, and you will be able to walk around the passage freely.");
|
||||
qm.forceStartQuest(pass);
|
||||
qm.forceStartQuest();
|
||||
qm.setStringQuestProgress(3360, 0, pass);
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
@@ -64,7 +65,13 @@ function end(mode, type, selection) {
|
||||
else
|
||||
status--;
|
||||
if (status == 0) {
|
||||
qm.dispose();
|
||||
if(qm.getQuestProgress(3360, 1) == 0) {
|
||||
qm.sendNext("What's up? You haven't opened the Secret Passage yet?");
|
||||
} else {
|
||||
qm.forceCompleteQuest();
|
||||
}
|
||||
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -28,20 +28,10 @@
|
||||
*/
|
||||
|
||||
function end(mode, type, selection) {
|
||||
var itemid;
|
||||
if(qm.getQuestStatus(3302) == 2) {
|
||||
itemid = 4001159;
|
||||
} else if(qm.getQuestStatus(3304) == 2) {
|
||||
itemid = 4001160;
|
||||
} else {
|
||||
qm.sendNext("You must join one of the Magatia's factions before claiming a prize.");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
|
||||
if(qm.haveItem(itemid, 25) && qm.getPlayer().getItemQuantity(1122010, true) == 0) {
|
||||
if(qm.haveItem(4001159, 25) && qm.haveItem(4001160, 25) && qm.getPlayer().getItemQuantity(1122010, true) == 0) {
|
||||
if(qm.canHold(1122010)) {
|
||||
qm.gainItem(itemid, -25);
|
||||
qm.gainItem(4001159, -25);
|
||||
qm.gainItem(4001160, -25);
|
||||
qm.gainItem(1122010, 1);
|
||||
|
||||
qm.sendOk("Thank you for retrieving the marbles. Accept this pendant as a token of my appreciation.");
|
||||
@@ -50,9 +40,10 @@ function end(mode, type, selection) {
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
} else if(qm.haveItem(itemid, 10)) {
|
||||
} else if(qm.haveItem(4001159, 10) && qm.haveItem(4001160, 10)) {
|
||||
if(qm.canHold(2041212)) {
|
||||
qm.gainItem(itemid, -10);
|
||||
qm.gainItem(4001159, -10);
|
||||
qm.gainItem(4001160, -10);
|
||||
qm.gainItem(2041212, 1);
|
||||
|
||||
qm.sendOk("Thank you for retrieving the marbles. This rock, that I am giving to you, can be used to improve the stats on the #b#t1122010##k. Take it as a token of my appreciation and use it wisely.");
|
||||
@@ -62,7 +53,7 @@ function end(mode, type, selection) {
|
||||
return;
|
||||
}
|
||||
} else {
|
||||
qm.sendNext("I need at least #b10 #t" + itemid + "##k to reward you appropriately. If you happen to come with #b25 of these#k instead, I can reward you with a valuable gear. Fare well.");
|
||||
qm.sendNext("I need at least #b10 of both #t4001159# and #t4001160##k to reward you appropriately. If you happen to come with #b25 of these#k instead, I can reward you with a valuable gear. Fare well.");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
|
||||
59
scripts/quest/3926.js
Normal file
59
scripts/quest/3926.js
Normal file
@@ -0,0 +1,59 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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/>.
|
||||
*/
|
||||
/* Screwing the Red Scorpions
|
||||
*/
|
||||
|
||||
var status = -1;
|
||||
|
||||
function end(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
qm.dispose();
|
||||
} else {
|
||||
if(mode == 0 && type > 0) {
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
|
||||
if (status == 0) {
|
||||
var c = 0;
|
||||
|
||||
for(var i = 0; i < 4; i++) {
|
||||
if(qm.getQuestProgress(3926, i) == 1) {
|
||||
c++;
|
||||
}
|
||||
}
|
||||
|
||||
if(c == 4) {
|
||||
qm.sendNext("You delivered all the jewels, well done!");
|
||||
qm.gainExp(6500 * qm.getPlayer().getExpRate());
|
||||
qm.forceCompleteQuest();
|
||||
} else {
|
||||
qm.sendNext("Have you brought all the jewels from the Red Scorpions? They have to be delivered to the Residential areas of the Sand Bandits.");
|
||||
}
|
||||
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
70
scripts/quest/3929.js
Normal file
70
scripts/quest/3929.js
Normal file
@@ -0,0 +1,70 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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/>.
|
||||
*/
|
||||
/* Sejan's Test
|
||||
Food delivery on Ariant
|
||||
*/
|
||||
|
||||
var status = -1;
|
||||
|
||||
function end(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
qm.dispose();
|
||||
} else {
|
||||
if(mode == 0 && type > 0) {
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
|
||||
if (status == 0) {
|
||||
var c = 0;
|
||||
|
||||
for(var i = 0; i < 4; i++) {
|
||||
if(qm.getQuestProgress(3929, i) == 1) {
|
||||
c++;
|
||||
}
|
||||
}
|
||||
|
||||
if(c == 4) {
|
||||
qm.sendNext("You delivered all the food, good.");
|
||||
qm.gainExp(2000 * qm.getPlayer().getExpRate());
|
||||
qm.forceCompleteQuest();
|
||||
} else {
|
||||
var missed = (4 - qm.getItemQuantity(4031580)) - c;
|
||||
if(missed > 0) {
|
||||
if(qm.canHold(4031580, missed)) {
|
||||
qm.gainItem(4031580, missed);
|
||||
qm.sendNext("Hey, what are you trying to pull on? To pass my test you must deliver all the foods to the Residential areas.");
|
||||
} else {
|
||||
qm.sendNext("You don't completed the task, neither has slots available on the inventory to get the food. Free a slot on your ETC please.");
|
||||
}
|
||||
} else {
|
||||
qm.sendNext("Hey, what are you trying to pull on? To pass my test you must to deliver all the foods to the Residential areas.");
|
||||
}
|
||||
}
|
||||
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
57
scripts/quest/3933.js
Normal file
57
scripts/quest/3933.js
Normal file
@@ -0,0 +1,57 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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/>.
|
||||
*/
|
||||
/*
|
||||
Ardin - Sand Bandits team challenge
|
||||
*/
|
||||
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
qm.dispose();
|
||||
} else {
|
||||
if(mode == 0 && type > 0) {
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
|
||||
if (status == 0) {
|
||||
qm.sendNext("I didn't think you would be this strong. I feel like you have what it takes to become a member of the Sand Bandits. The most important aspect of being a member is power, and I think you have that. I also... want to test you one more time, just to make sure you're the right one. What do you think? Can you handle it?");
|
||||
} else if (status == 1) {
|
||||
qm.sendAcceptDecline("To truly see your strength, I'll have to face you myself. Don't worry, I'll summon my other self to face off against you. Are you ready?");
|
||||
} else if (status == 2) {
|
||||
qm.sendNext("Good, I like your confidence.");
|
||||
} else {
|
||||
if(qm.getWarpMap(926000000).getCharacters().size() > 0) {
|
||||
qm.sendOk("There is someone currently in this map, come back later.");
|
||||
} else {
|
||||
qm.warp(926000000);
|
||||
qm.forceStartQuest();
|
||||
}
|
||||
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
95
scripts/quest/3941.js
Normal file
95
scripts/quest/3941.js
Normal file
@@ -0,0 +1,95 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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/>.
|
||||
*/
|
||||
/* Steal queen's silk
|
||||
*/
|
||||
|
||||
importPackage(Packages.client);
|
||||
|
||||
function isTigunMorphed(ch) {
|
||||
return ch.getBuffSource(MapleBuffStat.MORPH) == 2210005;
|
||||
}
|
||||
|
||||
var status = -1;
|
||||
|
||||
function start(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
qm.dispose();
|
||||
} else {
|
||||
if(mode == 0 && type > 0) {
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
|
||||
if(!isTigunMorphed(qm.getPlayer())) {
|
||||
qm.sendNext("What's this? I can't simply give the Queen's silk to anyone, claiming they will hand it at once to the queen. Get out of my sights.");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
|
||||
if (status == 0) {
|
||||
qm.sendNext("Tigun, what are you doing here?");
|
||||
} else if (status == 1) {
|
||||
qm.sendNext("The Queen wants her silk right now? Alright, I have them here. Hold on a moment.");
|
||||
|
||||
qm.forceStartQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
qm.dispose();
|
||||
} else {
|
||||
if(mode == 0 && type > 0) {
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
|
||||
if(!isTigunMorphed(qm.getPlayer())) {
|
||||
qm.sendNext("What's this? I can't simply give the Queen's silk to anyone, claiming they will hand it at once to the queen. Get out of my sights.");
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
|
||||
if (status == 0) {
|
||||
if(qm.canHold(4031571, 1)) {
|
||||
qm.gainItem(4031571);
|
||||
|
||||
qm.sendNext("There you go. Please deliver to the queen as soon as possible, Tigun, she gets really mad if things get delayed.");
|
||||
qm.forceCompleteQuest();
|
||||
} else {
|
||||
qm.sendNext("Hey, you're lacking space to hold this, man. I will stay with it while you arrange your backpack...");
|
||||
}
|
||||
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
56
scripts/quest/3953.js
Normal file
56
scripts/quest/3953.js
Normal file
@@ -0,0 +1,56 @@
|
||||
/*
|
||||
This file is part of the HeavenMS (MapleSolaxiaV2) MapleStory Server
|
||||
Copyleft (L) 2017 RonanLana
|
||||
|
||||
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 end(mode, type, selection) {
|
||||
if (mode == -1) {
|
||||
qm.dispose();
|
||||
} else {
|
||||
if(mode == 0 && type > 0) {
|
||||
qm.dispose();
|
||||
return;
|
||||
}
|
||||
|
||||
if (mode == 1)
|
||||
status++;
|
||||
else
|
||||
status--;
|
||||
|
||||
if (status == 0) {
|
||||
qm.sendSimple("Eh, are you still saying Deo is a monster? No, Deo is not a monster, he is a peaceful leader of the Royal cactus from the region.\r\n\r\n#L0##bHave you heard that a group of merchants crossing through the desert were attacked by the monsters?#k");
|
||||
} else if (status == 1) {
|
||||
qm.sendSimple("Is that so? I wonder why these merchants were wandering so recklessly in the desert. They trespassed the territory of the Cactus'! They shouldn't be wandering around in the first place, they should first have the leave of the Ariant Counsel.\r\n\r\n#L0##bThis is all because of the Queen's negligence in maintaining the safety of the town.#k");
|
||||
} else if (status == 2) {
|
||||
qm.sendSimple("Ehh... Yeah, the city is not really doing well because of the currently ruling govern, that's indeed a fact. If only the Guardians of the Deserts returned to put order on this mess...\r\n\r\n#L0##bWhat is the Guardian of the Deserts doing when we're under the Queen's tyranny?#k");
|
||||
} else if (status == 3) {
|
||||
qm.sendSimple("They have departed on an expedition to get rid of some major threats in the desert that were ravaging Ariant, for quite some time now... It's strange, they should have already returned... Thinking about it now, the last attack on the merchants was around the direction the Guardians departed... No, that can't be... Can it?\r\n\r\n#L0##bPerhaps Deo has already turned into a monster.#k");
|
||||
}
|
||||
else if (status == 4) {
|
||||
qm.gainItem(4011008, -1);
|
||||
|
||||
qm.sendNext("We're in great trouble, if it is like this. And it really seems like it. If the Royal Cactus Deo has gone insane, Ariant is done for. You, can you do something to defeat Deo? We really need your help now.");
|
||||
qm.gainExp(20000 * qm.getPlayer().getExpRate());
|
||||
|
||||
qm.forceCompleteQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -19,10 +19,10 @@
|
||||
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/>.
|
||||
*/
|
||||
/*2612004.js - MagatiaPQ Box
|
||||
/*2612004.js - Zenumist crystal
|
||||
*@author Ronan
|
||||
*/
|
||||
|
||||
function act() {
|
||||
function hit() {
|
||||
rm.sprayItems();
|
||||
}
|
||||
9
scripts/reactor/2612005.js
Normal file
9
scripts/reactor/2612005.js
Normal file
@@ -0,0 +1,9 @@
|
||||
/*
|
||||
Yulete's Lab: Making the Reagent
|
||||
*/
|
||||
|
||||
function hit(){
|
||||
if(rm.getReactor().getState() == 4) {
|
||||
rm.dropItems();
|
||||
}
|
||||
}
|
||||
28
scripts/reactor/2619000.js
Normal file
28
scripts/reactor/2619000.js
Normal file
@@ -0,0 +1,28 @@
|
||||
/*
|
||||
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/>.
|
||||
*/
|
||||
/*2619000.js - Zenumist crystal
|
||||
*@author Ronan
|
||||
*/
|
||||
|
||||
function hit() {
|
||||
rm.dropItems();
|
||||
}
|
||||
Reference in New Issue
Block a user