Mystic Doors review + Togglable SrvMessage-BossHP + Map-Event patch
Reviewed Mystic Doors. Fixed several issues showing up on Duey in uncommon scenarios. Fixed a concurrency issue with XMLDomMapleData. Scheduled forward the "lock disposal" action within the source. Now, it's expected that, after a set while, no method should require usage of a disposed lock and, during that while, a supposed "disposed lock" is still available to run (although no new processes is expected to require use of these locks). Fixed concurrency issues with player's current event instance, generating several inconsistencies when swiftly registering/unregistering from events. Implemented a mutually exclusive approach for server message - Boss HPbar. Fixed item-making Kage requiring lv71~80 ETC instead of the expected 81~90. Removed the possibility to buy cosmetic coupons with mesos through the NPCs. Sleepywood JQ's no longer gives cash items when they finish the quest repeatedly. Added Duey trucks in several maps lacking it. Added NPC Duey in New Leaf City. Fixed scripted quests not calculating QUEST_RATE (if applied) when rewarding experience and meso.
This commit is contained in:
@@ -44,8 +44,8 @@ function end(mode, type, selection) {
|
||||
qm.gainItem(4003000, -30);
|
||||
qm.gainItem(4003001, -30);
|
||||
qm.gainItem(4001004, -1);
|
||||
qm.gainExp(20000 * qm.getPlayer().getExpRate());
|
||||
qm.gainMeso(15000 * qm.getPlayer().getMesoRate());
|
||||
qm.gainExp(20000);
|
||||
qm.gainMeso(15000);
|
||||
qm.gainFame(2);
|
||||
qm.completeQuest();
|
||||
|
||||
|
||||
@@ -35,7 +35,7 @@ function end(mode, type, selection) {
|
||||
qm.gainItem(item, 1);
|
||||
qm.gainItem(4000007, -150);
|
||||
|
||||
qm.gainExp(2200 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(2200);
|
||||
qm.completeQuest();
|
||||
|
||||
qm.sendOk("Alright, if you need work sometime down the road, feel free to come back and see me. This town sure can use a person like you for help~");
|
||||
|
||||
@@ -78,7 +78,7 @@ function end(mode, type, selection) {
|
||||
|
||||
qm.forceCompleteQuest();
|
||||
qm.gainItem(4220137, -1);
|
||||
qm.gainExp(37600 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(37600);
|
||||
|
||||
qm.dispose();
|
||||
}
|
||||
|
||||
@@ -65,7 +65,7 @@ function end(mode, type, selection) {
|
||||
if (qm.isQuestStarted(21703)) {
|
||||
qm.forceCompleteQuest();
|
||||
qm.teachSkill(21000000, qm.getPlayer().getSkillLevel(21000000), 10, -1); // Combo Ability Skill
|
||||
qm.gainExp(2800 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(2800);
|
||||
}
|
||||
qm.sendNext("(You remembered the #bCombo Ability#k skill! You were skeptical of the training at first, since the old man suffers from Alzheimer's and all, but boy, was it effective!)", 2);
|
||||
qm.showInfo("Effect/BasicEff.img/AranGetSkill");
|
||||
|
||||
@@ -37,7 +37,7 @@ function end(mode, type, selection) {
|
||||
if (qm.getQuestStatus(21720) == 1) {
|
||||
qm.forceCompleteQuest();
|
||||
qm.teachSkill(21001003, qm.getPlayer().getSkillLevel(21001003), 20, -1);
|
||||
qm.gainExp(3900 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(3900);
|
||||
}
|
||||
qm.showIntro("Effect/BasicEff.img/AranGetSkill");
|
||||
qm.sendNext('#b(You remembered the Polearm Booster skill!)#k', 2);
|
||||
|
||||
@@ -39,7 +39,7 @@ function end(mode, type, selection) {
|
||||
qm.sendNext("You haven't found the #rPuppeteer's cave#k yet, did you?");
|
||||
} else {
|
||||
qm.sendNext("Hm, so the entrance is blocked by a powerful force? I see, gimme a time to think now...");
|
||||
qm.gainExp(200 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(200);
|
||||
qm.forceCompleteQuest();
|
||||
}
|
||||
|
||||
|
||||
@@ -62,7 +62,7 @@ function end(mode, type, selection) {
|
||||
} else if(status == 1) {
|
||||
qm.sendNext("I will teach you the #rPolearm Mastery#k skill, to reward your actions here. You will be able to improve your accuracy and the overall mastery of your polearm arts.");
|
||||
} else {
|
||||
qm.gainExp(8000 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(8000);
|
||||
qm.teachSkill(21100000, 0, 20, -1); // polearm mastery
|
||||
|
||||
qm.forceCompleteQuest();
|
||||
|
||||
@@ -64,7 +64,7 @@ function end(mode, type, selection) {
|
||||
} else if(status == 2) {
|
||||
qm.sendNext("For your bravery inputted on these series of missions, I will now reward you properly. Behold, the #rCombo Drain#k Skill: that let's you heal back a portion of damage dealt to the monsters.");
|
||||
} else {
|
||||
qm.gainExp(12500 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(12500);
|
||||
qm.teachSkill(21100005, 0, 20, -1); // combo drain
|
||||
|
||||
qm.forceCompleteQuest();
|
||||
|
||||
@@ -72,7 +72,7 @@ function end(mode, type, selection) {
|
||||
}
|
||||
} else if (status == 1) {
|
||||
qm.gainItem(4032323, -1);
|
||||
qm.gainExp(6037 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(6037);
|
||||
qm.forceCompleteQuest();
|
||||
|
||||
qm.dispose();
|
||||
|
||||
@@ -37,7 +37,7 @@ function end(mode, type, selection) {
|
||||
if(status == 0) {
|
||||
qm.sendNext("So, have you defeated the giant? Oh, a Black Wing agent undercover? And he GOT THE SEAL STONE OF ORBIS?! Oh, no. That's horrible! We need to develop countermeasures as soon as possible! Tell the informant on Lith about the situation.");
|
||||
} else {
|
||||
qm.gainExp(29500 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(29500);
|
||||
qm.forceCompleteQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
|
||||
@@ -88,7 +88,7 @@ function end(mode, type, selection) {
|
||||
} else if (status == 1) {
|
||||
qm.gainItem(4032342, -8);
|
||||
qm.gainItem(4220151, -1);
|
||||
qm.gainExp(10000 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(10000);
|
||||
|
||||
qm.forceCompleteQuest();
|
||||
qm.dispose();
|
||||
|
||||
@@ -73,7 +73,7 @@ function end(mode, type, selection) {
|
||||
} else if (status == 1) {
|
||||
qm.gainItem(4032342, -8);
|
||||
qm.gainItem(4220151, -1);
|
||||
qm.gainExp(10000 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(10000);
|
||||
|
||||
qm.forceCompleteQuest();
|
||||
qm.dispose();
|
||||
|
||||
@@ -64,7 +64,7 @@ function end(mode, type, selection) {
|
||||
} else if (status == 1) {
|
||||
qm.sendNext("But yet, something made you unhappy. What could it be? ... No... Black Wings took away the Seal stone? I'm afraid nothing can be done anymore. I suggest you return to your group tactician, Tru is it?, and tell him about the situation now. Tell him about the loss here in Mu Lung. There's no time to lose, hurry!");
|
||||
} else if (status == 2) {
|
||||
qm.gainExp(16000 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(16000);
|
||||
qm.forceCompleteQuest();
|
||||
|
||||
qm.dispose();
|
||||
|
||||
@@ -39,7 +39,7 @@ function end(mode, type, selection) {
|
||||
} else if (status == 1) {
|
||||
qm.sendNext("I've researched some skill books, trying to trace any lost skills of yours. Good news I found one of them: it's the #rFinal Charge#k! With it you will be able to draw closer opposing monsters at each swipe. It's a fine improvement for your arsenal, isn't it?");
|
||||
} else if (status == 2) {
|
||||
qm.gainExp(20000 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(20000);
|
||||
qm.teachSkill(21100002, 0, 30, -1); // final charge
|
||||
|
||||
qm.forceCompleteQuest();
|
||||
|
||||
@@ -39,7 +39,7 @@ function start(mode, type, selection) {
|
||||
} else if (status == 1) {
|
||||
qm.sendNext("Aran, your next objective will be to use the #btime gate to Ellin#k again. This time you will be retrieving the long lost #rSeal Stone of Ellin Forest#k. According to informations our network have gathered, #b#p2131002##k of that time have a clue about that gem, #rfind her#k. Please be successful on this task, our world is relying on you more than ever!");
|
||||
} else {
|
||||
qm.gainExp(500 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(500);
|
||||
qm.forceCompleteQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
|
||||
@@ -37,7 +37,7 @@ function end(mode, type, selection) {
|
||||
if (status == 0) {
|
||||
qm.sendNext("Oh, a letter for the #rempress#k? From the #bheroes#k?!");
|
||||
} else {
|
||||
qm.gainExp(1000 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(1000);
|
||||
qm.gainItem(4032330, -1);
|
||||
qm.forceCompleteQuest();
|
||||
|
||||
|
||||
@@ -17,7 +17,7 @@ function start(mode, type, selection) {
|
||||
}
|
||||
|
||||
function end(mode, type, selection) {
|
||||
qm.gainExp(200 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(200);
|
||||
qm.forceCompleteQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
@@ -8,7 +8,7 @@ function end(mode, type, selection){
|
||||
if(qm.haveItem(4031853)){
|
||||
if(qm.canHold(2030019)) {
|
||||
qm.gainItem(4031853, -1);
|
||||
qm.gainExp(1700 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(1700);
|
||||
qm.gainItem(2030019, 10);
|
||||
|
||||
qm.sendOk("Geez, you found my glasses! Thank you, thank you so much. Now I'm able to see everything again!");
|
||||
@@ -24,7 +24,7 @@ function end(mode, type, selection){
|
||||
else
|
||||
qm.gainItem(4031855, -1);
|
||||
|
||||
qm.gainExp(1000 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(1000);
|
||||
qm.gainItem(2030019, 5);
|
||||
|
||||
qm.sendOk("Hm, those aren't my glasses... But alas, I'll take it anyway. Thanks.");
|
||||
|
||||
@@ -57,7 +57,7 @@ function end(mode, type, selection) {
|
||||
|
||||
qm.sendNext("(Ah, there is a crumbled note here... Hm, it contains details about some scheme that is about to happen, that must be what #r#p1052002##k was talking about.)");
|
||||
qm.gainItem(4031894, 1);
|
||||
qm.gainExp(20000 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(20000);
|
||||
qm.forceCompleteQuest();
|
||||
|
||||
qm.dispose();
|
||||
|
||||
@@ -36,7 +36,7 @@ function start(mode, type, selection) {
|
||||
|
||||
if (status == 0) {
|
||||
qm.sendNext("I've just gathered an interesting information, #rDyle looks just like regular Ligators#k, but bigger.");
|
||||
qm.gainExp(7000 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(7000);
|
||||
qm.forceCompleteQuest();
|
||||
|
||||
if(isAllSubquestsDone() && qm.haveItem(4031894)) {
|
||||
|
||||
@@ -36,7 +36,7 @@ function start(mode, type, selection) {
|
||||
|
||||
if (status == 0) {
|
||||
qm.sendNext("Hey, did you notice already, it looks like some awful stench is emanating from the sewers... Ewww");
|
||||
qm.gainExp(7000 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(7000);
|
||||
qm.forceCompleteQuest();
|
||||
|
||||
if(isAllSubquestsDone() && qm.haveItem(4031894)) {
|
||||
|
||||
@@ -36,7 +36,7 @@ function start(mode, type, selection) {
|
||||
|
||||
if (status == 0) {
|
||||
qm.sendNext("Hey did you see how strange #rLakelis#k has been acting these days? We should see what's going on aabout her, her actions have been so weird lately...");
|
||||
qm.gainExp(7000 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(7000);
|
||||
qm.forceCompleteQuest();
|
||||
|
||||
if(isAllSubquestsDone() && qm.haveItem(4031894)) {
|
||||
|
||||
@@ -36,7 +36,7 @@ function start(mode, type, selection) {
|
||||
|
||||
if (status == 0) {
|
||||
qm.sendNext("Did you know, they say someone from the sewers has been trying to #rdevelop a magic powder that let's one to grow#k, isn't that nice?");
|
||||
qm.gainExp(7000 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(7000);
|
||||
qm.forceCompleteQuest();
|
||||
|
||||
if(isAllSubquestsDone() && qm.haveItem(4031894)) {
|
||||
|
||||
@@ -38,7 +38,7 @@ function end(mode, type, selection) {
|
||||
if(status == 0) {
|
||||
if(qm.getQuestProgress(2236) == 63) { //111111
|
||||
qm.sendOk("I, too, felt it. The force of the Shaman Rocks began to overpower the forces of evil. I think Sleepywood is safe now. The evil has been eliminated.");
|
||||
qm.gainExp(60000 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(60000);
|
||||
qm.forceCompleteQuest();
|
||||
}
|
||||
else {
|
||||
|
||||
@@ -13,7 +13,7 @@ function end(mode, type, selection) {
|
||||
else {
|
||||
qm.gainItem(4032399, -20);
|
||||
qm.sendOk("Oh, you brought 20 #b#t4032399##k! Thank you.");
|
||||
qm.gainExp(8000 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(8000);
|
||||
qm.forceCompleteQuest();
|
||||
}
|
||||
|
||||
|
||||
@@ -102,7 +102,7 @@ function end(mode, type, selection)
|
||||
else if(selection == 3)
|
||||
{
|
||||
qm.sendOk("So that was the song he was playing... Well, it wasn't my song after all, but I'm glad I can know that now with certainty. Thank you so much.");
|
||||
qm.gainExp(32500 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(32500);
|
||||
qm.forceCompleteQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
|
||||
@@ -57,6 +57,7 @@ function end(mode, type, selection) {
|
||||
qm.sendNextPrev("Hmmm... okay. Since the letter is from the job instructor, I suppose you are really the one. I apologize for not introducing myself to you earlier. I'm the #bHead Security Officer#k in charge of protecting King Mush. As you can see, this temporary hideout is protected by the team of security and soldiers. Our situation may be dire, but nevertheless, welcome to Kingdom of Mushroom.");
|
||||
if(status == 2){
|
||||
qm.gainItem(4032375, -1);
|
||||
qm.gainExp(6000);
|
||||
qm.forceCompleteQuest();
|
||||
qm.forceStartQuest(2312);
|
||||
qm.dispose();
|
||||
|
||||
@@ -46,7 +46,7 @@ function end(mode, type, selection) {
|
||||
qm.sendOk("Did you teach those Renegade Spores a lesson?");
|
||||
if (status == 1){
|
||||
qm.forceCompleteQuest();
|
||||
qm.gainExp(11500 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(11500);
|
||||
qm.gainItem(4000499, -50);
|
||||
qm.sendOk("That was amazing. I apologize for doubting your abilities. Please save our Kingdom of Mushroom from this crisis!");
|
||||
qm.dispose();
|
||||
|
||||
@@ -44,7 +44,7 @@ function end(mode, type, selection) {
|
||||
}
|
||||
if (status == 0) {
|
||||
qm.forceCompleteQuest();
|
||||
qm.gainExp(4000 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(4000);
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -28,7 +28,7 @@ function start(mode, type, selection) {
|
||||
if(status == 2){
|
||||
//qm.forceStartQuest();
|
||||
//qm.forceStartQuest(2314,"1");
|
||||
qm.gainExp(8300 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(8300);
|
||||
qm.sendOk("I see, so it was indeed not a regular barrier by any means. Great work there. If not for you help, we wouldn't have had a clue as to what that was all about.");
|
||||
qm.forceCompleteQuest();
|
||||
qm.dispose();
|
||||
@@ -48,7 +48,7 @@ function end(mode, type, selection) {
|
||||
if (status == 0)
|
||||
qm.sendOk("I see that you have thoroughly investigated the barrier at the Mushroom Forest. What was it like?");
|
||||
if (status == 1){
|
||||
qm.gainExp(8300 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(8300);
|
||||
qm.sendOk("I see, so it was indeed not a regular barrier by any means. Great work there. If not for you help, we wouldn't have had a clue as to what that was all about.");
|
||||
qm.forceCompleteQuest();
|
||||
qm.dispose();
|
||||
|
||||
@@ -45,7 +45,7 @@ function end(mode, type, selection) {
|
||||
if (status == 0)
|
||||
qm.sendOk("What? You investigated the barrier at the Mushroom Forest?");
|
||||
if (status == 1){
|
||||
qm.gainExp(4000 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(4000);
|
||||
qm.sendOk("Hmmm...this is interesting. It's a barrier set up by someone with a powerful force of magic, which means there's no way we can manually break through it.");
|
||||
qm.forceCompleteQuest();
|
||||
qm.dispose();
|
||||
|
||||
@@ -45,7 +45,7 @@ function end(mode, type, selection) {
|
||||
if (status == 0)
|
||||
qm.sendOk("Ah, so you're the explorer people were talking about. I'm #bScarrs, the Royal Mushroom Scholar#k representing the Kingdom of Mushroom. So you need some #kKiller Mushroom Spores#k?");
|
||||
if (status == 1){
|
||||
qm.gainExp(4200 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(4200);
|
||||
qm.sendOk("#kKiller Mushroom Spores#k... I think i've heard of them before...");
|
||||
qm.forceCompleteQuest();
|
||||
qm.dispose();
|
||||
|
||||
@@ -45,7 +45,7 @@ function end(mode, type, selection) {
|
||||
if (status == 0)
|
||||
qm.sendOk("Have you gathered up the 100 Poison Mushroom Caps like I asked you to get?");
|
||||
if (status == 1){
|
||||
qm.gainExp(13500 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(13500);
|
||||
qm.gainItem(4000500, -100);
|
||||
qm.sendOk("I am amazed that you were able to gather up these 100 Poison Mushroom Caps, which is considered a difficult feat. I think I'll be able to make #bKiller Mushroom Spores#k our of these.");
|
||||
qm.forceCompleteQuest();
|
||||
|
||||
@@ -45,7 +45,7 @@ function end(mode, type, selection) {
|
||||
if (status == 0)
|
||||
qm.sendOk("Did you gather up all the necessary ingredients for it?")
|
||||
if (status == 1){
|
||||
qm.gainExp(11500 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(11500);
|
||||
qm.gainItem(4000499, -50);
|
||||
qm.sendNext("Okay, these should be enough for me to make the #bKiller Mushroom Spores.#k Please hold on for a bit.");
|
||||
qm.forceCompleteQuest();
|
||||
|
||||
@@ -46,7 +46,7 @@ function end(mode, type, selection) {
|
||||
if (status == 0)
|
||||
qm.sendOk("Are the #bKiller Mushroom Spores#k finally completed?");
|
||||
if (status == 1){
|
||||
qm.gainExp(4200 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(4200);
|
||||
qm.gainItem(4032389, -1);
|
||||
qm.sendOk("Okay, so this is the #bKiller Mushroom Spores.#k Thank you, thank you, and please tell #bScarrs#k the same.");
|
||||
qm.forceCompleteQuest();
|
||||
|
||||
@@ -46,7 +46,7 @@ function end(mode, type, selection) {
|
||||
if (status == 0)
|
||||
qm.sendOk("Oh! You're here on behalf of #bScarrs#k? \r\n\r\n#fUI/UIWindow.img/QuestIcon/4/0# \r\n#fUI/UIWindow.img/QuestIcon/8/0# 8800 exp");
|
||||
if (status == 1){
|
||||
qm.gainExp(8800 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(8800);
|
||||
qm.gainItem(4032389, -1);
|
||||
qm.sendOk("Ahh, so this is the #bKiller Mushroom Spores#k that I was working on in the past. I had a tough time gathering up the ingredients, so I left it in theory only, but he was able to complete it, with a sample to show for as well. Please tell him I appreciate his good work.");
|
||||
qm.forceCompleteQuest();
|
||||
|
||||
@@ -45,7 +45,7 @@ function end(mode, type, selection) {
|
||||
if (status == 0)
|
||||
qm.sendOk("I have been keeping up on your fabulour work. I am aware that you have successfully created the #bKiller Mushroom Spores#k, which penetrates through the unpenetrable barrier of the forest. Congratulations!");
|
||||
if (status == 1){
|
||||
qm.gainExp(2500 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(2500);
|
||||
qm.sendOk("The problem now is to figure out how to enter the castle.");
|
||||
qm.forceCompleteQuest();
|
||||
qm.dispose();
|
||||
|
||||
@@ -30,7 +30,7 @@ function start(mode, type, selection) {
|
||||
if (status == 2){
|
||||
//qm.forceStartQuest();
|
||||
//qm.forceStartQuest(2322, "1");
|
||||
qm.gainExp(11000 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(11000);
|
||||
qm.sendOk("Good job navigating through the area.");
|
||||
qm.forceCompleteQuest();
|
||||
qm.dispose();
|
||||
@@ -50,7 +50,7 @@ function end(mode, type, selection) {
|
||||
if (status == 0)
|
||||
qm.sendOk("Hmmm I see... so they have completely shut off the entrance and everything.");
|
||||
if (status == 1){
|
||||
qm.gainExp(11000 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(11000);
|
||||
qm.sendOk("Good job navigating through the area.");
|
||||
qm.forceCompleteQuest();
|
||||
qm.dispose();
|
||||
|
||||
@@ -24,7 +24,7 @@ function end(mode, type, selection){
|
||||
else if(status == 2){
|
||||
qm.sendOk("What? My brother sent you here? Ahhh... I am safe now. Thank you so much...");
|
||||
qm.forceCompleteQuest();
|
||||
qm.gainExp(6000 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(6000);
|
||||
qm.dispose();
|
||||
}
|
||||
}
|
||||
@@ -51,7 +51,7 @@ function end(mode, type, selection){
|
||||
qm.sendNext("Hurray! #b#h ##k you defeated the #bPrime Minister#k.");
|
||||
}
|
||||
else if(status == 1){
|
||||
qm.gainExp(15000 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(15000);
|
||||
qm.forceCompleteQuest();
|
||||
|
||||
var eim = qm.getEventInstance();
|
||||
|
||||
@@ -37,7 +37,7 @@ function start(mode, type, selection){
|
||||
}
|
||||
else if(status == 6){
|
||||
qm.forceStartQuest();
|
||||
qm.gainExp(1000 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(1000);
|
||||
qm.forceCompleteQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
|
||||
@@ -17,7 +17,7 @@ function end(mode, type, selection) {
|
||||
else if(rnd == 2) qm.gainItem(2040707, 1);
|
||||
else qm.gainItem(2040708, 1);
|
||||
|
||||
qm.gainExp(2700 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(2700);
|
||||
qm.forceCompleteQuest();
|
||||
}
|
||||
else {
|
||||
|
||||
@@ -37,7 +37,7 @@ function end(mode, type, selection) {
|
||||
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.gainExp(60000);
|
||||
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.");
|
||||
|
||||
@@ -45,7 +45,7 @@ function end(mode, type, selection) {
|
||||
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.gainExp(12500);
|
||||
qm.gainItem(2050004, 10);
|
||||
|
||||
var i = Math.floor(Math.random() * 5);
|
||||
|
||||
@@ -39,7 +39,7 @@ function end(mode, type, selection) {
|
||||
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());
|
||||
qm.gainExp(20000);
|
||||
} else {
|
||||
qm.sendNext("Did you not seal the #rmagic circle beneath Magatia#k yet? It is a matter of great importance, please haste yourself.");
|
||||
}
|
||||
|
||||
@@ -44,7 +44,7 @@ function end(mode, type, selection) {
|
||||
qm.gainItem(4031104, -1);
|
||||
qm.gainItem(4031105, -1);
|
||||
qm.gainItem(4031106, -1);
|
||||
qm.gainExp(12000 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(12000);
|
||||
qm.completeQuest();
|
||||
|
||||
qm.dispose();
|
||||
|
||||
@@ -36,7 +36,7 @@ function end(mode, type, selection) {
|
||||
item = qm.gainItem(item, 1);
|
||||
|
||||
if (item != null) {
|
||||
qm.gainExp(12000 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(12000);
|
||||
qm.completeQuest();
|
||||
}
|
||||
|
||||
|
||||
@@ -40,7 +40,7 @@ function end(mode, type, selection) {
|
||||
qm.gainItem(item, 1);
|
||||
qm.gainItem(4000122, -120);
|
||||
|
||||
qm.gainExp(6100 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(6100);
|
||||
qm.completeQuest();
|
||||
|
||||
qm.sendOk("Thank you so much for fulfilling your missions as one of the Mesorangers. I've told the Sector about your successful story, and the Sector seems to be very pleased with you, too. Hopefully you'll keep working with us. Bye~");
|
||||
|
||||
@@ -15,7 +15,7 @@ function end(mode, type, selection) {
|
||||
if(qm.getPlayer().getInventory(Packages.client.inventory.MapleInventoryType.USE).getNumFreeSlot() >= 1) {
|
||||
qm.gainItem(4000099, -1);
|
||||
qm.gainItem(2000011, 50);
|
||||
qm.gainExp(8000 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(8000);
|
||||
qm.forceCompleteQuest();
|
||||
}
|
||||
else {
|
||||
|
||||
@@ -78,7 +78,7 @@ function end(mode, type, selection) {
|
||||
qm.sendOk("It seems the potion worked and your emotions are no longer frozen. And, oh, my... You're ailing bad, #bpurge#k that out quickly.");
|
||||
}
|
||||
} else if(status == 1) {
|
||||
qm.gainExp(891500 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(891500);
|
||||
qm.completeQuest(3514);
|
||||
qm.dispose();
|
||||
}
|
||||
|
||||
@@ -44,7 +44,7 @@ function start(mode, type, selection) {
|
||||
qm.sendNext("You have brought a #b#t4001094##k, thank you for the effort!");
|
||||
} else if (status == 1) {
|
||||
qm.gainItem(4001094, -1);
|
||||
qm.gainExp(42000 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(42000);
|
||||
|
||||
qm.forceCompleteQuest();
|
||||
qm.dispose();
|
||||
|
||||
@@ -15,40 +15,40 @@ function end(mode, type, selection) {
|
||||
qm.gainItem(4000294, -1000);
|
||||
qm.gainItem(2040501, 1);
|
||||
qm.gainItem(2000005, 50);
|
||||
qm.gainExp(54000 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(54000);
|
||||
qm.forceCompleteQuest();
|
||||
}
|
||||
|
||||
else if(qm.haveItem(4000294, 600)) {
|
||||
qm.gainItem(4000294, -600);
|
||||
qm.gainItem(2020013, 50);
|
||||
qm.gainExp(54000 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(54000);
|
||||
qm.forceCompleteQuest();
|
||||
}
|
||||
|
||||
else if(qm.haveItem(4000294, 500)) {
|
||||
qm.gainItem(4000294, -500);
|
||||
qm.gainExp(54000 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(54000);
|
||||
qm.forceCompleteQuest();
|
||||
}
|
||||
|
||||
else if(qm.haveItem(4000294, 100)) {
|
||||
qm.gainItem(4000294, -100);
|
||||
qm.gainExp(45000 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(45000);
|
||||
qm.forceCompleteQuest();
|
||||
}
|
||||
|
||||
else if(qm.haveItem(4000294, 50)) {
|
||||
qm.gainItem(4000294, -50);
|
||||
qm.gainItem(2020007, 50);
|
||||
qm.gainExp(10000 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(10000);
|
||||
qm.forceCompleteQuest();
|
||||
}
|
||||
|
||||
else if(qm.haveItem(4000294, 1)) {
|
||||
qm.gainItem(4000294, -1);
|
||||
qm.gainItem(2000000, 1);
|
||||
qm.gainExp(10 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(10);
|
||||
qm.forceCompleteQuest();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -47,7 +47,7 @@ function end(mode, type, selection) {
|
||||
|
||||
if(c == 4) {
|
||||
qm.sendNext("You delivered all the jewels, well done!");
|
||||
qm.gainExp(6500 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(6500);
|
||||
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.");
|
||||
|
||||
@@ -63,7 +63,7 @@ function end(mode, type, selection) {
|
||||
return;
|
||||
}
|
||||
} else if (status == 3) {
|
||||
qm.gainExp(1000 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(1000);
|
||||
qm.forceCompleteQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
|
||||
@@ -48,7 +48,7 @@ function end(mode, type, selection) {
|
||||
|
||||
if(c == 4) {
|
||||
qm.sendNext("You delivered all the food, good.");
|
||||
qm.gainExp(2000 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(2000);
|
||||
qm.forceCompleteQuest();
|
||||
} else {
|
||||
var missed = (4 - qm.getItemQuantity(4031580)) - c;
|
||||
|
||||
@@ -46,7 +46,7 @@ function end(mode, type, selection) {
|
||||
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.gainExp(20000);
|
||||
|
||||
qm.forceCompleteQuest();
|
||||
qm.dispose();
|
||||
|
||||
@@ -52,7 +52,7 @@ function end(mode, type, selection) {
|
||||
var skillid = Math.floor(qm.getPlayer().getJob().getId() / 1000) * 10000000 + 1007;
|
||||
qm.teachSkill(skillid, 2, 3, -1);
|
||||
|
||||
qm.gainExp(230000 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(230000);
|
||||
qm.forceCompleteQuest();
|
||||
qm.dispose();
|
||||
}
|
||||
|
||||
@@ -54,7 +54,7 @@ function end(mode, type, selection) {
|
||||
var skillid = Math.floor(qm.getPlayer().getJob().getId() / 1000) * 10000000 + 1007;
|
||||
qm.teachSkill(skillid, 3, 3, -1);
|
||||
|
||||
qm.gainExp(300000 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(300000);
|
||||
qm.forceCompleteQuest();
|
||||
|
||||
qm.dispose();
|
||||
|
||||
@@ -49,7 +49,7 @@ function end(mode, type, selection) {
|
||||
else if (status == 2){
|
||||
if(qm.canHold(3992040, 1)) {
|
||||
qm.gainItem(3992040, 1);
|
||||
qm.gainExp(175000 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(175000);
|
||||
qm.forceCompleteQuest();
|
||||
}
|
||||
else {
|
||||
|
||||
@@ -55,7 +55,7 @@ function end(mode, type, selection) {
|
||||
}
|
||||
} else if (status == 1){
|
||||
qm.gainItem(4032018, -1);
|
||||
qm.gainExp(50000 * qm.getPlayer().getExpRate());
|
||||
qm.gainExp(50000);
|
||||
qm.forceCompleteQuest();
|
||||
|
||||
qm.dispose();
|
||||
|
||||
Reference in New Issue
Block a user