diff --git a/scripts/event/0_EXAMPLE.js b/scripts/event/0_EXAMPLE.js
index 95716edebf..7abe676d6a 100644
--- a/scripts/event/0_EXAMPLE.js
+++ b/scripts/event/0_EXAMPLE.js
@@ -81,7 +81,7 @@ function scheduledTimeout(eim) {
function timeOut(eim) {
if (eim.getPlayerCount() > 0) {
var pIter = eim.getPlayers().iterator();
- while (pIter.hasNext()){
+ while (pIter.hasNext()) {
var player = pIter.next();
player.dropMessage(6, "You have run out of time to complete this event!");
playerExit(eim, player);
diff --git a/scripts/event/2xEvent.js b/scripts/event/2xEvent.js
index 641f3a5d4f..6087a4753b 100644
--- a/scripts/event/2xEvent.js
+++ b/scripts/event/2xEvent.js
@@ -20,11 +20,11 @@
along with this program. If not, see .
*/
/**
--- Odin JavaScript --------------------------------------------------------------------------------
- 2x EXP Event Script
--- Author --------------------------------------------------------------------------------------
- Twdtwd
-**/
+ -- Odin JavaScript --------------------------------------------------------------------------------
+ 2x EXP Event Script
+ -- Author --------------------------------------------------------------------------------------
+ Twdtwd
+ **/
var timer1;
var timer2;
@@ -32,27 +32,31 @@ var timer3;
var timer4;
function init() {
- /*
+ /*
if(em.getChannelServer().getId() == 1) { // Only run on channel 1.
- // AEST
- timer1 = em.scheduleAtTimestamp("start", 1428220800000);
- timer2 = em.scheduleAtTimestamp("stop", 1428228000000);
- // EDT
- timer1 = em.scheduleAtTimestamp("start", 1428271200000);
- timer2 = em.scheduleAtTimestamp("stop", 1428278400000);
- }
+ // AEST
+ timer1 = em.scheduleAtTimestamp("start", 1428220800000);
+ timer2 = em.scheduleAtTimestamp("stop", 1428228000000);
+ // EDT
+ timer1 = em.scheduleAtTimestamp("start", 1428271200000);
+ timer2 = em.scheduleAtTimestamp("stop", 1428278400000);
+ }
*/
}
function cancelSchedule() {
- if (timer1 != null)
+ if (timer1 != null) {
timer1.cancel(true);
- if (timer2 != null)
+ }
+ if (timer2 != null) {
timer2.cancel(true);
- if (timer3 != null)
+ }
+ if (timer3 != null) {
timer3.cancel(true);
- if (timer4 != null)
+ }
+ if (timer4 != null) {
timer4.cancel(true);
+ }
}
function start() {
diff --git a/scripts/event/3rdJob_bowman.js b/scripts/event/3rdJob_bowman.js
index a68959262e..3d44df08b7 100644
--- a/scripts/event/3rdJob_bowman.js
+++ b/scripts/event/3rdJob_bowman.js
@@ -20,7 +20,7 @@
/**
* @Author Ronan
* 3rd Job Event - Bowman
-**/
+ **/
var entryMap = 108010100;
var exitMap = 105040305;
@@ -37,22 +37,22 @@ function getMaxLobbies() {
}
function init() {
- em.setProperty("noEntry","false");
+ em.setProperty("noEntry", "false");
}
function setup(level, lobbyid) {
var eim = em.newInstance("3rdJob_bowman_" + lobbyid);
eim.setProperty("level", level);
eim.setProperty("boss", "0");
-
+
return eim;
}
function playerEntry(eim, player) {
eim.getInstanceMap(maxMapId).resetPQ(1);
-
+
player.changeMap(entryMap, 0);
- em.setProperty("noEntry","true");
+ em.setProperty("noEntry", "true");
const PacketCreator = Java.type('tools.PacketCreator');
player.sendPacket(PacketCreator.getClock(eventTime * 60));
@@ -64,7 +64,7 @@ function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
eim.unregisterPlayer(player);
eim.dispose();
- em.setProperty("noEntry","false");
+ em.setProperty("noEntry", "false");
}
function scheduledTimeout(eim) {
@@ -81,19 +81,21 @@ function clear(eim) {
var player = eim.getPlayers().get(0);
eim.unregisterPlayer(player);
player.changeMap(exitMap);
-
+
eim.dispose();
- em.setProperty("noEntry","false");
+ em.setProperty("noEntry", "false");
}
function changedMap(eim, chr, mapid) {
- if(mapid < minMapId || mapid > maxMapId) playerExit(eim, chr);
+ if (mapid < minMapId || mapid > maxMapId) {
+ playerExit(eim, chr);
+ }
}
function monsterKilled(mob, eim) {}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function allMonstersDead(eim) {}
diff --git a/scripts/event/3rdJob_magician.js b/scripts/event/3rdJob_magician.js
index ca391ed446..f98e79b416 100644
--- a/scripts/event/3rdJob_magician.js
+++ b/scripts/event/3rdJob_magician.js
@@ -20,7 +20,7 @@
/**
* @Author Ronan
* 3rd Job Event - Magician
-**/
+ **/
var entryMap = 108010200;
var exitMap = 100040106;
@@ -37,22 +37,22 @@ function getMaxLobbies() {
}
function init() {
- em.setProperty("noEntry","false");
+ em.setProperty("noEntry", "false");
}
function setup(level, lobbyid) {
var eim = em.newInstance("3rdJob_magician_" + lobbyid);
eim.setProperty("level", level);
eim.setProperty("boss", "0");
-
+
return eim;
}
function playerEntry(eim, player) {
eim.getInstanceMap(maxMapId).resetPQ(1);
-
+
player.changeMap(entryMap, 0);
- em.setProperty("noEntry","true");
+ em.setProperty("noEntry", "true");
const PacketCreator = Java.type('tools.PacketCreator');
player.sendPacket(PacketCreator.getClock(eventTime * 60));
@@ -64,7 +64,7 @@ function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
eim.unregisterPlayer(player);
eim.dispose();
- em.setProperty("noEntry","false");
+ em.setProperty("noEntry", "false");
}
function scheduledTimeout(eim) {
@@ -81,19 +81,21 @@ function clear(eim) {
var player = eim.getPlayers().get(0);
eim.unregisterPlayer(player);
player.changeMap(exitMap);
-
+
eim.dispose();
- em.setProperty("noEntry","false");
+ em.setProperty("noEntry", "false");
}
function changedMap(eim, chr, mapid) {
- if(mapid < minMapId || mapid > maxMapId) playerExit(eim, chr);
+ if (mapid < minMapId || mapid > maxMapId) {
+ playerExit(eim, chr);
+ }
}
function monsterKilled(mob, eim) {}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function allMonstersDead(eim) {}
diff --git a/scripts/event/3rdJob_mount.js b/scripts/event/3rdJob_mount.js
index 7d45386e66..f67eac9681 100644
--- a/scripts/event/3rdJob_mount.js
+++ b/scripts/event/3rdJob_mount.js
@@ -20,7 +20,7 @@
/**
* @Author Ronan
* 3rd Job Event - Kenta's Mount Quest
-**/
+ **/
var entryMap = 923010000;
var exitMap = 923010100;
@@ -39,7 +39,7 @@ function getMaxLobbies() {
}
function init() {
- em.setProperty("noEntry","false");
+ em.setProperty("noEntry", "false");
}
function checkHogHealth(eim) {
@@ -47,7 +47,7 @@ function checkHogHealth(eim) {
if (watchHog != null) {
var hp = watchHog.getHp();
var oldHp = eim.getIntProperty("whog_hp");
-
+
if (oldHp - hp > 1000) { // or 800, if using mobHP / eventTime
eim.dropMessage(6, "Please protect the pig from the aliens!"); // thanks Vcoc
}
@@ -61,7 +61,7 @@ function respawnStages(eim) {
eim.getInstanceMap(eventMaps[i]).instanceMapRespawn();
}
checkHogHealth(eim);
-
+
eim.schedule("respawnStages", 10 * 1000);
}
@@ -70,19 +70,19 @@ function setup(level, lobbyid) {
eim.setProperty("level", level);
eim.setProperty("boss", "0");
eim.setProperty("whog_hp", "0");
-
+
return eim;
}
function playerEntry(eim, player) {
var mapObj = eim.getInstanceMap(entryMap);
-
+
mapObj.resetPQ(1);
mapObj.instanceMapForceRespawn();
respawnStages(eim);
-
+
player.changeMap(entryMap, 0);
- em.setProperty("noEntry","true");
+ em.setProperty("noEntry", "true");
const PacketCreator = Java.type('tools.PacketCreator');
player.sendPacket(PacketCreator.getClock(eventTime * 60));
@@ -95,10 +95,10 @@ function playerExit(eim, player) {
var api = player.getAbstractPlayerInteraction();
api.removeAll(4031507);
api.removeAll(4031508);
-
+
eim.unregisterPlayer(player);
eim.dispose();
- em.setProperty("noEntry","false");
+ em.setProperty("noEntry", "false");
}
function scheduledTimeout(eim) {
@@ -112,29 +112,31 @@ function playerDisconnected(eim, player) {
}
function changedMap(eim, chr, mapid) {
- if(mapid < minMapId || mapid > maxMapId) playerExit(eim, chr);
+ if (mapid < minMapId || mapid > maxMapId) {
+ playerExit(eim, chr);
+ }
}
function clearPQ(eim) {
eim.stopEventTimer();
eim.setEventCleared();
-
+
var player = eim.getPlayers().get(0);
eim.unregisterPlayer(player);
player.changeMap(exitMap);
-
+
eim.dispose();
- em.setProperty("noEntry","false");
+ em.setProperty("noEntry", "false");
}
function monsterKilled(mob, eim) {}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function friendlyKilled(mob, eim) {
- if(em.getProperty("noEntry") != "false") {
+ if (em.getProperty("noEntry") != "false") {
var player = eim.getPlayers().get(0);
playerExit(eim, player);
player.changeMap(exitMap);
diff --git a/scripts/event/3rdJob_pirate.js b/scripts/event/3rdJob_pirate.js
index 928ec11638..bdc0159344 100644
--- a/scripts/event/3rdJob_pirate.js
+++ b/scripts/event/3rdJob_pirate.js
@@ -20,7 +20,7 @@
/**
* @Author Ronan
* 3rd Job Event - Pirate
-**/
+ **/
var entryMap = 108010500;
var exitMap = 105070200;
@@ -37,14 +37,14 @@ function getMaxLobbies() {
}
function init() {
- em.setProperty("noEntry","false");
+ em.setProperty("noEntry", "false");
}
function playerEntry(eim, player) {
eim.getInstanceMap(maxMapId).resetPQ(1);
-
+
player.changeMap(entryMap, 0);
- em.setProperty("noEntry","true");
+ em.setProperty("noEntry", "true");
const PacketCreator = Java.type('tools.PacketCreator');
player.sendPacket(PacketCreator.getClock(eventTime * 60));
@@ -55,7 +55,7 @@ function setup(level, lobbyid) {
var eim = em.newInstance("3rdJob_pirate_" + lobbyid);
eim.setProperty("level", level);
eim.setProperty("boss", "0");
-
+
return eim;
}
@@ -64,7 +64,7 @@ function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
eim.unregisterPlayer(player);
eim.dispose();
- em.setProperty("noEntry","false");
+ em.setProperty("noEntry", "false");
}
function scheduledTimeout(eim) {
@@ -81,19 +81,21 @@ function clear(eim) {
var player = eim.getPlayers().get(0);
eim.unregisterPlayer(player);
player.changeMap(exitMap);
-
+
eim.dispose();
- em.setProperty("noEntry","false");
+ em.setProperty("noEntry", "false");
}
function changedMap(eim, chr, mapid) {
- if(mapid < minMapId || mapid > maxMapId) playerExit(eim, chr);
+ if (mapid < minMapId || mapid > maxMapId) {
+ playerExit(eim, chr);
+ }
}
function monsterKilled(mob, eim) {}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function allMonstersDead(eim) {}
diff --git a/scripts/event/3rdJob_thief.js b/scripts/event/3rdJob_thief.js
index 780f66d860..d67b6b533c 100644
--- a/scripts/event/3rdJob_thief.js
+++ b/scripts/event/3rdJob_thief.js
@@ -20,7 +20,7 @@
/**
* @Author Ronan
* 3rd Job Event - Thief
-**/
+ **/
var entryMap = 108010400;
var exitMap = 107000402;
@@ -37,22 +37,22 @@ function getMaxLobbies() {
}
function init() {
- em.setProperty("noEntry","false");
+ em.setProperty("noEntry", "false");
}
function setup(level, lobbyid) {
var eim = em.newInstance("3rdJob_thief_" + lobbyid);
eim.setProperty("level", level);
eim.setProperty("boss", "0");
-
+
return eim;
}
function playerEntry(eim, player) {
eim.getInstanceMap(maxMapId).resetPQ(1);
-
+
player.changeMap(entryMap, 0);
- em.setProperty("noEntry","true");
+ em.setProperty("noEntry", "true");
const PacketCreator = Java.type('tools.PacketCreator');
player.sendPacket(PacketCreator.getClock(eventTime * 60));
@@ -64,7 +64,7 @@ function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
eim.unregisterPlayer(player);
eim.dispose();
- em.setProperty("noEntry","false");
+ em.setProperty("noEntry", "false");
}
function scheduledTimeout(eim) {
@@ -81,19 +81,21 @@ function clear(eim) {
var player = eim.getPlayers().get(0);
eim.unregisterPlayer(player);
player.changeMap(exitMap);
-
+
eim.dispose();
- em.setProperty("noEntry","false");
+ em.setProperty("noEntry", "false");
}
function changedMap(eim, chr, mapid) {
- if(mapid < minMapId || mapid > maxMapId) playerExit(eim, chr);
+ if (mapid < minMapId || mapid > maxMapId) {
+ playerExit(eim, chr);
+ }
}
function monsterKilled(mob, eim) {}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function allMonstersDead(eim) {}
diff --git a/scripts/event/3rdJob_warrior.js b/scripts/event/3rdJob_warrior.js
index c4890fb012..531b462e92 100644
--- a/scripts/event/3rdJob_warrior.js
+++ b/scripts/event/3rdJob_warrior.js
@@ -20,7 +20,7 @@
/**
* @Author Ronan
* 3rd Job Event - Warrior
-**/
+ **/
var entryMap = 108010300;
var exitMap = 105070001;
@@ -37,22 +37,22 @@ function getMaxLobbies() {
}
function init() {
- em.setProperty("noEntry","false");
+ em.setProperty("noEntry", "false");
}
function setup(level, lobbyid) {
var eim = em.newInstance("3rdJob_warrior_" + lobbyid);
eim.setProperty("level", level);
eim.setProperty("boss", "0");
-
+
return eim;
}
function playerEntry(eim, player) {
eim.getInstanceMap(maxMapId).resetPQ(1);
-
+
player.changeMap(entryMap, 0);
- em.setProperty("noEntry","true");
+ em.setProperty("noEntry", "true");
const PacketCreator = Java.type('tools.PacketCreator');
player.sendPacket(PacketCreator.getClock(eventTime * 60));
@@ -64,7 +64,7 @@ function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
eim.unregisterPlayer(player);
eim.dispose();
- em.setProperty("noEntry","false");
+ em.setProperty("noEntry", "false");
}
function scheduledTimeout(eim) {
@@ -81,19 +81,21 @@ function clear(eim) {
var player = eim.getPlayers().get(0);
eim.unregisterPlayer(player);
player.changeMap(exitMap);
-
+
eim.dispose();
- em.setProperty("noEntry","false");
+ em.setProperty("noEntry", "false");
}
function changedMap(eim, chr, mapid) {
- if(mapid < minMapId || mapid > maxMapId) playerExit(eim, chr);
+ if (mapid < minMapId || mapid > maxMapId) {
+ playerExit(eim, chr);
+ }
}
function monsterKilled(mob, eim) {}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function allMonstersDead(eim) {}
diff --git a/scripts/event/4jaerial.js b/scripts/event/4jaerial.js
index a260999fa0..c019e4fdb0 100644
--- a/scripts/event/4jaerial.js
+++ b/scripts/event/4jaerial.js
@@ -20,7 +20,7 @@
/**
* @Author Ronan
* Event - Jonathan's Test Quest
-**/
+ **/
var entryMap = 912020000;
var exitMap = 120000102;
@@ -37,7 +37,7 @@ function getMaxLobbies() {
}
function init() {
- em.setProperty("noEntry","false");
+ em.setProperty("noEntry", "false");
}
function setup(level, lobbyid) {
@@ -68,7 +68,7 @@ function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
eim.unregisterPlayer(player);
eim.dispose();
- em.setProperty("noEntry","false");
+ em.setProperty("noEntry", "false");
}
function playerLeft(eim, player) {}
@@ -84,7 +84,9 @@ function playerDisconnected(eim, player) {
}
function changedMap(eim, chr, mapid) {
- if(mapid < minMapId || mapid > maxMapId) playerExit(eim, chr);
+ if (mapid < minMapId || mapid > maxMapId) {
+ playerExit(eim, chr);
+ }
}
function clearPQ(eim) {
diff --git a/scripts/event/4jship.js b/scripts/event/4jship.js
index b503d35058..b6da6d7855 100644
--- a/scripts/event/4jship.js
+++ b/scripts/event/4jship.js
@@ -20,7 +20,7 @@
/**
* @Author Ronan
* Event - Kyrin's Test Quest
-**/
+ **/
var entryMap = 912010000;
var exitMap = 120000101;
@@ -37,7 +37,7 @@ function getMaxLobbies() {
}
function init() {
- em.setProperty("noEntry","false");
+ em.setProperty("noEntry", "false");
}
function setup(level, lobbyid) {
@@ -82,7 +82,7 @@ function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
eim.unregisterPlayer(player);
eim.dispose();
- em.setProperty("noEntry","false");
+ em.setProperty("noEntry", "false");
}
function playerLeft(eim, player) {}
@@ -98,19 +98,21 @@ function playerDisconnected(eim, player) {
}
function changedMap(eim, chr, mapid) {
- if(mapid < minMapId || mapid > maxMapId) playerExit(eim, chr);
+ if (mapid < minMapId || mapid > maxMapId) {
+ playerExit(eim, chr);
+ }
}
function clearPQ(eim) {
eim.stopEventTimer();
eim.setEventCleared();
-
+
var player = eim.getPlayers().get(0);
eim.unregisterPlayer(player);
player.changeMap(exitMap);
-
+
eim.dispose();
- em.setProperty("noEntry","false");
+ em.setProperty("noEntry", "false");
}
function monsterKilled(mob, eim) {}
@@ -124,7 +126,7 @@ function monsterValue(eim, mobId) {
}
function friendlyKilled(mob, eim) {
- if(em.getProperty("noEntry") != "false") {
+ if (em.getProperty("noEntry") != "false") {
var player = eim.getPlayers().get(0);
playerExit(eim, player);
player.changeMap(exitMap);
diff --git a/scripts/event/4jsuper.js b/scripts/event/4jsuper.js
index e225908a01..9fcd6d56bb 100644
--- a/scripts/event/4jsuper.js
+++ b/scripts/event/4jsuper.js
@@ -20,7 +20,7 @@
/**
* @Author Ronan
* Event - Kyrin's Test Quest
-**/
+ **/
var entryMap = 912010100;
var exitMap = 120000101;
@@ -37,7 +37,7 @@ function getMaxLobbies() {
}
function init() {
- em.setProperty("noEntry","false");
+ em.setProperty("noEntry", "false");
}
function setup(level, lobbyid) {
@@ -82,7 +82,7 @@ function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
eim.unregisterPlayer(player);
eim.dispose();
- em.setProperty("noEntry","false");
+ em.setProperty("noEntry", "false");
}
function playerLeft(eim, player) {}
@@ -98,7 +98,9 @@ function playerDisconnected(eim, player) {
}
function changedMap(eim, chr, mapid) {
- if(mapid < minMapId || mapid > maxMapId) playerExit(eim, chr);
+ if (mapid < minMapId || mapid > maxMapId) {
+ playerExit(eim, chr);
+ }
}
function changedLeader(eim, leader) {}
@@ -106,13 +108,13 @@ function changedLeader(eim, leader) {}
function clearPQ(eim) {
eim.stopEventTimer();
eim.setEventCleared();
-
+
var player = eim.getPlayers().get(0);
eim.unregisterPlayer(player);
player.changeMap(exitMap);
-
+
eim.dispose();
- em.setProperty("noEntry","false");
+ em.setProperty("noEntry", "false");
}
function monsterKilled(mob, eim) {}
@@ -126,7 +128,7 @@ function monsterValue(eim, mobId) {
}
function friendlyKilled(mob, eim) {
- if(em.getProperty("noEntry") != "false") {
+ if (em.getProperty("noEntry") != "false") {
var player = eim.getPlayers().get(0);
playerExit(eim, player);
player.changeMap(exitMap);
diff --git a/scripts/event/AirPlane.js b/scripts/event/AirPlane.js
index 7ae92ce7e6..0d184d7279 100644
--- a/scripts/event/AirPlane.js
+++ b/scripts/event/AirPlane.js
@@ -8,13 +8,13 @@ var KC_docked;
//Time Setting is in millisecond
var closeTime = 4 * 60 * 1000; //The time to close the gate
var beginTime = 5 * 60 * 1000; //The time to begin the ride
-var rideTime = 1 * 60 * 1000; //The time that require move to destination
+var rideTime = 1 * 60 * 1000; //The time that require move to destination
function init() {
closeTime = em.getTransportationTime(closeTime);
beginTime = em.getTransportationTime(beginTime);
rideTime = em.getTransportationTime(rideTime);
-
+
KC_bfd = em.getChannelServer().getMapFactory().getMap(540010100);
CBD_bfd = em.getChannelServer().getMapFactory().getMap(540010001);
Plane_to_CBD = em.getChannelServer().getMapFactory().getMap(540010101);
@@ -32,11 +32,11 @@ function scheduleNew() {
}
function stopEntry() {
- em.setProperty("entry","false");
+ em.setProperty("entry", "false");
}
function takeoff() {
- em.setProperty("docked","false");
+ em.setProperty("docked", "false");
KC_bfd.warpEveryone(Plane_to_CBD.getId());
CBD_bfd.warpEveryone(Plane_to_KC.getId());
em.schedule("arrived", rideTime); //The time that require move to destination
@@ -45,7 +45,7 @@ function takeoff() {
function arrived() {
Plane_to_CBD.warpEveryone(CBD_docked.getId(), 0);
Plane_to_KC.warpEveryone(KC_docked.getId(), 7);
-
+
scheduleNew();
}
diff --git a/scripts/event/AmoriaPQ.js b/scripts/event/AmoriaPQ.js
index 5b6c7c3832..f5a2bafffe 100644
--- a/scripts/event/AmoriaPQ.js
+++ b/scripts/event/AmoriaPQ.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Amoria PQ
-*/
+ */
var isPq = true;
var onlyMarriedPlayers = true;
@@ -40,249 +40,264 @@ var eventTime = 75; // 75 minutes
const maxLobbies = 1;
function init() {
- setEventRequirements();
+ setEventRequirements();
}
function getMaxLobbies() {
- return maxLobbies;
+ return maxLobbies;
}
function setEventRequirements() {
- var reqStr = "";
-
- reqStr += "\r\n Number of players: ";
- if(maxPlayers - minPlayers >= 1) reqStr += minPlayers + " ~ " + maxPlayers;
- else reqStr += minPlayers;
-
- reqStr += "\r\n Level range: ";
- if(maxLevel - minLevel >= 1) reqStr += minLevel + " ~ " + maxLevel;
- else reqStr += minLevel;
-
- reqStr += "\r\n At least 1 of both genders";
- if(onlyMarriedPlayers) reqStr += "\r\n All married";
-
- reqStr += "\r\n Time limit: ";
- reqStr += eventTime + " minutes";
-
- em.setProperty("party", reqStr);
+ var reqStr = "";
+
+ reqStr += "\r\n Number of players: ";
+ if (maxPlayers - minPlayers >= 1) {
+ reqStr += minPlayers + " ~ " + maxPlayers;
+ } else {
+ reqStr += minPlayers;
+ }
+
+ reqStr += "\r\n Level range: ";
+ if (maxLevel - minLevel >= 1) {
+ reqStr += minLevel + " ~ " + maxLevel;
+ } else {
+ reqStr += minLevel;
+ }
+
+ reqStr += "\r\n At least 1 of both genders";
+ if (onlyMarriedPlayers) {
+ reqStr += "\r\n All married";
+ }
+
+ reqStr += "\r\n Time limit: ";
+ reqStr += eventTime + " minutes";
+
+ em.setProperty("party", reqStr);
}
function setEventExclusives(eim) {
- var itemSet = [4031594, 4031595, 4031596, 4031597];
- eim.setExclusiveItems(itemSet);
+ var itemSet = [4031594, 4031595, 4031596, 4031597];
+ eim.setExclusiveItems(itemSet);
}
function setEventRewards(eim) {
- var itemSet, itemQty, evLevel, expStages;
+ var itemSet, itemQty, evLevel, expStages;
- evLevel = 1; //Rewards at clear PQ
- itemSet = [];
- itemQty = [];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- expStages = [2000, 4000, 6000, 8000, 9000, 11000]; //bonus exp given on CLEAR stage signal
- eim.setEventClearStageExp(expStages);
+ evLevel = 1; //Rewards at clear PQ
+ itemSet = [];
+ itemQty = [];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ expStages = [2000, 4000, 6000, 8000, 9000, 11000]; //bonus exp given on CLEAR stage signal
+ eim.setEventClearStageExp(expStages);
}
function getEligibleParty(party) { //selects, from the given party, the team that is allowed to attempt this event
- var eligible = [];
- var hasLeader = false, hasNotMarried = false;
- var mask = 0;
-
- if(party.size() > 0) {
- var partyList = party.toArray();
+ var eligible = [];
+ var hasLeader = false, hasNotMarried = false;
+ var mask = 0;
- for(var i = 0; i < party.size(); i++) {
- var ch = partyList[i];
+ if (party.size() > 0) {
+ var partyList = party.toArray();
- if(ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
- if(ch.isLeader()) hasLeader = true;
- if(!ch.getPlayer().isMarried()) hasNotMarried = true;
- eligible.push(ch);
-
- mask |= (1 << ch.getPlayer().getGender());
- }
+ for (var i = 0; i < party.size(); i++) {
+ var ch = partyList[i];
+
+ if (ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
+ if (ch.isLeader()) {
+ hasLeader = true;
}
+ if (!ch.getPlayer().isMarried()) {
+ hasNotMarried = true;
+ }
+ eligible.push(ch);
+
+ mask |= (1 << ch.getPlayer().getGender());
+ }
}
-
- if(!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers && mask == 3)) eligible = [];
- if(onlyMarriedPlayers && hasNotMarried) eligible = [];
- return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
+ }
+
+ if (!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers && mask == 3)) {
+ eligible = [];
+ }
+ if (onlyMarriedPlayers && hasNotMarried) {
+ eligible = [];
+ }
+ return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
}
function setup(level, lobbyid) {
- var eim = em.newInstance("Amoria" + lobbyid);
- eim.setProperty("level", level);
-
- eim.setProperty("marriedGroup", 0);
- eim.setProperty("missCount", 0);
- eim.setProperty("statusStg1", -1);
- eim.setProperty("statusStg2", -1);
- eim.setProperty("statusStg3", -1);
- eim.setProperty("statusStg4", -1);
- eim.setProperty("statusStg5", -1);
- eim.setProperty("statusStg6", -1);
- eim.setProperty("statusStgBonus", 0);
-
- eim.getInstanceMap(670010200).resetPQ(level);
- eim.getInstanceMap(670010300).resetPQ(level);
- eim.getInstanceMap(670010301).resetPQ(level);
- eim.getInstanceMap(670010302).resetPQ(level);
- eim.getInstanceMap(670010400).resetPQ(level);
- eim.getInstanceMap(670010500).resetPQ(level);
- eim.getInstanceMap(670010600).resetPQ(level);
- eim.getInstanceMap(670010700).resetPQ(level);
- eim.getInstanceMap(670010750).resetPQ(level);
- eim.getInstanceMap(670010800).resetPQ(level);
-
- eim.getInstanceMap(670010200).toggleDrops();
- eim.getInstanceMap(670010300).toggleDrops();
- eim.getInstanceMap(670010301).toggleDrops();
- eim.getInstanceMap(670010302).toggleDrops();
-
- eim.getInstanceMap(670010200).instanceMapForceRespawn();
- eim.getInstanceMap(670010500).instanceMapForceRespawn();
-
- eim.getInstanceMap(670010750).shuffleReactors();
- eim.getInstanceMap(670010800).shuffleReactors();
-
- var mapObj = eim.getInstanceMap(670010700);
+ var eim = em.newInstance("Amoria" + lobbyid);
+ eim.setProperty("level", level);
- const LifeFactory = Java.type('server.life.LifeFactory');
- const Point = Java.type('java.awt.Point');
- var mobObj = LifeFactory.getMonster(9400536);
- mapObj.spawnMonsterOnGroundBelow(mobObj, new Point(942, 478));
-
- respawnStages(eim);
-
- eim.startEventTimer(eventTime * 60000);
- setEventRewards(eim);
- setEventExclusives(eim);
-
- return eim;
+ eim.setProperty("marriedGroup", 0);
+ eim.setProperty("missCount", 0);
+ eim.setProperty("statusStg1", -1);
+ eim.setProperty("statusStg2", -1);
+ eim.setProperty("statusStg3", -1);
+ eim.setProperty("statusStg4", -1);
+ eim.setProperty("statusStg5", -1);
+ eim.setProperty("statusStg6", -1);
+ eim.setProperty("statusStgBonus", 0);
+
+ eim.getInstanceMap(670010200).resetPQ(level);
+ eim.getInstanceMap(670010300).resetPQ(level);
+ eim.getInstanceMap(670010301).resetPQ(level);
+ eim.getInstanceMap(670010302).resetPQ(level);
+ eim.getInstanceMap(670010400).resetPQ(level);
+ eim.getInstanceMap(670010500).resetPQ(level);
+ eim.getInstanceMap(670010600).resetPQ(level);
+ eim.getInstanceMap(670010700).resetPQ(level);
+ eim.getInstanceMap(670010750).resetPQ(level);
+ eim.getInstanceMap(670010800).resetPQ(level);
+
+ eim.getInstanceMap(670010200).toggleDrops();
+ eim.getInstanceMap(670010300).toggleDrops();
+ eim.getInstanceMap(670010301).toggleDrops();
+ eim.getInstanceMap(670010302).toggleDrops();
+
+ eim.getInstanceMap(670010200).instanceMapForceRespawn();
+ eim.getInstanceMap(670010500).instanceMapForceRespawn();
+
+ eim.getInstanceMap(670010750).shuffleReactors();
+ eim.getInstanceMap(670010800).shuffleReactors();
+
+ var mapObj = eim.getInstanceMap(670010700);
+
+ const LifeFactory = Java.type('server.life.LifeFactory');
+ const Point = Java.type('java.awt.Point');
+ var mobObj = LifeFactory.getMonster(9400536);
+ mapObj.spawnMonsterOnGroundBelow(mobObj, new Point(942, 478));
+
+ respawnStages(eim);
+
+ eim.startEventTimer(eventTime * 60000);
+ setEventRewards(eim);
+ setEventExclusives(eim);
+
+ return eim;
}
function isTeamAllCouple(eim) { // everyone partner of someone on the team
- var eventPlayers = eim.getPlayers();
-
- for (var iterator = eventPlayers.iterator(); iterator.hasNext();) {
- var chr = iterator.next();
-
- var pid = chr.getPartnerId();
- if(pid <= 0 || eim.getPlayerById(pid) == null) {
- return false;
- }
+ var eventPlayers = eim.getPlayers();
+
+ for (var iterator = eventPlayers.iterator(); iterator.hasNext();) {
+ var chr = iterator.next();
+
+ var pid = chr.getPartnerId();
+ if (pid <= 0 || eim.getPlayerById(pid) == null) {
+ return false;
}
-
- return true;
+ }
+
+ return true;
}
function afterSetup(eim) {
- if(isTeamAllCouple(eim)) {
- eim.setIntProperty("marriedGroup", 1);
- }
+ if (isTeamAllCouple(eim)) {
+ eim.setIntProperty("marriedGroup", 1);
+ }
}
function respawnStages(eim) {}
function playerEntry(eim, player) {
- var map = eim.getMapInstance(entryMap);
- player.changeMap(map, map.getPortal(0));
+ var map = eim.getMapInstance(entryMap);
+ player.changeMap(map, map.getPortal(0));
}
function scheduledTimeout(eim) {
- if(eim.getIntProperty("statusStg6") == 1) {
- eim.warpEventTeam(exitMap);
- }
- else {
- end(eim);
- }
+ if (eim.getIntProperty("statusStg6") == 1) {
+ eim.warpEventTeam(exitMap);
+ } else {
+ end(eim);
+ }
}
function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
- eim.unregisterPlayer(player);
- player.changeMap(exitMap, 0);
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap, 0);
}
function playerLeft(eim, player) {
- if(!eim.isEventCleared()) {
- playerExit(eim, player);
- }
+ if (!eim.isEventCleared()) {
+ playerExit(eim, player);
+ }
}
function changedMap(eim, player, mapid) {
- if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (mapid < minMapId || mapid > maxMapId) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
}
+ }
}
function changedLeader(eim, leader) {
- var mapid = leader.getMapId();
- if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
- end(eim);
- }
+ var mapid = leader.getMapId();
+ if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
+ end(eim);
+ }
}
function playerDead(eim, player) {}
function playerRevive(eim, player) { // player presses ok on the death pop up.
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function playerDisconnected(eim, player) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function leftParty(eim, player) {
- if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
- end(eim);
- }
- else
- playerLeft(eim, player);
+ if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
+ end(eim);
+ } else {
+ playerLeft(eim, player);
+ }
}
function disbandParty(eim) {
- if (!eim.isEventCleared()) {
- end(eim);
- }
+ if (!eim.isEventCleared()) {
+ end(eim);
+ }
}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function end(eim) {
- var party = eim.getPlayers();
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ var party = eim.getPlayers();
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
}
function giveRandomEventReward(eim, player) {
- eim.giveEventReward(player);
+ eim.giveEventReward(player);
}
function clearPQ(eim) {
- eim.stopEventTimer();
- eim.setEventCleared();
+ eim.stopEventTimer();
+ eim.setEventCleared();
}
function monsterKilled(mob, eim) {}
diff --git a/scripts/event/Aran_2ndmount.js b/scripts/event/Aran_2ndmount.js
index 87843af48c..729725be99 100644
--- a/scripts/event/Aran_2ndmount.js
+++ b/scripts/event/Aran_2ndmount.js
@@ -20,7 +20,7 @@
/**
* @Author Ronan
* Event - Scadur's Mount Quest
-**/
+ **/
var entryMap = 921110000;
var exitMap = 211050000;
@@ -37,14 +37,14 @@ function getMaxLobbies() {
}
function init() {
- em.setProperty("noEntry","false");
+ em.setProperty("noEntry", "false");
}
function setup(level, lobbyid) {
var eim = em.newInstance("Aran_2ndmount_" + lobbyid);
eim.setProperty("level", level);
eim.setProperty("boss", "0");
-
+
return eim;
}
@@ -52,13 +52,13 @@ function respawnStages(eim) {}
function playerEntry(eim, player) {
var mapObj = eim.getInstanceMap(entryMap);
-
+
mapObj.resetPQ(1);
mapObj.instanceMapForceRespawn();
respawnStages(eim);
-
+
player.changeMap(entryMap, 2);
- em.setProperty("noEntry","true");
+ em.setProperty("noEntry", "true");
const PacketCreator = Java.type('tools.PacketCreator');
player.sendPacket(PacketCreator.getClock(eventTime * 60));
@@ -70,7 +70,7 @@ function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
eim.unregisterPlayer(player);
eim.dispose();
- em.setProperty("noEntry","false");
+ em.setProperty("noEntry", "false");
}
function scheduledTimeout(eim) {
@@ -84,29 +84,31 @@ function playerDisconnected(eim, player) {
}
function changedMap(eim, chr, mapid) {
- if(mapid < minMapId || mapid > maxMapId) playerExit(eim, chr);
+ if (mapid < minMapId || mapid > maxMapId) {
+ playerExit(eim, chr);
+ }
}
function clearPQ(eim) {
eim.stopEventTimer();
eim.setEventCleared();
-
+
var player = eim.getPlayers().get(0);
eim.unregisterPlayer(player);
player.changeMap(exitMap);
-
+
eim.dispose();
- em.setProperty("noEntry","false");
+ em.setProperty("noEntry", "false");
}
function monsterKilled(mob, eim) {}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function friendlyKilled(mob, eim) {
- if(em.getProperty("noEntry") != "false") {
+ if (em.getProperty("noEntry") != "false") {
var player = eim.getPlayers().get(0);
playerExit(eim, player);
player.changeMap(exitMap);
diff --git a/scripts/event/Aran_3rdmount.js b/scripts/event/Aran_3rdmount.js
index 0e9f37aa7f..09686602d6 100644
--- a/scripts/event/Aran_3rdmount.js
+++ b/scripts/event/Aran_3rdmount.js
@@ -20,7 +20,7 @@
/**
* @Author Ronan
* Event - Wolves' Mount Quest
-**/
+ **/
var entryMap = 914030000;
var exitMap = 140010210;
@@ -37,14 +37,14 @@ function getMaxLobbies() {
}
function init() {
- em.setProperty("noEntry","false");
+ em.setProperty("noEntry", "false");
}
function setup(level, lobbyid) {
var eim = em.newInstance("Aran_3rdmount_" + lobbyid);
eim.setProperty("level", level);
eim.setProperty("boss", "0");
-
+
return eim;
}
@@ -52,14 +52,14 @@ function respawnStages(eim) {}
function playerEntry(eim, player) {
var mapObj = eim.getInstanceMap(entryMap);
-
+
mapObj.resetPQ(1);
mapObj.instanceMapForceRespawn();
mapObj.closeMapSpawnPoints();
respawnStages(eim);
-
+
player.changeMap(entryMap, 1);
- em.setProperty("noEntry","true");
+ em.setProperty("noEntry", "true");
const PacketCreator = Java.type('tools.PacketCreator');
player.sendPacket(PacketCreator.getClock(eventTime * 60));
@@ -71,7 +71,7 @@ function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
eim.unregisterPlayer(player);
eim.dispose();
- em.setProperty("noEntry","false");
+ em.setProperty("noEntry", "false");
}
function scheduledTimeout(eim) {
@@ -85,33 +85,35 @@ function playerDisconnected(eim, player) {
}
function changedMap(eim, chr, mapid) {
- if(mapid < minMapId || mapid > maxMapId) playerExit(eim, chr);
+ if (mapid < minMapId || mapid > maxMapId) {
+ playerExit(eim, chr);
+ }
}
function clearPQ(eim) {
eim.stopEventTimer();
eim.setEventCleared();
-
+
var player = eim.getPlayers().get(0);
eim.unregisterPlayer(player);
player.changeMap(exitMap);
-
+
eim.dispose();
- em.setProperty("noEntry","false");
+ em.setProperty("noEntry", "false");
}
function monsterKilled(mob, eim) {
- if(eim.getInstanceMap(entryMap).countMonsters() == 0) {
+ if (eim.getInstanceMap(entryMap).countMonsters() == 0) {
eim.showClearEffect();
}
}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function friendlyKilled(mob, eim) {
- if(em.getProperty("noEntry") != "false") {
+ if (em.getProperty("noEntry") != "false") {
var player = eim.getPlayers().get(0);
playerExit(eim, player);
player.changeMap(exitMap);
diff --git a/scripts/event/AreaBossBamboo.js b/scripts/event/AreaBossBamboo.js
index 7d1543ab18..d67495bbb5 100644
--- a/scripts/event/AreaBossBamboo.js
+++ b/scripts/event/AreaBossBamboo.js
@@ -20,12 +20,12 @@
along with this program. If not, see .
*/
/**
--- Odin JavaScript --------------------------------------------------------------------------------
- Bamboo Warrior Spawner
--- Edited by --------------------------------------------------------------------------------------
- Ronan - based on xQuasar's King Clang spawner
+ -- Odin JavaScript --------------------------------------------------------------------------------
+ Bamboo Warrior Spawner
+ -- Edited by --------------------------------------------------------------------------------------
+ Ronan - based on xQuasar's King Clang spawner
-**/
+ **/
function init() {
scheduleNew();
}
@@ -35,25 +35,26 @@ function scheduleNew() {
}
function cancelSchedule() {
- if (setupTask != null)
+ if (setupTask != null) {
setupTask.cancel(true);
+ }
}
function start() {
const LifeFactory = Java.type('server.life.LifeFactory');
var mapObj = em.getChannelServer().getMapFactory().getMap(800020120); // original mapid was 251010101
var mobObj = LifeFactory.getMonster(6090002);
-
- if(mapObj.getMonsterById(6090002) != null) {
- em.schedule("start", 3 * 60 *60 * 1000);
- return;
- }
- const Point = Java.type('java.awt.Point');
- const PacketCreator = Java.type('tools.PacketCreator');
+ if (mapObj.getMonsterById(6090002) != null) {
+ em.schedule("start", 3 * 60 * 60 * 1000);
+ return;
+ }
+
+ const Point = Java.type('java.awt.Point');
+ const PacketCreator = Java.type('tools.PacketCreator');
mapObj.spawnMonsterOnGroundBelow(mobObj, new Point(560, 50));
mapObj.broadcastMessage(PacketCreator.serverNotice(6, "From amongst the ruins shrouded by the mists, Bamboo Warrior appears."));
- em.schedule("start", 3 * 60 *60 * 1000);
+ em.schedule("start", 3 * 60 * 60 * 1000);
}
// ---------- FILLER FUNCTIONS ----------
diff --git a/scripts/event/AreaBossCentipede.js b/scripts/event/AreaBossCentipede.js
index ea4a48ab8f..23310620e6 100644
--- a/scripts/event/AreaBossCentipede.js
+++ b/scripts/event/AreaBossCentipede.js
@@ -20,12 +20,12 @@
along with this program. If not, see .
*/
/**
--- Odin JavaScript --------------------------------------------------------------------------------
- Centipede Spawner
--- Edited by --------------------------------------------------------------------------------------
- Ronan - based on xQuasar's King Clang spawner
+ -- Odin JavaScript --------------------------------------------------------------------------------
+ Centipede Spawner
+ -- Edited by --------------------------------------------------------------------------------------
+ Ronan - based on xQuasar's King Clang spawner
-**/
+ **/
function init() {
scheduleNew();
}
@@ -35,17 +35,18 @@ function scheduleNew() {
}
function cancelSchedule() {
- if (setupTask != null)
+ if (setupTask != null) {
setupTask.cancel(true);
+ }
}
function start() {
var herbGarden = em.getChannelServer().getMapFactory().getMap(251010102);
-
- if(herbGarden.getMonsterById(5220004) != null) {
- em.schedule("start", 3 * 60 *60 * 1000);
- return;
- }
+
+ if (herbGarden.getMonsterById(5220004) != null) {
+ em.schedule("start", 3 * 60 * 60 * 1000);
+ return;
+ }
const LifeFactory = Java.type('server.life.LifeFactory');
const Point = Java.type('java.awt.Point');
@@ -54,7 +55,7 @@ function start() {
var gcent = LifeFactory.getMonster(5220004);
herbGarden.spawnMonsterOnGroundBelow(gcent, new Point(560, 50));
herbGarden.broadcastMessage(PacketCreator.serverNotice(6, "From the mists surrounding the herb garden, the gargantuous Giant Centipede appears."));
- em.schedule("start", 3 * 60 *60 * 1000);
+ em.schedule("start", 3 * 60 * 60 * 1000);
}
// ---------- FILLER FUNCTIONS ----------
diff --git a/scripts/event/AreaBossDeo.js b/scripts/event/AreaBossDeo.js
index 56969924b7..6a3a3edfca 100644
--- a/scripts/event/AreaBossDeo.js
+++ b/scripts/event/AreaBossDeo.js
@@ -20,12 +20,12 @@
along with this program. If not, see .
*/
/**
--- Odin JavaScript --------------------------------------------------------------------------------
- Deo Spawner
--- Edited by --------------------------------------------------------------------------------------
- ThreeStep - based on xQuasar's King Clang spawner
+ -- Odin JavaScript --------------------------------------------------------------------------------
+ Deo Spawner
+ -- Edited by --------------------------------------------------------------------------------------
+ ThreeStep - based on xQuasar's King Clang spawner
-**/
+ **/
function init() {
scheduleNew();
}
@@ -35,17 +35,18 @@ function scheduleNew() {
}
function cancelSchedule() {
- if (setupTask != null)
+ if (setupTask != null) {
setupTask.cancel(true);
+ }
}
function start() {
var royalCatthusDesert = em.getChannelServer().getMapFactory().getMap(260010201);
-
- if(royalCatthusDesert.getMonsterById(3220001) != null) {
- em.schedule("start", 3 * 60 *60 * 1000);
- return;
- }
+
+ if (royalCatthusDesert.getMonsterById(3220001) != null) {
+ em.schedule("start", 3 * 60 * 60 * 1000);
+ return;
+ }
const LifeFactory = Java.type('server.life.LifeFactory');
const Point = Java.type('java.awt.Point');
@@ -54,7 +55,7 @@ function start() {
var deo = LifeFactory.getMonster(3220001);
royalCatthusDesert.spawnMonsterOnGroundBelow(deo, new Point(645, 275));
royalCatthusDesert.broadcastMessage(PacketCreator.serverNotice(6, "Deo slowly appeared out of the sand dust."));
- em.schedule("start", 3 * 60 *60 * 1000);
+ em.schedule("start", 3 * 60 * 60 * 1000);
}
// ---------- FILLER FUNCTIONS ----------
diff --git a/scripts/event/AreaBossDoor1.js b/scripts/event/AreaBossDoor1.js
index d7f624014c..22eec6f764 100644
--- a/scripts/event/AreaBossDoor1.js
+++ b/scripts/event/AreaBossDoor1.js
@@ -20,9 +20,9 @@
along with this program. If not, see .
*/
/**
--- Odin JavaScript --------------------------------------------------------------------------------
- Door boss Spawner (based on xQuasar's King Clang spawner)
-**/
+ -- Odin JavaScript --------------------------------------------------------------------------------
+ Door boss Spawner (based on xQuasar's King Clang spawner)
+ **/
function init() {
scheduleNew();
@@ -33,15 +33,16 @@ function scheduleNew() {
}
function cancelSchedule() {
- if (setupTask != null)
+ if (setupTask != null) {
setupTask.cancel(true);
+ }
}
function start() {
var bossMobid = 9400610;
var bossMapid = 677000003;
var bossMsg = "Amdusias has appeared!";
-
+
var map = em.getChannelServer().getMapFactory().getMap(bossMapid);
if (map.getMonsterById(bossMobid) != null) {
em.schedule("start", 3 * 60 * 60 * 1000);
@@ -56,7 +57,7 @@ function start() {
var bossPos = new Point(467, 0);
map.spawnMonsterOnGroundBelow(boss, bossPos);
map.broadcastMessage(PacketCreator.serverNotice(6, bossMsg));
-
+
em.schedule("start", 3 * 60 * 60 * 1000);
}
diff --git a/scripts/event/AreaBossDoor2.js b/scripts/event/AreaBossDoor2.js
index 4415f8c35f..19dc4279f3 100644
--- a/scripts/event/AreaBossDoor2.js
+++ b/scripts/event/AreaBossDoor2.js
@@ -20,9 +20,9 @@
along with this program. If not, see .
*/
/**
--- Odin JavaScript --------------------------------------------------------------------------------
- Door boss Spawner (based on xQuasar's King Clang spawner)
-**/
+ -- Odin JavaScript --------------------------------------------------------------------------------
+ Door boss Spawner (based on xQuasar's King Clang spawner)
+ **/
function init() {
scheduleNew();
@@ -33,15 +33,16 @@ function scheduleNew() {
}
function cancelSchedule() {
- if (setupTask != null)
+ if (setupTask != null) {
setupTask.cancel(true);
+ }
}
function start() {
var bossMobid = 9400609;
var bossMapid = 677000005;
var bossMsg = "Andras has appeared!";
-
+
var map = em.getChannelServer().getMapFactory().getMap(bossMapid);
if (map.getMonsterById(bossMobid) != null) {
em.schedule("start", 3 * 60 * 60 * 1000);
@@ -56,7 +57,7 @@ function start() {
var bossPos = new Point(201, 80);
map.spawnMonsterOnGroundBelow(boss, bossPos);
map.broadcastMessage(PacketCreator.serverNotice(6, bossMsg));
-
+
em.schedule("start", 3 * 60 * 60 * 1000);
}
diff --git a/scripts/event/AreaBossDoor3.js b/scripts/event/AreaBossDoor3.js
index 9efa3f4f00..e075d7376f 100644
--- a/scripts/event/AreaBossDoor3.js
+++ b/scripts/event/AreaBossDoor3.js
@@ -20,9 +20,9 @@
along with this program. If not, see .
*/
/**
--- Odin JavaScript --------------------------------------------------------------------------------
- Door boss Spawner (based on xQuasar's King Clang spawner)
-**/
+ -- Odin JavaScript --------------------------------------------------------------------------------
+ Door boss Spawner (based on xQuasar's King Clang spawner)
+ **/
function init() {
scheduleNew();
@@ -33,15 +33,16 @@ function scheduleNew() {
}
function cancelSchedule() {
- if (setupTask != null)
+ if (setupTask != null) {
setupTask.cancel(true);
+ }
}
function start() {
var bossMobid = 9400613;
var bossMapid = 677000009;
var bossMsg = "Valefor has appeared!";
-
+
var map = em.getChannelServer().getMapFactory().getMap(bossMapid);
if (map.getMonsterById(bossMobid) != null) {
em.schedule("start", 3 * 60 * 60 * 1000);
@@ -56,7 +57,7 @@ function start() {
var bossPos = new Point(251, -841);
map.spawnMonsterOnGroundBelow(boss, bossPos);
map.broadcastMessage(PacketCreator.serverNotice(6, bossMsg));
-
+
em.schedule("start", 3 * 60 * 60 * 1000);
}
diff --git a/scripts/event/AreaBossDoor4.js b/scripts/event/AreaBossDoor4.js
index f1b041965e..003f5b057e 100644
--- a/scripts/event/AreaBossDoor4.js
+++ b/scripts/event/AreaBossDoor4.js
@@ -20,9 +20,9 @@
along with this program. If not, see .
*/
/**
--- Odin JavaScript --------------------------------------------------------------------------------
- Door boss Spawner (based on xQuasar's King Clang spawner)
-**/
+ -- Odin JavaScript --------------------------------------------------------------------------------
+ Door boss Spawner (based on xQuasar's King Clang spawner)
+ **/
function init() {
scheduleNew();
@@ -33,15 +33,16 @@ function scheduleNew() {
}
function cancelSchedule() {
- if (setupTask != null)
+ if (setupTask != null) {
setupTask.cancel(true);
+ }
}
function start() {
var bossMobid = 9400633;
var bossMapid = 677000012;
var bossMsg = "Astaroth has appeared!";
-
+
var map = em.getChannelServer().getMapFactory().getMap(bossMapid);
if (map.getMonsterById(bossMobid) != null) {
em.schedule("start", 3 * 60 * 60 * 1000);
@@ -56,7 +57,7 @@ function start() {
var bossPos = new Point(842, 0);
map.spawnMonsterOnGroundBelow(boss, bossPos);
map.broadcastMessage(PacketCreator.serverNotice(6, bossMsg));
-
+
em.schedule("start", 3 * 60 * 60 * 1000);
}
diff --git a/scripts/event/AreaBossDoor5.js b/scripts/event/AreaBossDoor5.js
index eef81a4c82..f5abdc45e1 100644
--- a/scripts/event/AreaBossDoor5.js
+++ b/scripts/event/AreaBossDoor5.js
@@ -20,9 +20,9 @@
along with this program. If not, see .
*/
/**
--- Odin JavaScript --------------------------------------------------------------------------------
- Door boss Spawner (based on xQuasar's King Clang spawner)
-**/
+ -- Odin JavaScript --------------------------------------------------------------------------------
+ Door boss Spawner (based on xQuasar's King Clang spawner)
+ **/
function init() {
scheduleNew();
@@ -33,15 +33,16 @@ function scheduleNew() {
}
function cancelSchedule() {
- if (setupTask != null)
+ if (setupTask != null) {
setupTask.cancel(true);
+ }
}
function start() {
var bossMobid = 9400612;
var bossMapid = 677000001;
var bossMsg = "Marbas has appeared!";
-
+
var map = em.getChannelServer().getMapFactory().getMap(bossMapid);
if (map.getMonsterById(bossMobid) != null) {
em.schedule("start", 3 * 60 * 60 * 1000);
@@ -56,7 +57,7 @@ function start() {
var bossPos = new Point(461, 61);
map.spawnMonsterOnGroundBelow(boss, bossPos);
map.broadcastMessage(PacketCreator.serverNotice(6, bossMsg));
-
+
em.schedule("start", 3 * 60 * 60 * 1000);
}
diff --git a/scripts/event/AreaBossDoor6.js b/scripts/event/AreaBossDoor6.js
index c65388ab2e..1112a0963d 100644
--- a/scripts/event/AreaBossDoor6.js
+++ b/scripts/event/AreaBossDoor6.js
@@ -20,9 +20,9 @@
along with this program. If not, see .
*/
/**
--- Odin JavaScript --------------------------------------------------------------------------------
- Door boss Spawner (based on xQuasar's King Clang spawner)
-**/
+ -- Odin JavaScript --------------------------------------------------------------------------------
+ Door boss Spawner (based on xQuasar's King Clang spawner)
+ **/
function init() {
scheduleNew();
@@ -33,15 +33,16 @@ function scheduleNew() {
}
function cancelSchedule() {
- if (setupTask != null)
+ if (setupTask != null) {
setupTask.cancel(true);
+ }
}
function start() {
var bossMobid = 9400611;
var bossMapid = 677000007;
var bossMsg = "Crocell has appeared!";
-
+
var map = em.getChannelServer().getMapFactory().getMap(bossMapid);
if (map.getMonsterById(bossMobid) != null) {
em.schedule("start", 3 * 60 * 60 * 1000);
@@ -56,7 +57,7 @@ function start() {
var bossPos = new Point(171, 50);
map.spawnMonsterOnGroundBelow(boss, bossPos);
map.broadcastMessage(PacketCreator.serverNotice(6, bossMsg));
-
+
em.schedule("start", 3 * 60 * 60 * 1000);
}
diff --git a/scripts/event/AreaBossDyle.js b/scripts/event/AreaBossDyle.js
index dd772c3e0f..41d3bbc2d4 100644
--- a/scripts/event/AreaBossDyle.js
+++ b/scripts/event/AreaBossDyle.js
@@ -20,12 +20,12 @@
along with this program. If not, see .
*/
/**
--- Odin JavaScript --------------------------------------------------------------------------------
- Dyle Spawner
--- Edited by --------------------------------------------------------------------------------------
- ThreeStep - based on xQuasar's King Clang spawner
+ -- Odin JavaScript --------------------------------------------------------------------------------
+ Dyle Spawner
+ -- Edited by --------------------------------------------------------------------------------------
+ ThreeStep - based on xQuasar's King Clang spawner
-**/
+ **/
function init() {
scheduleNew();
@@ -36,24 +36,25 @@ function scheduleNew() {
}
function cancelSchedule() {
- if (setupTask != null)
+ if (setupTask != null) {
setupTask.cancel(true);
+ }
}
function start() {
var dangeroudCroko1 = em.getChannelServer().getMapFactory().getMap(107000300);
- if(dangeroudCroko1.getMonsterById(6220000) != null) {
- setupTask = em.schedule("start", 3 * 60 * 60 * 1000);
- return;
- }
+ if (dangeroudCroko1.getMonsterById(6220000) != null) {
+ setupTask = em.schedule("start", 3 * 60 * 60 * 1000);
+ return;
+ }
- const LifeFactory = Java.type('server.life.LifeFactory');
- const PacketCreator = Java.type('tools.PacketCreator');
- const Point = Java.type('java.awt.Point');
- const spawnpoint = new Point(90, 119);
+ const LifeFactory = Java.type('server.life.LifeFactory');
+ const PacketCreator = Java.type('tools.PacketCreator');
+ const Point = Java.type('java.awt.Point');
+ const spawnpoint = new Point(90, 119);
dangeroudCroko1.spawnMonsterOnGroundBelow(LifeFactory.getMonster(6220000), spawnpoint);
dangeroudCroko1.broadcastMessage(PacketCreator.serverNotice(6, "The huge crocodile Dyle has come out from the swamp."));
- setupTask = em.schedule("start", 3 * 60 * 60 * 1000);
+ setupTask = em.schedule("start", 3 * 60 * 60 * 1000);
}
// ---------- FILLER FUNCTIONS ----------
diff --git a/scripts/event/AreaBossEliza1.js b/scripts/event/AreaBossEliza1.js
index b26fc09a5e..8d448a9c3f 100644
--- a/scripts/event/AreaBossEliza1.js
+++ b/scripts/event/AreaBossEliza1.js
@@ -20,12 +20,12 @@
along with this program. If not, see .
*/
/**
--- Odin JavaScript --------------------------------------------------------------------------------
- Eliza1 Spawner
--- Edited by --------------------------------------------------------------------------------------
- ThreeStep - based on xQuasar's King Clang spawner
+ -- Odin JavaScript --------------------------------------------------------------------------------
+ Eliza1 Spawner
+ -- Edited by --------------------------------------------------------------------------------------
+ ThreeStep - based on xQuasar's King Clang spawner
-**/
+ **/
var setupTask;
@@ -38,8 +38,9 @@ function scheduleNew() {
}
function cancelSchedule() {
- if (setupTask != null)
+ if (setupTask != null) {
setupTask.cancel(true);
+ }
}
function start() {
@@ -47,17 +48,17 @@ function start() {
var eliza = LifeFactory.getMonster(8220000);
var stairwayToTheSky2 = em.getChannelServer().getMapFactory().getMap(200010300);
- if(stairwayToTheSky2.getMonsterById(8220000) != null) {
- em.schedule("start", 3 * 60 *60 * 1000);
- return;
- }
+ if (stairwayToTheSky2.getMonsterById(8220000) != null) {
+ em.schedule("start", 3 * 60 * 60 * 1000);
+ return;
+ }
const PacketCreator = Java.type('tools.PacketCreator');
const Point = Java.type('java.awt.Point');
- const spawnpoint = new Point(208, 83);
+ const spawnpoint = new Point(208, 83);
stairwayToTheSky2.spawnMonsterOnGroundBelow(eliza, spawnpoint);
stairwayToTheSky2.broadcastMessage(PacketCreator.serverNotice(6, "Eliza has appeared with a black whirlwind."));
- em.schedule("start", 3 * 60 *60 * 1000);
+ em.schedule("start", 3 * 60 * 60 * 1000);
}
// ---------- FILLER FUNCTIONS ----------
diff --git a/scripts/event/AreaBossFaust1.js b/scripts/event/AreaBossFaust1.js
index fb06ac593e..1bc6373043 100644
--- a/scripts/event/AreaBossFaust1.js
+++ b/scripts/event/AreaBossFaust1.js
@@ -20,12 +20,12 @@
along with this program. If not, see .
*/
/**
--- Odin JavaScript --------------------------------------------------------------------------------
- Faust1 Spawner
--- Edited by --------------------------------------------------------------------------------------
- ThreeStep - based on xQuasar's King Clang spawner
+ -- Odin JavaScript --------------------------------------------------------------------------------
+ Faust1 Spawner
+ -- Edited by --------------------------------------------------------------------------------------
+ ThreeStep - based on xQuasar's King Clang spawner
-**/
+ **/
function init() {
scheduleNew();
@@ -36,16 +36,17 @@ function scheduleNew() {
}
function cancelSchedule() {
- if (setupTask != null)
+ if (setupTask != null) {
setupTask.cancel(true);
+ }
}
function start() {
var theForestOfEvil1 = em.getChannelServer().getMapFactory().getMap(100040105);
- if(theForestOfEvil1.getMonsterById(5220002) != null) {
- em.schedule("start", 3 * 60 *60 * 1000);
- return;
- }
+ if (theForestOfEvil1.getMonsterById(5220002) != null) {
+ em.schedule("start", 3 * 60 * 60 * 1000);
+ return;
+ }
const LifeFactory = Java.type('server.life.LifeFactory');
const PacketCreator = Java.type('tools.PacketCreator');
@@ -55,7 +56,7 @@ function start() {
const spawnpoint = new Point(456, 278);
theForestOfEvil1.spawnMonsterOnGroundBelow(faust1, spawnpoint);
theForestOfEvil1.broadcastMessage(PacketCreator.serverNotice(6, "Faust appeared amidst the blue fog."));
- em.schedule("start", 3 * 60 *60 * 1000);
+ em.schedule("start", 3 * 60 * 60 * 1000);
}
// ---------- FILLER FUNCTIONS ----------
diff --git a/scripts/event/AreaBossFaust2.js b/scripts/event/AreaBossFaust2.js
index b2da4f3743..f3cd813bae 100644
--- a/scripts/event/AreaBossFaust2.js
+++ b/scripts/event/AreaBossFaust2.js
@@ -20,12 +20,12 @@
along with this program. If not, see .
*/
/**
--- Odin JavaScript --------------------------------------------------------------------------------
- Faust2 Spawner
--- Edited by --------------------------------------------------------------------------------------
- ThreeStep - based on xQuasar's King Clang spawner
+ -- Odin JavaScript --------------------------------------------------------------------------------
+ Faust2 Spawner
+ -- Edited by --------------------------------------------------------------------------------------
+ ThreeStep - based on xQuasar's King Clang spawner
-**/
+ **/
function init() {
scheduleNew();
@@ -36,27 +36,28 @@ function scheduleNew() {
}
function cancelSchedule() {
- if (setupTask != null)
+ if (setupTask != null) {
setupTask.cancel(true);
+ }
}
function start() {
const LifeFactory = Java.type('server.life.LifeFactory');
var theForestOfEvil2 = em.getChannelServer().getMapFactory().getMap(100040106);
var faust2 = LifeFactory.getMonster(5220002);
-
- if(theForestOfEvil2.getMonsterById(5220002) != null) {
- em.schedule("start", 3 * 60 *60 * 1000);
- return;
- }
- const Point = Java.type('java.awt.Point');
- const spawnpoint = new Point(474, 278);
+ if (theForestOfEvil2.getMonsterById(5220002) != null) {
+ em.schedule("start", 3 * 60 * 60 * 1000);
+ return;
+ }
+
+ const Point = Java.type('java.awt.Point');
+ const spawnpoint = new Point(474, 278);
theForestOfEvil2.spawnMonsterOnGroundBelow(faust2, spawnpoint);
const PacketCreator = Java.type('tools.PacketCreator');
theForestOfEvil2.broadcastMessage(PacketCreator.serverNotice(6, "Faust appeared amidst the blue fog."));
- em.schedule("start", 3 * 60 *60 * 1000);
+ em.schedule("start", 3 * 60 * 60 * 1000);
}
// ---------- FILLER FUNCTIONS ----------
diff --git a/scripts/event/AreaBossKimera.js b/scripts/event/AreaBossKimera.js
index 83539eabc3..aac0c38887 100644
--- a/scripts/event/AreaBossKimera.js
+++ b/scripts/event/AreaBossKimera.js
@@ -20,12 +20,12 @@
along with this program. If not, see .
*/
/**
--- Odin JavaScript --------------------------------------------------------------------------------
- Chimera/Kimera Spawner
--- Edited by --------------------------------------------------------------------------------------
- ThreeStep - based on xQuasar's King Clang spawner
+ -- Odin JavaScript --------------------------------------------------------------------------------
+ Chimera/Kimera Spawner
+ -- Edited by --------------------------------------------------------------------------------------
+ ThreeStep - based on xQuasar's King Clang spawner
-**/
+ **/
function init() {
scheduleNew();
@@ -36,30 +36,31 @@ function scheduleNew() {
}
function cancelSchedule() {
- if (setupTask != null)
+ if (setupTask != null) {
setupTask.cancel(true);
+ }
}
function start() {
const LifeFactory = Java.type('server.life.LifeFactory');
var labSecretBasementPath = em.getChannelServer().getMapFactory().getMap(261030000);
var chimera = LifeFactory.getMonster(8220002);
-
- if(labSecretBasementPath.getMonsterById(8220002) != null) {
- em.schedule("start", 3 * 60 *60 * 1000);
- return;
- }
-
+
+ if (labSecretBasementPath.getMonsterById(8220002) != null) {
+ em.schedule("start", 3 * 60 * 60 * 1000);
+ return;
+ }
+
var posX;
var posY = 180;
- posX = (Math.floor(Math.random() * 900) - 900);
+ posX = (Math.floor(Math.random() * 900) - 900);
const Point = Java.type('java.awt.Point');
const spawnpoint = new Point(posX, posY);
labSecretBasementPath.spawnMonsterOnGroundBelow(chimera, spawnpoint);
const PacketCreator = Java.type('tools.PacketCreator');
labSecretBasementPath.broadcastMessage(PacketCreator.serverNotice(6, "Kimera has appeared out of the darkness of the underground with a glitter in her eyes."));
- em.schedule("start", 3 * 60 *60 * 1000);
+ em.schedule("start", 3 * 60 * 60 * 1000);
}
// ---------- FILLER FUNCTIONS ----------
diff --git a/scripts/event/AreaBossKingClang.js b/scripts/event/AreaBossKingClang.js
index 91a3737c00..7a2ebbdc8d 100644
--- a/scripts/event/AreaBossKingClang.js
+++ b/scripts/event/AreaBossKingClang.js
@@ -20,17 +20,17 @@
along with this program. If not, see .
*/
/**
--- Odin JavaScript --------------------------------------------------------------------------------
- King Clang Spawner
--- Edited by --------------------------------------------------------------------------------------
- ThreeStep - based on xQuasar's King Clang spawner
+ -- Odin JavaScript --------------------------------------------------------------------------------
+ King Clang Spawner
+ -- Edited by --------------------------------------------------------------------------------------
+ ThreeStep - based on xQuasar's King Clang spawner
-**/
+ **/
var hotSand;
function init() {
- hotSand = em.getChannelServer().getMapFactory().getMap(110040000);
+ hotSand = em.getChannelServer().getMapFactory().getMap(110040000);
scheduleNew();
}
@@ -39,28 +39,29 @@ function scheduleNew() {
}
function cancelSchedule() {
- if (setupTask != null)
+ if (setupTask != null) {
setupTask.cancel(true);
+ }
}
function start() {
- if(hotSand.getMonsterById(5220001) != null) {
- em.schedule("start", 3 * 60 *60 * 1000);
- return;
- }
+ if (hotSand.getMonsterById(5220001) != null) {
+ em.schedule("start", 3 * 60 * 60 * 1000);
+ return;
+ }
const LifeFactory = Java.type('server.life.LifeFactory');
var kingClang = LifeFactory.getMonster(5220001);
var posX;
var posY = 140;
- posX = Math.floor((Math.random() * 2400) - 1600);
+ posX = Math.floor((Math.random() * 2400) - 1600);
const Point = Java.type('java.awt.Point');
const spawnpoint = new Point(posX, posY);
hotSand.spawnMonsterOnGroundBelow(kingClang, spawnpoint);
const PacketCreator = Java.type('tools.PacketCreator');
hotSand.broadcastMessage(PacketCreator.serverNotice(6, "A strange turban shell has appeared on the beach."));
- em.schedule("start", 3 * 60 * 60 * 1000);
+ em.schedule("start", 3 * 60 * 60 * 1000);
}
// ---------- FILLER FUNCTIONS ----------
diff --git a/scripts/event/AreaBossKingSageCat.js b/scripts/event/AreaBossKingSageCat.js
index 1950f8f4b7..86490a04b9 100644
--- a/scripts/event/AreaBossKingSageCat.js
+++ b/scripts/event/AreaBossKingSageCat.js
@@ -20,12 +20,12 @@
along with this program. If not, see .
*/
/**
--- Odin JavaScript --------------------------------------------------------------------------------
- King Sage Cat Spawner
--- Edited by --------------------------------------------------------------------------------------
- ThreeStep - based on xQuasar's King Clang spawner
+ -- Odin JavaScript --------------------------------------------------------------------------------
+ King Sage Cat Spawner
+ -- Edited by --------------------------------------------------------------------------------------
+ ThreeStep - based on xQuasar's King Clang spawner
-**/
+ **/
function init() {
scheduleNew();
@@ -36,29 +36,30 @@ function scheduleNew() {
}
function cancelSchedule() {
- if (setupTask != null)
+ if (setupTask != null) {
setupTask.cancel(true);
+ }
}
function start() {
var goblinForest2 = em.getChannelServer().getMapFactory().getMap(250010504);
const LifeFactory = Java.type('server.life.LifeFactory');
var kingSageCat = LifeFactory.getMonster(7220002);
-
- if(goblinForest2.getMonsterById(7220002) != null) {
- em.schedule("start", 3 * 60 *60 * 1000);
- return;
- }
+
+ if (goblinForest2.getMonsterById(7220002) != null) {
+ em.schedule("start", 3 * 60 * 60 * 1000);
+ return;
+ }
var posX;
var posY = 540;
- posX = Math.floor((Math.random() * 1300) - 500);
+ posX = Math.floor((Math.random() * 1300) - 500);
const Point = Java.type('java.awt.Point');
const spawnpoint = new Point(posX, posY);
goblinForest2.spawnMonsterOnGroundBelow(kingSageCat, spawnpoint);
const PacketCreator = Java.type('tools.PacketCreator');
goblinForest2.broadcastMessage(PacketCreator.serverNotice(6, "The ghostly air around here has become stronger. The unpleasant sound of a cat crying can be heard."));
- em.schedule("start", 3 * 60 *60 * 1000);
+ em.schedule("start", 3 * 60 * 60 * 1000);
}
// ---------- FILLER FUNCTIONS ----------
diff --git a/scripts/event/AreaBossLeviathan.js b/scripts/event/AreaBossLeviathan.js
index b20e18db76..e412271c40 100644
--- a/scripts/event/AreaBossLeviathan.js
+++ b/scripts/event/AreaBossLeviathan.js
@@ -20,12 +20,12 @@
along with this program. If not, see .
*/
/**
--- Odin JavaScript --------------------------------------------------------------------------------
- Leviathan Spawner
--- Edited by --------------------------------------------------------------------------------------
- ThreeStep - based on xQuasar's King Clang spawner
+ -- Odin JavaScript --------------------------------------------------------------------------------
+ Leviathan Spawner
+ -- Edited by --------------------------------------------------------------------------------------
+ ThreeStep - based on xQuasar's King Clang spawner
-**/
+ **/
function init() {
scheduleNew();
@@ -36,29 +36,30 @@ function scheduleNew() {
}
function cancelSchedule() {
- if (setupTask != null)
+ if (setupTask != null) {
setupTask.cancel(true);
+ }
}
function start() {
var leviathansCanyon = em.getChannelServer().getMapFactory().getMap(240040401);
const LifeFactory = Java.type('server.life.LifeFactory');
var leviathan = LifeFactory.getMonster(8220003);
- if(leviathansCanyon.getMonsterById(8220003) != null) {
- em.schedule("start", 3 * 60 *60 * 1000);
- return;
- }
-
- var posX;
+ if (leviathansCanyon.getMonsterById(8220003) != null) {
+ em.schedule("start", 3 * 60 * 60 * 1000);
+ return;
+ }
+
+ var posX;
var posY = 1125;
- posX = Math.floor((Math.random() * 600) - 300);
+ posX = Math.floor((Math.random() * 600) - 300);
const Point = Java.type('java.awt.Point');
const spawnpoint = new Point(posX, posY);
leviathansCanyon.spawnMonsterOnGroundBelow(leviathan, spawnpoint);
const PacketCreator = Java.type('tools.PacketCreator');
leviathansCanyon.broadcastMessage(PacketCreator.serverNotice(6, "Leviathan emerges from the canyon and the cold icy wind blows."));
- em.schedule("start", 3 * 60 *60 * 1000);
+ em.schedule("start", 3 * 60 * 60 * 1000);
}
// ---------- FILLER FUNCTIONS ----------
diff --git a/scripts/event/AreaBossMano.js b/scripts/event/AreaBossMano.js
index 64aad889a5..f29f4832e9 100644
--- a/scripts/event/AreaBossMano.js
+++ b/scripts/event/AreaBossMano.js
@@ -20,11 +20,11 @@
along with this program. If not, see .
*/
/**
--- Odin JavaScript --------------------------------------------------------------------------------
- Mano Spawner
--- Edited by --------------------------------------------------------------------------------------
- ThreeStep - based on xQuasar's King Clang spawner
-**/
+ -- Odin JavaScript --------------------------------------------------------------------------------
+ Mano Spawner
+ -- Edited by --------------------------------------------------------------------------------------
+ ThreeStep - based on xQuasar's King Clang spawner
+ **/
function init() {
scheduleNew();
@@ -35,15 +35,16 @@ function scheduleNew() {
}
function cancelSchedule() {
- if (setupTask != null)
+ if (setupTask != null) {
setupTask.cancel(true);
+ }
}
function start() {
var thicketAroundTheBeach3 = em.getChannelServer().getMapFactory().getMap(104000400);
const LifeFactory = Java.type('server.life.LifeFactory');
var mano = LifeFactory.getMonster(2220000);
- if(thicketAroundTheBeach3.getMonsterById(2220000) != null) {
+ if (thicketAroundTheBeach3.getMonsterById(2220000) != null) {
em.schedule("start", 3 * 60 * 60 * 1000);
return;
}
@@ -54,7 +55,7 @@ function start() {
const PacketCreator = Java.type('tools.PacketCreator');
thicketAroundTheBeach3.broadcastMessage(PacketCreator.serverNotice(6, "A cool breeze was felt when Mano appeared."));
- em.schedule("start", 3 * 60 *60 * 1000);
+ em.schedule("start", 3 * 60 * 60 * 1000);
}
// ---------- FILLER FUNCTIONS ----------
diff --git a/scripts/event/AreaBossNineTailedFox.js b/scripts/event/AreaBossNineTailedFox.js
index 550d9a2843..b18167765a 100644
--- a/scripts/event/AreaBossNineTailedFox.js
+++ b/scripts/event/AreaBossNineTailedFox.js
@@ -20,12 +20,12 @@
along with this program. If not, see .
*/
/**
--- Odin JavaScript --------------------------------------------------------------------------------
- Nine Tailed Fox (Old Fox) Spawner
--- Edited by --------------------------------------------------------------------------------------
- ThreeStep - based on xQuasar's King Clang spawner
+ -- Odin JavaScript --------------------------------------------------------------------------------
+ Nine Tailed Fox (Old Fox) Spawner
+ -- Edited by --------------------------------------------------------------------------------------
+ ThreeStep - based on xQuasar's King Clang spawner
-**/
+ **/
function init() {
scheduleNew();
@@ -36,28 +36,29 @@ function scheduleNew() {
}
function cancelSchedule() {
- if (setupTask != null)
+ if (setupTask != null) {
setupTask.cancel(true);
+ }
}
function start() {
var moonRidge = em.getChannelServer().getMapFactory().getMap(222010310);
const LifeFactory = Java.type('server.life.LifeFactory');
var nineTailedFox = LifeFactory.getMonster(7220001);
- if(moonRidge.getMonsterById(7220001) != null) {
- em.schedule("start", 3 * 60 *60 * 1000);
- return;
- }
+ if (moonRidge.getMonsterById(7220001) != null) {
+ em.schedule("start", 3 * 60 * 60 * 1000);
+ return;
+ }
var posX;
var posY = 33;
- posX = Math.floor((Math.random() * 1300) - 800);
+ posX = Math.floor((Math.random() * 1300) - 800);
const Point = Java.type('java.awt.Point');
const spawnpoint = new Point(posX, posY);
moonRidge.spawnMonsterOnGroundBelow(nineTailedFox, spawnpoint);
const PacketCreator = Java.type('tools.PacketCreator');
moonRidge.broadcastMessage(PacketCreator.serverNotice(6, "As the moon light dims, a long fox cry can be heard and the presence of the old fox can be felt"));
- em.schedule("start", 3 * 60 *60 * 1000);
+ em.schedule("start", 3 * 60 * 60 * 1000);
}
// ---------- FILLER FUNCTIONS ----------
diff --git a/scripts/event/AreaBossSeruf.js b/scripts/event/AreaBossSeruf.js
index b78a9c347b..290f2718f5 100644
--- a/scripts/event/AreaBossSeruf.js
+++ b/scripts/event/AreaBossSeruf.js
@@ -21,12 +21,12 @@
*/
/**
--- Odin JavaScript --------------------------------------------------------------------------------
- Seruf Spawner
--- Edited by --------------------------------------------------------------------------------------
- ThreeStep - based on xQuasar's King Clang spawner
+ -- Odin JavaScript --------------------------------------------------------------------------------
+ Seruf Spawner
+ -- Edited by --------------------------------------------------------------------------------------
+ ThreeStep - based on xQuasar's King Clang spawner
-**/
+ **/
function init() {
scheduleNew();
@@ -37,30 +37,31 @@ function scheduleNew() {
}
function cancelSchedule() {
- if (setupTask != null)
+ if (setupTask != null) {
setupTask.cancel(true);
+ }
}
function start() {
var theSeaweedTower = em.getChannelServer().getMapFactory().getMap(230020100);
const LifeFactory = Java.type('server.life.LifeFactory');
var seruf = LifeFactory.getMonster(4220001);
-
- if(theSeaweedTower.getMonsterById(4220001) != null) {
- em.schedule("start", 3 * 60 * 60 * 1000);
- return;
- }
-
+
+ if (theSeaweedTower.getMonsterById(4220001) != null) {
+ em.schedule("start", 3 * 60 * 60 * 1000);
+ return;
+ }
+
var posX;
var posY = 520;
- posX = Math.floor((Math.random() * 2300) - 1500);
+ posX = Math.floor((Math.random() * 2300) - 1500);
const Point = Java.type('java.awt.Point');
const spawnpoint = new Point(posX, posY);
theSeaweedTower.spawnMonsterOnGroundBelow(seruf, spawnpoint);
const PacketCreator = Java.type('tools.PacketCreator');
theSeaweedTower.broadcastMessage(PacketCreator.serverNotice(6, "A strange shell has appeared from a grove of seaweed"));
- em.schedule("start", 3 * 60 * 60 * 1000);
+ em.schedule("start", 3 * 60 * 60 * 1000);
}
// ---------- FILLER FUNCTIONS ----------
diff --git a/scripts/event/AreaBossSnackBar.js b/scripts/event/AreaBossSnackBar.js
index 93cf601be7..e4ffcd9bc3 100644
--- a/scripts/event/AreaBossSnackBar.js
+++ b/scripts/event/AreaBossSnackBar.js
@@ -20,12 +20,12 @@
along with this program. If not, see .
*/
/**
--- Odin JavaScript --------------------------------------------------------------------------------
- Snack Bar Spawner
--- Edited by --------------------------------------------------------------------------------------
- Ronan - based on xQuasar's King Clang spawner
+ -- Odin JavaScript --------------------------------------------------------------------------------
+ Snack Bar Spawner
+ -- Edited by --------------------------------------------------------------------------------------
+ Ronan - based on xQuasar's King Clang spawner
-**/
+ **/
function init() {
scheduleNew();
}
@@ -35,8 +35,9 @@ function scheduleNew() {
}
function cancelSchedule() {
- if (setupTask != null)
+ if (setupTask != null) {
setupTask.cancel(true);
+ }
}
function start() {
diff --git a/scripts/event/AreaBossStumpy.js b/scripts/event/AreaBossStumpy.js
index 7fba0bbfad..a203034913 100644
--- a/scripts/event/AreaBossStumpy.js
+++ b/scripts/event/AreaBossStumpy.js
@@ -20,12 +20,12 @@
along with this program. If not, see .
*/
/**
--- Odin JavaScript --------------------------------------------------------------------------------
- Stumpy Spawner
--- Edited by --------------------------------------------------------------------------------------
- ThreeStep - based on xQuasar's King Clang spawner
+ -- Odin JavaScript --------------------------------------------------------------------------------
+ Stumpy Spawner
+ -- Edited by --------------------------------------------------------------------------------------
+ ThreeStep - based on xQuasar's King Clang spawner
-**/
+ **/
function init() {
scheduleNew();
@@ -36,20 +36,21 @@ function scheduleNew() {
}
function cancelSchedule() {
- if (setupTask != null)
+ if (setupTask != null) {
setupTask.cancel(true);
+ }
}
function start() {
var eastRockyMountain5 = em.getChannelServer().getMapFactory().getMap(101030404);
const LifeFactory = Java.type('server.life.LifeFactory');
var stumpy = LifeFactory.getMonster(3220000);
-
- if(eastRockyMountain5.getMonsterById(3220000) != null) {
+
+ if (eastRockyMountain5.getMonsterById(3220000) != null) {
em.schedule("start", 3 * 60 * 60 * 1000);
return;
}
-
+
var posX;
var posY = 1280;
posX = Math.floor((Math.random() * 800) + 400);
diff --git a/scripts/event/AreaBossTaeRoon.js b/scripts/event/AreaBossTaeRoon.js
index b1899ed2cf..01558c736b 100644
--- a/scripts/event/AreaBossTaeRoon.js
+++ b/scripts/event/AreaBossTaeRoon.js
@@ -20,12 +20,12 @@
along with this program. If not, see .
*/
/**
--- Odin JavaScript --------------------------------------------------------------------------------
- Tae Roon Spawner
--- Edited by --------------------------------------------------------------------------------------
- ThreeStep - based on xQuasar's King Clang spawner
+ -- Odin JavaScript --------------------------------------------------------------------------------
+ Tae Roon Spawner
+ -- Edited by --------------------------------------------------------------------------------------
+ ThreeStep - based on xQuasar's King Clang spawner
-**/
+ **/
function init() {
scheduleNew();
@@ -36,30 +36,31 @@ function scheduleNew() {
}
function cancelSchedule() {
- if (setupTask != null)
+ if (setupTask != null) {
setupTask.cancel(true);
+ }
}
function start() {
var territoryOfWanderingBear = em.getChannelServer().getMapFactory().getMap(250010304);
const LifeFactory = Java.type('server.life.LifeFactory');
var taeRoon = LifeFactory.getMonster(7220000);
-
- if(territoryOfWanderingBear.getMonsterById(7220000) != null) {
- em.schedule("start", 3 * 60 * 60 * 1000);
- return;
- }
-
+
+ if (territoryOfWanderingBear.getMonsterById(7220000) != null) {
+ em.schedule("start", 3 * 60 * 60 * 1000);
+ return;
+ }
+
var posX;
var posY = 390;
- posX = Math.floor((Math.random() * 700) - 800);
+ posX = Math.floor((Math.random() * 700) - 800);
const Point = Java.type('java.awt.Point');
const spawnpoint = new Point(posX, posY);
territoryOfWanderingBear.spawnMonsterOnGroundBelow(taeRoon, spawnpoint);
const PacketCreator = Java.type('tools.PacketCreator');
territoryOfWanderingBear.broadcastMessage(PacketCreator.serverNotice(6, "Tae Roon has appeared with a soft whistling sound."));
- em.schedule("start", 3 * 60 * 60 * 1000);
+ em.schedule("start", 3 * 60 * 60 * 1000);
}
// ---------- FILLER FUNCTIONS ----------
diff --git a/scripts/event/AreaBossTimer1.js b/scripts/event/AreaBossTimer1.js
index 97ccda3549..ae48b6bad0 100644
--- a/scripts/event/AreaBossTimer1.js
+++ b/scripts/event/AreaBossTimer1.js
@@ -20,11 +20,11 @@
along with this program. If not, see .
*/
/**
--- Odin JavaScript --------------------------------------------------------------------------------
- Timer1 Spawner
--- Edited by --------------------------------------------------------------------------------------
- ThreeStep - based on xQuasar's King Clang spawner
-**/
+ -- Odin JavaScript --------------------------------------------------------------------------------
+ Timer1 Spawner
+ -- Edited by --------------------------------------------------------------------------------------
+ ThreeStep - based on xQuasar's King Clang spawner
+ **/
function init() {
scheduleNew();
@@ -35,30 +35,31 @@ function scheduleNew() {
}
function cancelSchedule() {
- if (setupTask != null)
+ if (setupTask != null) {
setupTask.cancel(true);
+ }
}
function start() {
var whirlpoolOfTime = em.getChannelServer().getMapFactory().getMap(220050100);
const LifeFactory = Java.type('server.life.LifeFactory');
var timer1 = LifeFactory.getMonster(5220003);
-
- if(whirlpoolOfTime.getMonsterById(5220003) != null) {
- em.schedule("start", 3 * 60 * 60 * 1000);
- return;
- }
-
+
+ if (whirlpoolOfTime.getMonsterById(5220003) != null) {
+ em.schedule("start", 3 * 60 * 60 * 1000);
+ return;
+ }
+
var posX;
var posY = 1030;
- posX = Math.floor((Math.random() * 770) - 770);
+ posX = Math.floor((Math.random() * 770) - 770);
const Point = Java.type('java.awt.Point');
const spawnpoint = new Point(posX, posY);
whirlpoolOfTime.spawnMonsterOnGroundBelow(timer1, spawnpoint);
const PacketCreator = Java.type('tools.PacketCreator');
whirlpoolOfTime.broadcastMessage(PacketCreator.serverNotice(6, "Tick-Tock Tick-Tock! Timer makes it's presence known."));
- em.schedule("start", 3 * 60 * 60 * 1000);
+ em.schedule("start", 3 * 60 * 60 * 1000);
}
// ---------- FILLER FUNCTIONS ----------
diff --git a/scripts/event/AreaBossTimer2.js b/scripts/event/AreaBossTimer2.js
index cbcfd55a78..33b578952e 100644
--- a/scripts/event/AreaBossTimer2.js
+++ b/scripts/event/AreaBossTimer2.js
@@ -20,12 +20,12 @@
along with this program. If not, see .
*/
/**
--- Odin JavaScript --------------------------------------------------------------------------------
- Timer2 Spawner
--- Edited by --------------------------------------------------------------------------------------
- ThreeStep - based on xQuasar's King Clang spawner
+ -- Odin JavaScript --------------------------------------------------------------------------------
+ Timer2 Spawner
+ -- Edited by --------------------------------------------------------------------------------------
+ ThreeStep - based on xQuasar's King Clang spawner
-**/
+ **/
function init() {
scheduleNew();
@@ -36,30 +36,31 @@ function scheduleNew() {
}
function cancelSchedule() {
- if (setupTask != null)
+ if (setupTask != null) {
setupTask.cancel(true);
+ }
}
function start() {
var lostTime1 = em.getChannelServer().getMapFactory().getMap(220050000);
const LifeFactory = Java.type('server.life.LifeFactory');
var timer2 = LifeFactory.getMonster(5220003);
-
- if(lostTime1.getMonsterById(5220003) != null) {
- em.schedule("start", 3 * 60 * 60 * 1000);
- return;
- }
-
+
+ if (lostTime1.getMonsterById(5220003) != null) {
+ em.schedule("start", 3 * 60 * 60 * 1000);
+ return;
+ }
+
var posX;
var posY = 1030;
- posX = Math.floor((Math.random() * 1400) - 1000);
+ posX = Math.floor((Math.random() * 1400) - 1000);
const Point = Java.type('java.awt.Point');
const spawnpoint = new Point(posX, posY);
lostTime1.spawnMonsterOnGroundBelow(timer2, spawnpoint);
const PacketCreator = Java.type('tools.PacketCreator');
lostTime1.broadcastMessage(PacketCreator.serverNotice(6, "Tick-Tock Tick-Tock! Timer makes it's presence known."));
- em.schedule("start", 3 * 60 * 60 * 1000);
+ em.schedule("start", 3 * 60 * 60 * 1000);
}
// ---------- FILLER FUNCTIONS ----------
diff --git a/scripts/event/AreaBossTimer3.js b/scripts/event/AreaBossTimer3.js
index 23aefeca26..7fb95411c0 100644
--- a/scripts/event/AreaBossTimer3.js
+++ b/scripts/event/AreaBossTimer3.js
@@ -21,12 +21,12 @@
*/
/**
--- Odin JavaScript --------------------------------------------------------------------------------
- Timer3 Spawner
--- Edited by --------------------------------------------------------------------------------------
- ThreeStep - based on xQuasar's King Clang spawner
+ -- Odin JavaScript --------------------------------------------------------------------------------
+ Timer3 Spawner
+ -- Edited by --------------------------------------------------------------------------------------
+ ThreeStep - based on xQuasar's King Clang spawner
-**/
+ **/
function init() {
scheduleNew();
@@ -37,30 +37,31 @@ function scheduleNew() {
}
function cancelSchedule() {
- if (setupTask != null)
+ if (setupTask != null) {
setupTask.cancel(true);
+ }
}
function start() {
var lostTime2 = em.getChannelServer().getMapFactory().getMap(220050200);
const LifeFactory = Java.type('server.life.LifeFactory');
var timer3 = LifeFactory.getMonster(5220003);
-
- if(lostTime2.getMonsterById(5220003) != null) {
- em.schedule("start", 3 * 60 * 60 * 1000);
- return;
- }
-
+
+ if (lostTime2.getMonsterById(5220003) != null) {
+ em.schedule("start", 3 * 60 * 60 * 1000);
+ return;
+ }
+
var posX;
var posY = 1030;
- posX = Math.floor((Math.random() * 1400) - 700);
+ posX = Math.floor((Math.random() * 1400) - 700);
const Point = Java.type('java.awt.Point');
const spawnpoint = new Point(posX, posY);
lostTime2.spawnMonsterOnGroundBelow(timer3, spawnpoint);
const PacketCreator = Java.type('tools.PacketCreator');
lostTime2.broadcastMessage(PacketCreator.serverNotice(6, "Tick-Tock Tick-Tock! Timer makes it's presence known."));
- em.schedule("start", 3 * 60 * 60 * 1000);
+ em.schedule("start", 3 * 60 * 60 * 1000);
}
// ---------- FILLER FUNCTIONS ----------
diff --git a/scripts/event/AreaBossZeno.js b/scripts/event/AreaBossZeno.js
index a6a3ac9018..3f7de350ca 100644
--- a/scripts/event/AreaBossZeno.js
+++ b/scripts/event/AreaBossZeno.js
@@ -21,11 +21,11 @@
*/
/**
--- Odin JavaScript --------------------------------------------------------------------------------
- Zeno Spawner
--- Edited by --------------------------------------------------------------------------------------
- ThreeStep - based on xQuasar's King Clang spawner
-**/
+ -- Odin JavaScript --------------------------------------------------------------------------------
+ Zeno Spawner
+ -- Edited by --------------------------------------------------------------------------------------
+ ThreeStep - based on xQuasar's King Clang spawner
+ **/
function init() {
scheduleNew();
}
@@ -35,17 +35,18 @@ function scheduleNew() {
}
function cancelSchedule() {
- if (setupTask != null)
+ if (setupTask != null) {
setupTask.cancel(true);
+ }
}
function start() {
var graysPrairie = em.getChannelServer().getMapFactory().getMap(221040301);
-
- if(graysPrairie.getMonsterById(6220001) != null) {
- em.schedule("start", 3 * 60 * 60 * 1000);
- return;
- }
+
+ if (graysPrairie.getMonsterById(6220001) != null) {
+ em.schedule("start", 3 * 60 * 60 * 1000);
+ return;
+ }
const LifeFactory = Java.type('server.life.LifeFactory');
const Point = Java.type('java.awt.Point');
@@ -54,7 +55,7 @@ function start() {
var zeno = LifeFactory.getMonster(6220001);
graysPrairie.spawnMonsterOnGroundBelow(zeno, new Point(-4224, 776));
graysPrairie.broadcastMessage(PacketCreator.serverNotice(6, "Zeno has appeared with a heavy sound of machinery."));
- em.schedule("start", 3 * 60 * 60 * 1000);
+ em.schedule("start", 3 * 60 * 60 * 1000);
}
// ---------- FILLER FUNCTIONS ----------
diff --git a/scripts/event/BalrogBattle.js b/scripts/event/BalrogBattle.js
index 2b79d2bff9..288ca4108b 100644
--- a/scripts/event/BalrogBattle.js
+++ b/scripts/event/BalrogBattle.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Vs Balrog
-*/
+ */
var isPq = true;
var minPlayers = 6, maxPlayers = 30;
@@ -44,140 +44,150 @@ var releaseClawTime = 1;
const maxLobbies = 1;
function init() {
- setEventRequirements();
+ setEventRequirements();
}
function getMaxLobbies() {
- return maxLobbies;
+ return maxLobbies;
}
function setEventRequirements() {
- var reqStr = "";
-
- reqStr += "\r\n Number of players: ";
- if(maxPlayers - minPlayers >= 1) reqStr += minPlayers + " ~ " + maxPlayers;
- else reqStr += minPlayers;
-
- reqStr += "\r\n Level range: ";
- if(maxLevel - minLevel >= 1) reqStr += minLevel + " ~ " + maxLevel;
- else reqStr += minLevel;
-
- reqStr += "\r\n Time limit: ";
- reqStr += eventTime + " minutes";
-
- em.setProperty("party", reqStr);
+ var reqStr = "";
+
+ reqStr += "\r\n Number of players: ";
+ if (maxPlayers - minPlayers >= 1) {
+ reqStr += minPlayers + " ~ " + maxPlayers;
+ } else {
+ reqStr += minPlayers;
+ }
+
+ reqStr += "\r\n Level range: ";
+ if (maxLevel - minLevel >= 1) {
+ reqStr += minLevel + " ~ " + maxLevel;
+ } else {
+ reqStr += minLevel;
+ }
+
+ reqStr += "\r\n Time limit: ";
+ reqStr += eventTime + " minutes";
+
+ em.setProperty("party", reqStr);
}
function setEventExclusives(eim) {
- var itemSet = [];
- eim.setExclusiveItems(itemSet);
+ var itemSet = [];
+ eim.setExclusiveItems(itemSet);
}
function setEventRewards(eim) {
- var itemSet, itemQty, evLevel, expStages;
+ var itemSet, itemQty, evLevel, expStages;
- evLevel = 1; //Rewards at clear PQ
- itemSet = [];
- itemQty = [];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- expStages = []; //bonus exp given on CLEAR stage signal
- eim.setEventClearStageExp(expStages);
+ evLevel = 1; //Rewards at clear PQ
+ itemSet = [];
+ itemQty = [];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ expStages = []; //bonus exp given on CLEAR stage signal
+ eim.setEventClearStageExp(expStages);
}
function getEligibleParty(party) { //selects, from the given party, the team that is allowed to attempt this event
- var eligible = [];
- var hasLeader = false;
-
- if(party.size() > 0) {
- var partyList = party.toArray();
+ var eligible = [];
+ var hasLeader = false;
- for(var i = 0; i < party.size(); i++) {
- var ch = partyList[i];
+ if (party.size() > 0) {
+ var partyList = party.toArray();
- if(ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
- if(ch.isLeader()) hasLeader = true;
- eligible.push(ch);
- }
+ for (var i = 0; i < party.size(); i++) {
+ var ch = partyList[i];
+
+ if (ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
+ if (ch.isLeader()) {
+ hasLeader = true;
}
+ eligible.push(ch);
+ }
}
-
- if(!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) eligible = [];
- return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
+ }
+
+ if (!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) {
+ eligible = [];
+ }
+ return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
}
function setup(level, lobbyid) {
- var eim = em.newInstance("Balrog" + lobbyid);
- eim.setProperty("level", level);
- eim.setProperty("boss", "0");
-
- eim.getInstanceMap(105100300).resetPQ(level);
- eim.getInstanceMap(105100301).resetPQ(level);
- eim.schedule("releaseLeftClaw", releaseClawTime * 60000);
-
- respawnStages(eim);
- eim.startEventTimer(eventTime * 60000);
- setEventRewards(eim);
- setEventExclusives(eim);
- return eim;
+ var eim = em.newInstance("Balrog" + lobbyid);
+ eim.setProperty("level", level);
+ eim.setProperty("boss", "0");
+
+ eim.getInstanceMap(105100300).resetPQ(level);
+ eim.getInstanceMap(105100301).resetPQ(level);
+ eim.schedule("releaseLeftClaw", releaseClawTime * 60000);
+
+ respawnStages(eim);
+ eim.startEventTimer(eventTime * 60000);
+ setEventRewards(eim);
+ setEventExclusives(eim);
+ return eim;
}
function afterSetup(eim) {
- spawnBalrog(eim);
+ spawnBalrog(eim);
}
function respawnStages(eim) {}
function releaseLeftClaw(eim) {
- eim.getInstanceMap(entryMap).killMonster(8830006);
+ eim.getInstanceMap(entryMap).killMonster(8830006);
}
function spawnBalrog(eim) {
- var mapObj = eim.getInstanceMap(entryMap);
+ var mapObj = eim.getInstanceMap(entryMap);
- const LifeFactory = Java.type('server.life.LifeFactory');
- const Point = Java.type('java.awt.Point');
- mapObj.spawnFakeMonsterOnGroundBelow(LifeFactory.getMonster(8830000), new Point(412, 258));
- mapObj.spawnMonsterOnGroundBelow(LifeFactory.getMonster(8830002), new Point(412, 258));
- mapObj.spawnMonsterOnGroundBelow(LifeFactory.getMonster(8830006), new Point(412, 258));
+ const LifeFactory = Java.type('server.life.LifeFactory');
+ const Point = Java.type('java.awt.Point');
+ mapObj.spawnFakeMonsterOnGroundBelow(LifeFactory.getMonster(8830000), new Point(412, 258));
+ mapObj.spawnMonsterOnGroundBelow(LifeFactory.getMonster(8830002), new Point(412, 258));
+ mapObj.spawnMonsterOnGroundBelow(LifeFactory.getMonster(8830006), new Point(412, 258));
}
function spawnSealedBalrog(eim) {
- const Point = Java.type('java.awt.Point');
- eim.getInstanceMap(entryMap).spawnMonsterOnGroundBelow(LifeFactory.getMonster(bossMobId), new Point(412, 258));
+ const Point = Java.type('java.awt.Point');
+ eim.getInstanceMap(entryMap).spawnMonsterOnGroundBelow(LifeFactory.getMonster(bossMobId), new Point(412, 258));
}
function playerEntry(eim, player) {
- var map = eim.getMapInstance(entryMap);
- player.changeMap(map, map.getPortal(0));
+ var map = eim.getMapInstance(entryMap);
+ player.changeMap(map, map.getPortal(0));
}
function scheduledTimeout(eim) {
- end(eim);
+ end(eim);
}
function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
- eim.unregisterPlayer(player);
- player.changeMap(exitMap, 0);
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap, 0);
}
function playerLeft(eim, player) {
- if(!eim.isEventCleared()) {
- playerExit(eim, player);
- }
+ if (!eim.isEventCleared()) {
+ playerExit(eim, player);
+ }
}
function changedMap(eim, player, mapid) {
- if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isExpeditionTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (mapid < minMapId || mapid > maxMapId) {
+ if (eim.isExpeditionTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
}
+ }
}
function changedLeader(eim, leader) {}
@@ -185,21 +195,21 @@ function changedLeader(eim, leader) {}
function playerDead(eim, player) {}
function playerRevive(eim, player) { // player presses ok on the death pop up.
- if (eim.isExpeditionTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isExpeditionTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function playerDisconnected(eim, player) {
- if (eim.isExpeditionTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isExpeditionTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function leftParty(eim, player) {}
@@ -207,60 +217,60 @@ function leftParty(eim, player) {}
function disbandParty(eim) {}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function end(eim) {
- var party = eim.getPlayers();
-
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ var party = eim.getPlayers();
+
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
}
function giveRandomEventReward(eim, player) {
- eim.giveEventReward(player);
+ eim.giveEventReward(player);
}
function clearPQ(eim) {
- eim.stopEventTimer();
- eim.setEventCleared();
+ eim.stopEventTimer();
+ eim.setEventCleared();
}
function isUnsealedBalrog(mob) {
- var balrogid = mob.getId() - 8830000;
- return balrogid >= 0 && balrogid <= 2;
+ var balrogid = mob.getId() - 8830000;
+ return balrogid >= 0 && balrogid <= 2;
}
function isBalrogBody(mob) {
- return mob.getId() == minMobId;
+ return mob.getId() == minMobId;
}
function monsterKilled(mob, eim) {
- if(isUnsealedBalrog(mob)) {
- var count = eim.getIntProperty("boss");
-
- if(count == 2) {
- eim.showClearEffect();
- eim.clearPQ();
+ if (isUnsealedBalrog(mob)) {
+ var count = eim.getIntProperty("boss");
- eim.dispatchRaiseQuestMobCount(bossMobId, entryMap);
- eim.dispatchRaiseQuestMobCount(9101003, entryMap); // thanks Atoot for noticing quest not getting updated after boss kill
- mob.getMap().broadcastBalrogVictory(eim.getLeader().getName());
- } else {
- if(count == 1) {
- var mapobj = eim.getInstanceMap(entryMap);
- mapobj.makeMonsterReal(mapobj.getMonsterById(8830000));
- }
-
- eim.setIntProperty("boss", count + 1);
- }
-
- if(isBalrogBody(mob)) {
- eim.schedule("spawnSealedBalrog", 10 * 1000);
- }
+ if (count == 2) {
+ eim.showClearEffect();
+ eim.clearPQ();
+
+ eim.dispatchRaiseQuestMobCount(bossMobId, entryMap);
+ eim.dispatchRaiseQuestMobCount(9101003, entryMap); // thanks Atoot for noticing quest not getting updated after boss kill
+ mob.getMap().broadcastBalrogVictory(eim.getLeader().getName());
+ } else {
+ if (count == 1) {
+ var mapobj = eim.getInstanceMap(entryMap);
+ mapobj.makeMonsterReal(mapobj.getMonsterById(8830000));
+ }
+
+ eim.setIntProperty("boss", count + 1);
}
+
+ if (isBalrogBody(mob)) {
+ eim.schedule("spawnSealedBalrog", 10 * 1000);
+ }
+ }
}
function allMonstersDead(eim) {}
diff --git a/scripts/event/BalrogBattle_Easy.js b/scripts/event/BalrogBattle_Easy.js
index ac0ebec18e..2d124e590a 100644
--- a/scripts/event/BalrogBattle_Easy.js
+++ b/scripts/event/BalrogBattle_Easy.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Vs Balrog
-*/
+ */
var isPq = true;
var minPlayers = 3, maxPlayers = 30;
@@ -44,140 +44,150 @@ var releaseClawTime = 1;
const maxLobbies = 1;
function init() {
- setEventRequirements();
+ setEventRequirements();
}
function getMaxLobbies() {
- return maxLobbies;
+ return maxLobbies;
}
function setEventRequirements() {
- var reqStr = "";
-
- reqStr += "\r\n Number of players: ";
- if(maxPlayers - minPlayers >= 1) reqStr += minPlayers + " ~ " + maxPlayers;
- else reqStr += minPlayers;
-
- reqStr += "\r\n Level range: ";
- if(maxLevel - minLevel >= 1) reqStr += minLevel + " ~ " + maxLevel;
- else reqStr += minLevel;
-
- reqStr += "\r\n Time limit: ";
- reqStr += eventTime + " minutes";
-
- em.setProperty("party", reqStr);
+ var reqStr = "";
+
+ reqStr += "\r\n Number of players: ";
+ if (maxPlayers - minPlayers >= 1) {
+ reqStr += minPlayers + " ~ " + maxPlayers;
+ } else {
+ reqStr += minPlayers;
+ }
+
+ reqStr += "\r\n Level range: ";
+ if (maxLevel - minLevel >= 1) {
+ reqStr += minLevel + " ~ " + maxLevel;
+ } else {
+ reqStr += minLevel;
+ }
+
+ reqStr += "\r\n Time limit: ";
+ reqStr += eventTime + " minutes";
+
+ em.setProperty("party", reqStr);
}
function setEventExclusives(eim) {
- var itemSet = [];
- eim.setExclusiveItems(itemSet);
+ var itemSet = [];
+ eim.setExclusiveItems(itemSet);
}
function setEventRewards(eim) {
- var itemSet, itemQty, evLevel, expStages;
+ var itemSet, itemQty, evLevel, expStages;
- evLevel = 1; //Rewards at clear PQ
- itemSet = [];
- itemQty = [];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- expStages = []; //bonus exp given on CLEAR stage signal
- eim.setEventClearStageExp(expStages);
+ evLevel = 1; //Rewards at clear PQ
+ itemSet = [];
+ itemQty = [];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ expStages = []; //bonus exp given on CLEAR stage signal
+ eim.setEventClearStageExp(expStages);
}
function getEligibleParty(party) { //selects, from the given party, the team that is allowed to attempt this event
- var eligible = [];
- var hasLeader = false;
-
- if(party.size() > 0) {
- var partyList = party.toArray();
+ var eligible = [];
+ var hasLeader = false;
- for(var i = 0; i < party.size(); i++) {
- var ch = partyList[i];
+ if (party.size() > 0) {
+ var partyList = party.toArray();
- if(ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
- if(ch.isLeader()) hasLeader = true;
- eligible.push(ch);
- }
+ for (var i = 0; i < party.size(); i++) {
+ var ch = partyList[i];
+
+ if (ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
+ if (ch.isLeader()) {
+ hasLeader = true;
}
+ eligible.push(ch);
+ }
}
-
- if(!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) eligible = [];
- return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
+ }
+
+ if (!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) {
+ eligible = [];
+ }
+ return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
}
function setup(level, lobbyid) {
- var eim = em.newInstance("Balrog" + lobbyid);
- eim.setProperty("level", level);
- eim.setProperty("boss", "0");
-
- eim.getInstanceMap(105100400).resetPQ(level);
- eim.getInstanceMap(105100401).resetPQ(level);
- eim.schedule("releaseLeftClaw", releaseClawTime * 60000);
-
- respawnStages(eim);
- eim.startEventTimer(eventTime * 60000);
- setEventRewards(eim);
- setEventExclusives(eim);
- return eim;
+ var eim = em.newInstance("Balrog" + lobbyid);
+ eim.setProperty("level", level);
+ eim.setProperty("boss", "0");
+
+ eim.getInstanceMap(105100400).resetPQ(level);
+ eim.getInstanceMap(105100401).resetPQ(level);
+ eim.schedule("releaseLeftClaw", releaseClawTime * 60000);
+
+ respawnStages(eim);
+ eim.startEventTimer(eventTime * 60000);
+ setEventRewards(eim);
+ setEventExclusives(eim);
+ return eim;
}
function afterSetup(eim) {
- spawnBalrog(eim);
+ spawnBalrog(eim);
}
function respawnStages(eim) {}
function releaseLeftClaw(eim) {
- eim.getInstanceMap(entryMap).killMonster(8830013);
+ eim.getInstanceMap(entryMap).killMonster(8830013);
}
function spawnBalrog(eim) {
- var mapObj = eim.getInstanceMap(entryMap);
+ var mapObj = eim.getInstanceMap(entryMap);
- const LifeFactory = Java.type('server.life.LifeFactory');
- const Point = Java.type('java.awt.Point');
- mapObj.spawnFakeMonsterOnGroundBelow(LifeFactory.getMonster(8830007), new Point(412, 258));
- mapObj.spawnMonsterOnGroundBelow(LifeFactory.getMonster(8830009), new Point(412, 258));
- mapObj.spawnMonsterOnGroundBelow(LifeFactory.getMonster(8830013), new Point(412, 258));
+ const LifeFactory = Java.type('server.life.LifeFactory');
+ const Point = Java.type('java.awt.Point');
+ mapObj.spawnFakeMonsterOnGroundBelow(LifeFactory.getMonster(8830007), new Point(412, 258));
+ mapObj.spawnMonsterOnGroundBelow(LifeFactory.getMonster(8830009), new Point(412, 258));
+ mapObj.spawnMonsterOnGroundBelow(LifeFactory.getMonster(8830013), new Point(412, 258));
}
function spawnSealedBalrog(eim) {
- const Point = Java.type('java.awt.Point');
- eim.getInstanceMap(entryMap).spawnMonsterOnGroundBelow(LifeFactory.getMonster(bossMobId), new Point(412, 258));
+ const Point = Java.type('java.awt.Point');
+ eim.getInstanceMap(entryMap).spawnMonsterOnGroundBelow(LifeFactory.getMonster(bossMobId), new Point(412, 258));
}
function playerEntry(eim, player) {
- var map = eim.getMapInstance(entryMap);
- player.changeMap(map, map.getPortal(0));
+ var map = eim.getMapInstance(entryMap);
+ player.changeMap(map, map.getPortal(0));
}
function scheduledTimeout(eim) {
- end(eim);
+ end(eim);
}
function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
- eim.unregisterPlayer(player);
- player.changeMap(exitMap, 0);
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap, 0);
}
function playerLeft(eim, player) {
- if(!eim.isEventCleared()) {
- playerExit(eim, player);
- }
+ if (!eim.isEventCleared()) {
+ playerExit(eim, player);
+ }
}
function changedMap(eim, player, mapid) {
- if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isExpeditionTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (mapid < minMapId || mapid > maxMapId) {
+ if (eim.isExpeditionTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
}
+ }
}
function changedLeader(eim, leader) {}
@@ -185,21 +195,21 @@ function changedLeader(eim, leader) {}
function playerDead(eim, player) {}
function playerRevive(eim, player) { // player presses ok on the death pop up.
- if (eim.isExpeditionTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isExpeditionTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function playerDisconnected(eim, player) {
- if (eim.isExpeditionTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isExpeditionTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function leftParty(eim, player) {}
@@ -207,58 +217,58 @@ function leftParty(eim, player) {}
function disbandParty(eim) {}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function end(eim) {
- var party = eim.getPlayers();
-
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ var party = eim.getPlayers();
+
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
}
function giveRandomEventReward(eim, player) {
- eim.giveEventReward(player);
+ eim.giveEventReward(player);
}
function clearPQ(eim) {
- eim.stopEventTimer();
- eim.setEventCleared();
+ eim.stopEventTimer();
+ eim.setEventCleared();
}
function isUnsealedBalrog(mob) {
- var balrogid = mob.getId() - 8830007;
- return balrogid >= 0 && balrogid <= 2;
+ var balrogid = mob.getId() - 8830007;
+ return balrogid >= 0 && balrogid <= 2;
}
function isBalrogBody(mob) {
- return mob.getId() == minMobId;
+ return mob.getId() == minMobId;
}
function monsterKilled(mob, eim) {
- if(isUnsealedBalrog(mob)) {
- var count = eim.getIntProperty("boss");
-
- if(count == 2) {
- eim.showClearEffect();
- eim.clearPQ();
+ if (isUnsealedBalrog(mob)) {
+ var count = eim.getIntProperty("boss");
- eim.dispatchRaiseQuestMobCount(bossMobId, entryMap);
- mob.getMap().broadcastBalrogVictory(eim.getLeader().getName());
- } else {
- if(count == 1) {
- var mapobj = eim.getInstanceMap(entryMap);
- mapobj.makeMonsterReal(mapobj.getMonsterById(8830007));
- }
- eim.setIntProperty("boss", count + 1);
- }
-
- if(isBalrogBody(mob)) {
- eim.schedule("spawnSealedBalrog", 10 * 1000);
- }
+ if (count == 2) {
+ eim.showClearEffect();
+ eim.clearPQ();
+
+ eim.dispatchRaiseQuestMobCount(bossMobId, entryMap);
+ mob.getMap().broadcastBalrogVictory(eim.getLeader().getName());
+ } else {
+ if (count == 1) {
+ var mapobj = eim.getInstanceMap(entryMap);
+ mapobj.makeMonsterReal(mapobj.getMonsterById(8830007));
+ }
+ eim.setIntProperty("boss", count + 1);
}
+
+ if (isBalrogBody(mob)) {
+ eim.schedule("spawnSealedBalrog", 10 * 1000);
+ }
+ }
}
function allMonstersDead(eim) {}
diff --git a/scripts/event/BalrogQuest.js b/scripts/event/BalrogQuest.js
index af9c4c834e..96bc26edd2 100644
--- a/scripts/event/BalrogQuest.js
+++ b/scripts/event/BalrogQuest.js
@@ -20,7 +20,7 @@
/**
* @Author Ronan
* Event - Balrog Quest
-**/
+ **/
var entryMap = 910520000;
var exitMap = 105100100;
@@ -37,14 +37,14 @@ function getMaxLobbies() {
}
function init() {
- em.setProperty("noEntry","false");
+ em.setProperty("noEntry", "false");
}
function setup(level, lobbyid) {
var eim = em.newInstance("BalrogQuest_" + lobbyid);
eim.setProperty("level", level);
eim.setProperty("boss", "0");
-
+
return eim;
}
@@ -54,14 +54,14 @@ function afterSetup(eim) {}
function playerEntry(eim, player) {
var mapObj = eim.getInstanceMap(entryMap);
-
+
mapObj.resetPQ(1);
mapObj.instanceMapForceRespawn();
mapObj.closeMapSpawnPoints();
respawnStages(eim);
-
+
player.changeMap(entryMap, 1);
- em.setProperty("noEntry","true");
+ em.setProperty("noEntry", "true");
const PacketCreator = Java.type('tools.PacketCreator');
player.sendPacket(PacketCreator.getClock(eventTime * 60));
@@ -73,7 +73,7 @@ function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
eim.unregisterPlayer(player);
eim.dispose();
- em.setProperty("noEntry","false");
+ em.setProperty("noEntry", "false");
}
function scheduledTimeout(eim) {
@@ -87,21 +87,24 @@ function playerDisconnected(eim, player) {
}
function changedMap(eim, chr, mapid) {
- if(mapid < minMapId || mapid > maxMapId) playerExit(eim, chr);
+ if (mapid < minMapId || mapid > maxMapId) {
+ playerExit(eim, chr);
+ }
}
function isBalrog(mob) {
- return mob.getId() == 9300326;
+ return mob.getId() == 9300326;
}
function monsterKilled(mob, eim) {
- if(isBalrog(mob)) {
+ if (isBalrog(mob)) {
const Point = Java.type('java.awt.Point');
eim.spawnNpc(1061015, new Point(0, 115), mob.getMap());
}
}
+
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function allMonstersDead(eim) {}
diff --git a/scripts/event/Boats.js b/scripts/event/Boats.js
index b989c74895..add84aae12 100644
--- a/scripts/event/Boats.js
+++ b/scripts/event/Boats.js
@@ -17,10 +17,10 @@ var invasionDelay = 5 * 1000; //The time that spawn balrog
function init() {
closeTime = em.getTransportationTime(closeTime);
beginTime = em.getTransportationTime(beginTime);
- rideTime = em.getTransportationTime(rideTime);
+ rideTime = em.getTransportationTime(rideTime);
invasionStartTime = em.getTransportationTime(invasionStartTime);
invasionDelayTime = em.getTransportationTime(invasionDelayTime);
-
+
Orbis_btf = em.getChannelServer().getMapFactory().getMap(200000112);
Ellinia_btf = em.getChannelServer().getMapFactory().getMap(101000301);
Boat_to_Orbis = em.getChannelServer().getMapFactory().getMap(200090010);
@@ -30,16 +30,16 @@ function init() {
Ellinia_docked = em.getChannelServer().getMapFactory().getMap(101000300);
Orbis_Station = em.getChannelServer().getMapFactory().getMap(200000100);
Orbis_docked = em.getChannelServer().getMapFactory().getMap(200000111);
-
+
Ellinia_docked.setDocked(true);
Orbis_docked.setDocked(true);
-
+
scheduleNew();
}
function scheduleNew() {
em.setProperty("docked", "true");
-
+
em.setProperty("entry", "true");
em.setProperty("haveBalrog", "false");
em.schedule("stopentry", closeTime);
@@ -47,7 +47,7 @@ function scheduleNew() {
}
function stopentry() {
- em.setProperty("entry","false");
+ em.setProperty("entry", "false");
Orbis_Boat_Cabin.clearMapObjects(); //boxes
Ellinia_Boat_Cabin.clearMapObjects();
}
@@ -57,9 +57,9 @@ function takeoff() {
Ellinia_btf.warpEveryone(Boat_to_Orbis.getId());
Ellinia_docked.broadcastShip(false);
Orbis_docked.broadcastShip(false);
-
- em.setProperty("docked","false");
-
+
+ em.setProperty("docked", "false");
+
if (Math.random() < 0.42) {
em.schedule("approach", (invasionStartTime + Math.trunc((Math.random() * invasionDelayTime))));
}
@@ -83,13 +83,13 @@ function arrived() {
function approach() {
if (Math.floor(Math.random() * 10) < 10) {
- em.setProperty("haveBalrog","true");
+ em.setProperty("haveBalrog", "true");
Boat_to_Orbis.broadcastEnemyShip(true);
Boat_to_Ellinia.broadcastEnemyShip(true);
const PacketCreator = Java.type('tools.PacketCreator');
Boat_to_Orbis.broadcastMessage(PacketCreator.musicChange("Bgm04/ArabPirate"));
Boat_to_Ellinia.broadcastMessage(PacketCreator.musicChange("Bgm04/ArabPirate"));
-
+
em.schedule("invasion", invasionDelay);
}
}
diff --git a/scripts/event/BossRushPQ.js b/scripts/event/BossRushPQ.js
index e79f17f81b..b9b308026b 100644
--- a/scripts/event/BossRushPQ.js
+++ b/scripts/event/BossRushPQ.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Boss Rush PQ
-*/
+ */
var isPq = true;
var minPlayers = 1, maxPlayers = 6;
@@ -39,192 +39,203 @@ var eventTime = 5; //5 minutes
const maxLobbies = 7;
function init() {
- setEventRequirements();
+ setEventRequirements();
}
function getMaxLobbies() {
- return maxLobbies;
+ return maxLobbies;
}
function setEventRequirements() {
- var reqStr = "";
-
- reqStr += "\r\n Number of players: ";
- if(maxPlayers - minPlayers >= 1) reqStr += minPlayers + " ~ " + maxPlayers;
- else reqStr += minPlayers;
-
- reqStr += "\r\n Level range: ";
- if(maxLevel - minLevel >= 1) reqStr += minLevel + " ~ " + maxLevel;
- else reqStr += minLevel;
-
- reqStr += "\r\n Time limit: ";
- reqStr += eventTime + " minutes";
-
- em.setProperty("party", reqStr);
+ var reqStr = "";
+
+ reqStr += "\r\n Number of players: ";
+ if (maxPlayers - minPlayers >= 1) {
+ reqStr += minPlayers + " ~ " + maxPlayers;
+ } else {
+ reqStr += minPlayers;
+ }
+
+ reqStr += "\r\n Level range: ";
+ if (maxLevel - minLevel >= 1) {
+ reqStr += minLevel + " ~ " + maxLevel;
+ } else {
+ reqStr += minLevel;
+ }
+
+ reqStr += "\r\n Time limit: ";
+ reqStr += eventTime + " minutes";
+
+ em.setProperty("party", reqStr);
}
function setEventExclusives(eim) {}
function setEventRewards(eim) {
- var itemSet, itemQty, evLevel;
+ var itemSet, itemQty, evLevel;
- evLevel = 6; //Rewards at event completion
- itemSet = [3010061, 1122018, 1122005, 1022088, 1402013, 1032030, 1032070, 1102046, 2330004, 2041013, 2041016, 2041019, 2041022, 2049100, 2049003, 2020012, 2020013, 2020014, 2020015, 2022029, 2022045, 2022068, 2022069, 2022180, 2022179, 4004000, 4004001, 4004002, 4004003, 4004004, 4003000];
- itemQty = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 25, 25, 25, 25, 25, 25, 25, 25, 4, 4, 12, 12, 12, 12, 12, 25];
- eim.setEventRewards(evLevel, itemSet, itemQty);
+ evLevel = 6; //Rewards at event completion
+ itemSet = [3010061, 1122018, 1122005, 1022088, 1402013, 1032030, 1032070, 1102046, 2330004, 2041013, 2041016, 2041019, 2041022, 2049100, 2049003, 2020012, 2020013, 2020014, 2020015, 2022029, 2022045, 2022068, 2022069, 2022180, 2022179, 4004000, 4004001, 4004002, 4004003, 4004004, 4003000];
+ itemQty = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 25, 25, 25, 25, 25, 25, 25, 25, 4, 4, 12, 12, 12, 12, 12, 25];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
- evLevel = 5; //Rewards at Rest Spot V
- itemSet = [3010063, 1122018, 1122005, 1022088, 1402013, 1032030, 1032070, 1102046, 2330004, 2041013, 2041016, 2041019, 2041022, 2049100, 2049003, 2020012, 2020013, 2020014, 2020015, 2022029, 2022045, 2022068, 2022069, 2022180, 2022179, 4004000, 4004001, 4004002, 4004003, 4004004, 4003000];
- itemQty = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 15, 15, 15, 15, 15, 15, 15, 15, 2, 2, 8, 8, 8, 8, 8, 12];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- evLevel = 4; //Rewards at Rest Spot IV
- itemSet = [1122001, 1122006, 1022103, 1442065, 1032042, 1032021, 1102168, 2070005, 2040025, 2040029, 2040301, 2040413, 2040701, 2040817, 2002028, 2020009, 2020010, 2020011, 2022004, 2022005, 2022025, 2022027, 2022048, 2022049, 4020000, 4020001, 4020002, 4020003, 4020004, 4020005, 4020006, 4020007, 4020008, 4003000];
- itemQty = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 5, 45, 45, 45, 45, 45, 45, 45, 45, 45, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- evLevel = 3; //Rewards at Rest Spot III
- itemSet = [1122002, 1022088, 1012076, 1402029, 1032041, 1032044, 1102167, 2070011, 2040026, 2040030, 2040302, 2040412, 2040702, 2040818, 2002028, 2020009, 2020010, 2020011, 2022004, 2022005, 2022025, 2022027, 2022048, 2022049, 4010000, 4010001, 4010002, 4010003, 4010004, 4010005, 4010006, 4010007, 4003000];
- itemQty = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 20, 20, 20, 20, 20, 20, 20, 20, 20, 5, 5, 5, 5, 5, 5, 5, 5, 5];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- evLevel = 2; //Rewards at Rest Spot II
- itemSet = [1122003, 1012077, 1012079, 1432014, 1032059, 1032002, 1102191, 2330002, 2040001, 2040311, 2040401, 2040601, 2040824, 2040901, 2010000, 2010001, 2010002, 2010003, 2010004, 2020001, 2020002, 2020003, 2022020, 2022022, 4020000, 4020001, 4020002, 4020003, 4020004, 4020005, 4020006, 4020007, 4020008, 4003000];
- itemQty = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- evLevel = 1; //Rewards at Rest Spot I
- itemSet = [1122004, 1012078, 1432008, 1432009, 1032040, 1032009, 1102166, 2070001, 2040002, 2040310, 2040400, 2040600, 2040825, 2040902, 2010000, 2010001, 2010002, 2010003, 2010004, 2020001, 2020002, 2020003, 2022020, 2022022, 4010000, 4010001, 4010002, 4010003, 4010004, 4010005, 4010006, 4010007, 4003000];
- itemQty = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 2, 2, 2, 2, 2, 2, 2, 2, 2];
- eim.setEventRewards(evLevel, itemSet, itemQty);
+ evLevel = 5; //Rewards at Rest Spot V
+ itemSet = [3010063, 1122018, 1122005, 1022088, 1402013, 1032030, 1032070, 1102046, 2330004, 2041013, 2041016, 2041019, 2041022, 2049100, 2049003, 2020012, 2020013, 2020014, 2020015, 2022029, 2022045, 2022068, 2022069, 2022180, 2022179, 4004000, 4004001, 4004002, 4004003, 4004004, 4003000];
+ itemQty = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 15, 15, 15, 15, 15, 15, 15, 15, 2, 2, 8, 8, 8, 8, 8, 12];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ evLevel = 4; //Rewards at Rest Spot IV
+ itemSet = [1122001, 1122006, 1022103, 1442065, 1032042, 1032021, 1102168, 2070005, 2040025, 2040029, 2040301, 2040413, 2040701, 2040817, 2002028, 2020009, 2020010, 2020011, 2022004, 2022005, 2022025, 2022027, 2022048, 2022049, 4020000, 4020001, 4020002, 4020003, 4020004, 4020005, 4020006, 4020007, 4020008, 4003000];
+ itemQty = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 5, 45, 45, 45, 45, 45, 45, 45, 45, 45, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ evLevel = 3; //Rewards at Rest Spot III
+ itemSet = [1122002, 1022088, 1012076, 1402029, 1032041, 1032044, 1102167, 2070011, 2040026, 2040030, 2040302, 2040412, 2040702, 2040818, 2002028, 2020009, 2020010, 2020011, 2022004, 2022005, 2022025, 2022027, 2022048, 2022049, 4010000, 4010001, 4010002, 4010003, 4010004, 4010005, 4010006, 4010007, 4003000];
+ itemQty = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 20, 20, 20, 20, 20, 20, 20, 20, 20, 5, 5, 5, 5, 5, 5, 5, 5, 5];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ evLevel = 2; //Rewards at Rest Spot II
+ itemSet = [1122003, 1012077, 1012079, 1432014, 1032059, 1032002, 1102191, 2330002, 2040001, 2040311, 2040401, 2040601, 2040824, 2040901, 2010000, 2010001, 2010002, 2010003, 2010004, 2020001, 2020002, 2020003, 2022020, 2022022, 4020000, 4020001, 4020002, 4020003, 4020004, 4020005, 4020006, 4020007, 4020008, 4003000];
+ itemQty = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ evLevel = 1; //Rewards at Rest Spot I
+ itemSet = [1122004, 1012078, 1432008, 1432009, 1032040, 1032009, 1102166, 2070001, 2040002, 2040310, 2040400, 2040600, 2040825, 2040902, 2010000, 2010001, 2010002, 2010003, 2010004, 2020001, 2020002, 2020003, 2022020, 2022022, 4010000, 4010001, 4010002, 4010003, 4010004, 4010005, 4010006, 4010007, 4003000];
+ itemQty = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 2, 2, 2, 2, 2, 2, 2, 2, 2];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
}
function getEligibleParty(party) { //selects, from the given party, the team that is allowed to attempt this event
- var eligible = [];
- var hasLeader = false;
-
- if(party.size() > 0) {
- var partyList = party.toArray();
+ var eligible = [];
+ var hasLeader = false;
- for(var i = 0; i < party.size(); i++) {
- var ch = partyList[i];
+ if (party.size() > 0) {
+ var partyList = party.toArray();
- if(ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
- if(ch.isLeader()) hasLeader = true;
- eligible.push(ch);
- }
+ for (var i = 0; i < party.size(); i++) {
+ var ch = partyList[i];
+
+ if (ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
+ if (ch.isLeader()) {
+ hasLeader = true;
}
+ eligible.push(ch);
+ }
}
-
- if(!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) eligible = [];
- return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
+ }
+
+ if (!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) {
+ eligible = [];
+ }
+ return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
}
function setup(level, lobbyid) {
- var eim = em.newInstance("BossRush" + lobbyid);
- eim.setProperty("level", level);
- eim.setProperty("lobby", lobbyid);
-
- eim.startEventTimer(eventTime * 60000);
- setEventRewards(eim);
- setEventExclusives(eim);
- return eim;
+ var eim = em.newInstance("BossRush" + lobbyid);
+ eim.setProperty("level", level);
+ eim.setProperty("lobby", lobbyid);
+
+ eim.startEventTimer(eventTime * 60000);
+ setEventRewards(eim);
+ setEventExclusives(eim);
+ return eim;
}
function afterSetup(eim) {}
function playerEntry(eim, player) {
- var map = eim.getMapInstance(entryMap + eim.getIntProperty("lobby"));
- player.changeMap(map, map.getPortal(0));
+ var map = eim.getMapInstance(entryMap + eim.getIntProperty("lobby"));
+ player.changeMap(map, map.getPortal(0));
}
function scheduledTimeout(eim) {
- end(eim);
+ end(eim);
}
function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
- eim.unregisterPlayer(player);
- player.changeMap(exitMap, 0);
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap, 0);
}
function playerLeft(eim, player) {
- if(!eim.isEventCleared()) {
- playerExit(eim, player);
- }
+ if (!eim.isEventCleared()) {
+ playerExit(eim, player);
+ }
}
function changedMap(eim, player, mapid) {
- if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (mapid < minMapId || mapid > maxMapId) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
}
+ }
}
function changedLeader(eim, leader) {
- var mapid = leader.getMapId();
- if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
- end(eim);
- }
+ var mapid = leader.getMapId();
+ if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
+ end(eim);
+ }
}
function playerDead(eim, player) {}
function playerRevive(eim, player) { // player presses ok on the death pop up.
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function playerDisconnected(eim, player) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player))
- end(eim);
- else
- playerExit(eim, player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ end(eim);
+ } else {
+ playerExit(eim, player);
+ }
}
function leftParty(eim, player) {
- if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
- end(eim);
- }
- else
- playerLeft(eim, player);
+ if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
+ end(eim);
+ } else {
+ playerLeft(eim, player);
+ }
}
function disbandParty(eim) {
- if (!eim.isEventCleared()) {
- end(eim);
- }
+ if (!eim.isEventCleared()) {
+ end(eim);
+ }
}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function end(eim) {
- var party = eim.getPlayers();
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ var party = eim.getPlayers();
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
}
function clearPQ(eim) {
- eim.stopEventTimer();
- eim.setEventCleared(); // from now on event just finishes when ALL players gets out of the range defined inside changedMap function.
+ eim.stopEventTimer();
+ eim.setEventCleared(); // from now on event just finishes when ALL players gets out of the range defined inside changedMap function.
}
function giveRandomEventReward(eim, player) {
- eim.giveEventReward(player);
+ eim.giveEventReward(player);
}
function monsterKilled(mob, eim) {}
diff --git a/scripts/event/CWKPQ.js b/scripts/event/CWKPQ.js
index c46404adf7..67a3fcdbc2 100644
--- a/scripts/event/CWKPQ.js
+++ b/scripts/event/CWKPQ.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Crimsonwood Keep PQ
-*/
+ */
var isPq = true;
var minPlayers = 6, maxPlayers = 30;
@@ -39,7 +39,7 @@ var eventTime = 2; // 2 minutes for first stg
const maxLobbies = 1;
function init() {
- setEventRequirements();
+ setEventRequirements();
}
function getMaxLobbies() {
@@ -47,40 +47,46 @@ function getMaxLobbies() {
}
function setEventRequirements() {
- var reqStr = "";
-
- reqStr += "\r\n Number of players: ";
- if(maxPlayers - minPlayers >= 1) reqStr += minPlayers + " ~ " + maxPlayers;
- else reqStr += minPlayers;
-
- reqStr += "\r\n Level range: ";
- if(maxLevel - minLevel >= 1) reqStr += minLevel + " ~ " + maxLevel;
- else reqStr += minLevel;
-
- reqStr += "\r\n Time limit: ";
- reqStr += eventTime + " minutes";
-
- em.setProperty("party", reqStr);
+ var reqStr = "";
+
+ reqStr += "\r\n Number of players: ";
+ if (maxPlayers - minPlayers >= 1) {
+ reqStr += minPlayers + " ~ " + maxPlayers;
+ } else {
+ reqStr += minPlayers;
+ }
+
+ reqStr += "\r\n Level range: ";
+ if (maxLevel - minLevel >= 1) {
+ reqStr += minLevel + " ~ " + maxLevel;
+ } else {
+ reqStr += minLevel;
+ }
+
+ reqStr += "\r\n Time limit: ";
+ reqStr += eventTime + " minutes";
+
+ em.setProperty("party", reqStr);
}
function setEventExclusives(eim) {
- var itemSet = [4001256, 4001257, 4001258, 4001259, 4001260];
- eim.setExclusiveItems(itemSet);
+ var itemSet = [4001256, 4001257, 4001258, 4001259, 4001260];
+ eim.setExclusiveItems(itemSet);
}
function setEventRewards(eim) {
- var itemSet, itemQty, evLevel, expStages, mesoStages;
+ var itemSet, itemQty, evLevel, expStages, mesoStages;
- evLevel = 1; //Rewards at clear PQ
- itemSet = [];
- itemQty = [];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- expStages = [2500, 8000, 18000, 25000, 30000, 40000]; //bonus exp given on CLEAR stage signal
- eim.setEventClearStageExp(expStages);
-
- mesoStages = [500, 1000, 2000, 5000, 8000, 20000]; //bonus meso given on CLEAR stage signal
- eim.setEventClearStageMeso(mesoStages);
+ evLevel = 1; //Rewards at clear PQ
+ itemSet = [];
+ itemQty = [];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ expStages = [2500, 8000, 18000, 25000, 30000, 40000]; //bonus exp given on CLEAR stage signal
+ eim.setEventClearStageExp(expStages);
+
+ mesoStages = [500, 1000, 2000, 5000, 8000, 20000]; //bonus meso given on CLEAR stage signal
+ eim.setEventClearStageMeso(mesoStages);
}
function afterSetup(eim) {}
@@ -90,36 +96,38 @@ function getNameFromList(index, array) {
}
function generateMapReactors(map) {
-
- var jobReactors = [ [0, 0, -1, -1, 0],
- [-1, 4, 3, 3, 3],
- [1, 3, 4, 2, 2],
- [2, -1, 0, 1, -1],
- [3, 2, 1, 0, -1],
- [4, 1, -1, 4, 1],
- [-1, 2, 4],
- [-1, -1]
- ];
-
+
+ var jobReactors = [[0, 0, -1, -1, 0],
+ [-1, 4, 3, 3, 3],
+ [1, 3, 4, 2, 2],
+ [2, -1, 0, 1, -1],
+ [3, 2, 1, 0, -1],
+ [4, 1, -1, 4, 1],
+ [-1, 2, 4],
+ [-1, -1]
+ ];
+
var rndIndex;
var jobFound;
- while(true) {
+ while (true) {
jobFound = {};
rndIndex = [];
-
- for(var i = 0; i < jobReactors.length; i++) {
+
+ for (var i = 0; i < jobReactors.length; i++) {
var jobReactorSlot = jobReactors[i];
-
+
var idx = Math.floor(Math.random() * jobReactorSlot.length);
jobFound["" + jobReactorSlot[idx]] = 1;
rndIndex.push(idx);
}
-
- if(Object.keys(jobFound).length == 6) break;
+
+ if (Object.keys(jobFound).length == 6) {
+ break;
+ }
}
-
+
var toDeploy = [];
-
+
toDeploy.push(getNameFromList(rndIndex[0], ["4skill0a", "4skill0b", "4fake1c", "4fake1d", "4skill0e"]));
toDeploy.push(getNameFromList(rndIndex[1], ["4fake0a", "4skill4b", "4skill3c", "4skill3d", "4skill3e"]));
toDeploy.push(getNameFromList(rndIndex[2], ["4skill1a", "4skill3b", "4skill4c", "4skill2d", "4skill2e"]));
@@ -128,22 +136,22 @@ function generateMapReactors(map) {
toDeploy.push(getNameFromList(rndIndex[5], ["4skill4a", "4skill1b", "4fake0c", "4skill4d", "4skill1e"]));
toDeploy.push(getNameFromList(rndIndex[6], ["4fake1a", "4skill2c", "4skill4e"]));
toDeploy.push(getNameFromList(rndIndex[7], ["4fake0b", "4fake0d"]));
-
- var toRandomize = new Array();
-
- for(var i = 0; i < toDeploy.length; i++) {
+
+ var toRandomize = [];
+
+ for (var i = 0; i < toDeploy.length; i++) {
var react = map.getReactorByName(toDeploy[i]);
-
+
react.setState(1);
toRandomize.push(react);
}
-
+
map.shuffleReactors(toRandomize);
}
function setup(channel) {
var eim = em.newInstance("CWKPQ" + channel);
-
+
eim.setProperty("current_instance", "0");
eim.setProperty("glpq1", "0");
eim.setProperty("glpq2", "0");
@@ -153,7 +161,7 @@ function setup(channel) {
eim.setProperty("glpq5", "0");
eim.setProperty("glpq5_room", "0");
eim.setProperty("glpq6", "0");
-
+
eim.setProperty("glpq_f0", "0");
eim.setProperty("glpq_f1", "0");
eim.setProperty("glpq_f2", "0");
@@ -180,10 +188,10 @@ function setup(channel) {
eim.getInstanceMap(610030600).resetPQ(level);
eim.getInstanceMap(610030700).resetPQ(level);
eim.getInstanceMap(610030800).resetPQ(level);
-
+
generateMapReactors(eim.getInstanceMap(610030400));
eim.getInstanceMap(610030550).shuffleReactors();
-
+
//add environments
var a = Array("a", "b", "c", "d", "e", "f", "g", "h", "i");
var map = eim.getInstanceMap(610030400);
@@ -198,20 +206,20 @@ function setup(channel) {
}
}
}
-
- var pos_x = Array(944,401,28,-332,-855);
- var pos_y = Array(-204,-384,-504,-384,-204);
+
+ var pos_x = Array(944, 401, 28, -332, -855);
+ var pos_y = Array(-204, -384, -504, -384, -204);
var map = eim.getInstanceMap(610030540);
for (var z = 0; z < pos_x.length; z++) {
var mob = em.getMonster(9400594);
eim.registerMonster(mob);
map.spawnMonsterOnGroundBelow(mob, new java.awt.Point(pos_x[z], pos_y[z]));
}
-
+
eim.startEventTimer(eventTime * 60000);
setEventRewards(eim);
setEventExclusives(eim);
-
+
eim.schedule("spawnGuardians", 60000);
return eim;
}
@@ -225,13 +233,13 @@ function playerEntry(eim, player) {
function spawnGuardians(eim) {
var map = eim.getMapInstance(610030100);
if (map.countPlayers() <= 0) {
- return;
+ return;
}
map.broadcastStringMessage(5, "The Master Guardians have detected you.");
for (var i = 0; i < 20; i++) { //spawn 20 guardians
- var mob = eim.getMonster(9400594);
- eim.registerMonster(mob);
- map.spawnMonsterOnGroundBelow(mob, new java.awt.Point(1000, 336));
+ var mob = eim.getMonster(9400594);
+ eim.registerMonster(mob);
+ map.spawnMonsterOnGroundBelow(mob, new java.awt.Point(1000, 336));
}
}
@@ -241,53 +249,52 @@ function scheduledTimeout(eim) {
function changedMap(eim, player, mapid) {
if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
eim.unregisterPlayer(player);
eim.dropMessage(5, "[Expedition] Either the leader has quit the expedition or there is no longer the minimum number of members required to continue it.");
end(eim);
- }
- else {
+ } else {
eim.dropMessage(5, "[Expedition] " + player.getName() + " has left the instance.");
eim.unregisterPlayer(player);
}
} else {
- switch(mapid) {
- case 610030200:
- if (eim.getIntProperty("current_instance") == 0) {
- eim.restartEventTimer(600000); //10 mins
- eim.setIntProperty("current_instance", 1);
- }
- break;
- case 610030300:
- if (eim.getIntProperty("current_instance") == 1) {
- eim.restartEventTimer(600000); //10 mins
- eim.setIntProperty("current_instance", 2);
- }
- break;
- case 610030400:
- if (eim.getIntProperty("current_instance") == 2) {
- eim.restartEventTimer(600000); //10 mins
- eim.setIntProperty("current_instance", 3);
- }
- break;
- case 610030500:
- if (eim.getIntProperty("current_instance") == 3) {
- eim.restartEventTimer(1200000); //20 mins
- eim.setIntProperty("current_instance", 4);
- }
- break;
- case 610030600:
- if (eim.getIntProperty("current_instance") == 4) {
- eim.restartEventTimer(3600000); //1 hr
- eim.setIntProperty("current_instance", 5);
- }
- break;
- case 610030800:
- if (eim.getIntProperty("current_instance") == 5) {
- eim.restartEventTimer(60000); //1 min
- eim.setIntProperty("current_instance", 6);
- }
- break;
+ switch (mapid) {
+ case 610030200:
+ if (eim.getIntProperty("current_instance") == 0) {
+ eim.restartEventTimer(600000); //10 mins
+ eim.setIntProperty("current_instance", 1);
+ }
+ break;
+ case 610030300:
+ if (eim.getIntProperty("current_instance") == 1) {
+ eim.restartEventTimer(600000); //10 mins
+ eim.setIntProperty("current_instance", 2);
+ }
+ break;
+ case 610030400:
+ if (eim.getIntProperty("current_instance") == 2) {
+ eim.restartEventTimer(600000); //10 mins
+ eim.setIntProperty("current_instance", 3);
+ }
+ break;
+ case 610030500:
+ if (eim.getIntProperty("current_instance") == 3) {
+ eim.restartEventTimer(1200000); //20 mins
+ eim.setIntProperty("current_instance", 4);
+ }
+ break;
+ case 610030600:
+ if (eim.getIntProperty("current_instance") == 4) {
+ eim.restartEventTimer(3600000); //1 hr
+ eim.setIntProperty("current_instance", 5);
+ }
+ break;
+ case 610030800:
+ if (eim.getIntProperty("current_instance") == 5) {
+ eim.restartEventTimer(60000); //1 min
+ eim.setIntProperty("current_instance", 6);
+ }
+ break;
}
}
}
@@ -301,8 +308,7 @@ function playerRevive(eim, player) {
eim.unregisterPlayer(player);
eim.dropMessage(5, "[Expedition] Either the leader has quit the expedition or there is no longer the minimum number of members required to continue it.");
end(eim);
- }
- else {
+ } else {
eim.dropMessage(5, "[Expedition] " + player.getName() + " has left the instance.");
eim.unregisterPlayer(player);
}
@@ -313,16 +319,15 @@ function playerDisconnected(eim, player) {
eim.unregisterPlayer(player);
eim.dropMessage(5, "[Expedition] Either the leader has quit the expedition or there is no longer the minimum number of members required to continue it.");
end(eim);
- }
- else {
+ } else {
eim.dropMessage(5, "[Expedition] " + player.getName() + " has left the instance.");
eim.unregisterPlayer(player);
}
}
-function leftParty (eim, player) {}
+function leftParty(eim, player) {}
-function disbandParty (eim) {}
+function disbandParty(eim) {}
function monsterValue(eim, mobId) {
return 1;
diff --git a/scripts/event/Cabin.js b/scripts/event/Cabin.js
index cb602edc1a..00b31d4fd9 100644
--- a/scripts/event/Cabin.js
+++ b/scripts/event/Cabin.js
@@ -21,23 +21,23 @@
*/
/**
--- Odin JavaScript --------------------------------------------------------------------------------
- Cabin between Orbis and Leafre
--- By ---------------------------------------------------------------------------------------------
- Information
--- Version Info -----------------------------------------------------------------------------------
- 1.5 - Fix for infinity looping [Information]
- 1.4 - Ship/boat is now showed
- - Removed temp message[Information]
- - Credits to Snow, superraz777 for old source
- - Credits to Titan, Kool for the ship/boat packet
- 1.3 - Removing some function since is not needed [Information]
- - Remove register player menthod [Information]
- 1.2 - It should be 2 ships not 1 [Information]
- 1.1 - Add timer variable for easy edit [Information]
- 1.0 - First Version by Information
----------------------------------------------------------------------------------------------------
-**/
+ -- Odin JavaScript --------------------------------------------------------------------------------
+ Cabin between Orbis and Leafre
+ -- By ---------------------------------------------------------------------------------------------
+ Information
+ -- Version Info -----------------------------------------------------------------------------------
+ 1.5 - Fix for infinity looping [Information]
+ 1.4 - Ship/boat is now showed
+ - Removed temp message[Information]
+ - Credits to Snow, superraz777 for old source
+ - Credits to Titan, Kool for the ship/boat packet
+ 1.3 - Removing some function since is not needed [Information]
+ - Remove register player menthod [Information]
+ 1.2 - It should be 2 ships not 1 [Information]
+ 1.1 - Add timer variable for easy edit [Information]
+ 1.0 - First Version by Information
+ ---------------------------------------------------------------------------------------------------
+ **/
var Orbis_btf;
var Leafre_btf;
@@ -49,13 +49,13 @@ var Leafre_docked;
//Time Setting is in millisecond
var closeTime = 4 * 60 * 1000; //The time to close the gate
var beginTime = 5 * 60 * 1000; //The time to begin the ride
-var rideTime = 5 * 60 * 1000; //The time that require move to destination
+var rideTime = 5 * 60 * 1000; //The time that require move to destination
function init() {
closeTime = em.getTransportationTime(closeTime);
beginTime = em.getTransportationTime(beginTime);
- rideTime = em.getTransportationTime(rideTime);
-
+ rideTime = em.getTransportationTime(rideTime);
+
Orbis_btf = em.getChannelServer().getMapFactory().getMap(200000132);
Leafre_btf = em.getChannelServer().getMapFactory().getMap(240000111);
Cabin_to_Orbis = em.getChannelServer().getMapFactory().getMap(200090210);
@@ -64,7 +64,7 @@ function init() {
Leafre_docked = em.getChannelServer().getMapFactory().getMap(240000110);
Orbis_Station = em.getChannelServer().getMapFactory().getMap(200000100);
Leafre_Station = em.getChannelServer().getMapFactory().getMap(240000100);
-
+
scheduleNew();
}
@@ -72,37 +72,37 @@ function scheduleNew() {
em.setProperty("docked", "true");
Orbis_docked.setDocked(true);
Leafre_docked.setDocked(true);
-
+
em.setProperty("entry", "true");
em.schedule("stopEntry", closeTime); //The time to close the gate
em.schedule("takeoff", beginTime); //The time to begin the ride
}
function stopEntry() {
- em.setProperty("entry","false");
+ em.setProperty("entry", "false");
}
function takeoff() {
Orbis_btf.warpEveryone(Cabin_to_Leafre.getId());
Leafre_btf.warpEveryone(Cabin_to_Orbis.getId());
-
+
Orbis_docked.broadcastShip(false);
Leafre_docked.broadcastShip(false);
-
- em.setProperty("docked","false");
+
+ em.setProperty("docked", "false");
Orbis_docked.setDocked(false);
Leafre_docked.setDocked(false);
-
+
em.schedule("arrived", rideTime); //The time that require move to destination
}
function arrived() {
Cabin_to_Orbis.warpEveryone(Orbis_Station.getId(), 0);
Cabin_to_Leafre.warpEveryone(Leafre_Station.getId(), 0);
-
+
Orbis_docked.broadcastShip(true);
Leafre_docked.broadcastShip(true);
-
+
scheduleNew();
}
diff --git a/scripts/event/CafePQ_1.js b/scripts/event/CafePQ_1.js
index 3838da01ff..293a931c83 100644
--- a/scripts/event/CafePQ_1.js
+++ b/scripts/event/CafePQ_1.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Cafe PQ 1
-*/
+ */
var isPq = true;
var minPlayers = 3, maxPlayers = 6;
@@ -41,207 +41,217 @@ var couponsNeeded = 400; // total of coupons to complete the event
const maxLobbies = 1;
function init() {
- setEventRequirements();
+ setEventRequirements();
}
function getMaxLobbies() {
- return maxLobbies;
+ return maxLobbies;
}
function setEventRequirements() {
- var reqStr = "";
-
- reqStr += "\r\n Number of players: ";
- if(maxPlayers - minPlayers >= 1) reqStr += minPlayers + " ~ " + maxPlayers;
- else reqStr += minPlayers;
-
- reqStr += "\r\n Level range: ";
- if(maxLevel - minLevel >= 1) reqStr += minLevel + " ~ " + maxLevel;
- else reqStr += minLevel;
-
- reqStr += "\r\n Time limit: ";
- reqStr += eventTime + " minutes";
-
- em.setProperty("party", reqStr);
+ var reqStr = "";
+
+ reqStr += "\r\n Number of players: ";
+ if (maxPlayers - minPlayers >= 1) {
+ reqStr += minPlayers + " ~ " + maxPlayers;
+ } else {
+ reqStr += minPlayers;
+ }
+
+ reqStr += "\r\n Level range: ";
+ if (maxLevel - minLevel >= 1) {
+ reqStr += minLevel + " ~ " + maxLevel;
+ } else {
+ reqStr += minLevel;
+ }
+
+ reqStr += "\r\n Time limit: ";
+ reqStr += eventTime + " minutes";
+
+ em.setProperty("party", reqStr);
}
function setEventExclusives(eim) {
- var itemSet = [4001007];
- eim.setExclusiveItems(itemSet);
+ var itemSet = [4001007];
+ eim.setExclusiveItems(itemSet);
}
function setEventRewards(eim) {
- var itemSet, itemQty, evLevel, expStages;
+ var itemSet, itemQty, evLevel, expStages;
- evLevel = 1; //Rewards at clear PQ
- itemSet = [4001014];
- itemQty = [1];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- expStages = [20000]; //bonus exp given on CLEAR stage signal
- eim.setEventClearStageExp(expStages);
+ evLevel = 1; //Rewards at clear PQ
+ itemSet = [4001014];
+ itemQty = [1];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ expStages = [20000]; //bonus exp given on CLEAR stage signal
+ eim.setEventClearStageExp(expStages);
}
function getEligibleParty(party) { //selects, from the given party, the team that is allowed to attempt this event
- var eligible = [];
- var hasLeader = false;
-
- if(party.size() > 0) {
- var partyList = party.toArray();
+ var eligible = [];
+ var hasLeader = false;
- for(var i = 0; i < party.size(); i++) {
- var ch = partyList[i];
+ if (party.size() > 0) {
+ var partyList = party.toArray();
- if(ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
- if(ch.isLeader()) hasLeader = true;
- eligible.push(ch);
- }
+ for (var i = 0; i < party.size(); i++) {
+ var ch = partyList[i];
+
+ if (ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
+ if (ch.isLeader()) {
+ hasLeader = true;
}
+ eligible.push(ch);
+ }
}
-
- if(!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) eligible = [];
- return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
+ }
+
+ if (!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) {
+ eligible = [];
+ }
+ return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
}
function setup(level, lobbyid) {
- var eim = em.newInstance("Lan1_" + lobbyid);
- eim.setProperty("level", level);
- eim.setProperty("stage", "0");
-
- eim.setIntProperty("couponsNeeded", couponsNeeded);
-
- var i;
- for (i = 0; i < eventMaps.length; i++) {
- var mapObj = eim.getInstanceMap(eventMaps[i]);
- mapObj.resetPQ(level);
- mapObj.toggleDrops();
- mapObj.instanceMapForceRespawn();
- }
-
- respawnStages(eim);
- eim.startEventTimer(eventTime * 60000);
- setEventRewards(eim);
- setEventExclusives(eim);
- return eim;
+ var eim = em.newInstance("Lan1_" + lobbyid);
+ eim.setProperty("level", level);
+ eim.setProperty("stage", "0");
+
+ eim.setIntProperty("couponsNeeded", couponsNeeded);
+
+ var i;
+ for (i = 0; i < eventMaps.length; i++) {
+ var mapObj = eim.getInstanceMap(eventMaps[i]);
+ mapObj.resetPQ(level);
+ mapObj.toggleDrops();
+ mapObj.instanceMapForceRespawn();
+ }
+
+ respawnStages(eim);
+ eim.startEventTimer(eventTime * 60000);
+ setEventRewards(eim);
+ setEventExclusives(eim);
+ return eim;
}
function afterSetup(eim) {}
function respawnStages(eim) {
- var i;
- for (i = 0; i < eventMaps.length; i++) {
- eim.getInstanceMap(eventMaps[i]).instanceMapRespawn();
- }
-
- eim.schedule("respawnStages", 15 * 1000);
+ var i;
+ for (i = 0; i < eventMaps.length; i++) {
+ eim.getInstanceMap(eventMaps[i]).instanceMapRespawn();
+ }
+
+ eim.schedule("respawnStages", 15 * 1000);
}
function playerEntry(eim, player) {
- var map = eim.getMapInstance(entryMap);
- player.changeMap(map, map.getPortal(0));
+ var map = eim.getMapInstance(entryMap);
+ player.changeMap(map, map.getPortal(0));
}
function scheduledTimeout(eim) {
- end(eim);
+ end(eim);
}
function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
- eim.unregisterPlayer(player);
- player.changeMap(exitMap, 0);
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap, 0);
}
function playerLeft(eim, player) {
- if(!eim.isEventCleared()) {
- playerExit(eim, player);
- }
+ if (!eim.isEventCleared()) {
+ playerExit(eim, player);
+ }
}
function changedMap(eim, player, mapid) {
- if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (mapid < minMapId || mapid > maxMapId) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
}
+ }
}
function changedLeader(eim, leader) {
- var mapid = leader.getMapId();
- if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
- end(eim);
- }
+ var mapid = leader.getMapId();
+ if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
+ end(eim);
+ }
}
function playerDead(eim, player) {}
function playerRevive(eim, player) { // player presses ok on the death pop up.
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function playerDisconnected(eim, player) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function leftParty(eim, player) {
- if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
- end(eim);
- }
- else
- playerLeft(eim, player);
+ if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
+ end(eim);
+ } else {
+ playerLeft(eim, player);
+ }
}
function disbandParty(eim) {
- if (!eim.isEventCleared()) {
- end(eim);
- }
+ if (!eim.isEventCleared()) {
+ end(eim);
+ }
}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function end(eim) {
- var party = eim.getPlayers();
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ var party = eim.getPlayers();
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
}
function giveRandomEventReward(eim, player) {
- eim.giveEventReward(player);
+ eim.giveEventReward(player);
}
function clearPQ(eim) {
- eim.stopEventTimer();
- eim.setEventCleared();
- eim.giveEventPlayersStageReward(1);
-
- var i;
- for (i = 0; i < eventMaps.length; i++) {
- eim.getInstanceMap(eventMaps[i]).killAllMonstersNotFriendly();
- eim.showClearEffect(eventMaps[i]);
- }
+ eim.stopEventTimer();
+ eim.setEventCleared();
+ eim.giveEventPlayersStageReward(1);
+
+ var i;
+ for (i = 0; i < eventMaps.length; i++) {
+ eim.getInstanceMap(eventMaps[i]).killAllMonstersNotFriendly();
+ eim.showClearEffect(eventMaps[i]);
+ }
}
function getDroppedQuantity(mob) {
- if(mob.getLevel() > 65) {
+ if (mob.getLevel() > 65) {
return 5;
- } else if(mob.getLevel() > 40) {
+ } else if (mob.getLevel() > 40) {
return 2;
} else {
return 1;
@@ -250,16 +260,19 @@ function getDroppedQuantity(mob) {
function monsterKilled(mob, eim) {
try {
- if(eim.isEventCleared()) return;
-
+ if (eim.isEventCleared()) {
+ return;
+ }
+
var mapObj = mob.getMap();
const Item = Java.type('client.inventory.Item');
var itemObj = new Item(4001007, 0, getDroppedQuantity(mob));
var dropper = eim.getPlayers().get(0);
mapObj.spawnItemDrop(mob, dropper, itemObj, mob.getPosition(), true, false);
-
- } catch(err) {} // PQ not started yet
+
+ } catch (err) {
+ } // PQ not started yet
}
function allMonstersDead(eim) {}
diff --git a/scripts/event/CafePQ_2.js b/scripts/event/CafePQ_2.js
index dfa7d6cd70..45a7979ab7 100644
--- a/scripts/event/CafePQ_2.js
+++ b/scripts/event/CafePQ_2.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Cafe PQ 2
-*/
+ */
var isPq = true;
var minPlayers = 3, maxPlayers = 6;
@@ -41,207 +41,217 @@ var couponsNeeded = 350; // total of coupons to complete the event
const maxLobbies = 1;
function init() {
- setEventRequirements();
+ setEventRequirements();
}
function getMaxLobbies() {
- return maxLobbies;
+ return maxLobbies;
}
function setEventRequirements() {
- var reqStr = "";
-
- reqStr += "\r\n Number of players: ";
- if(maxPlayers - minPlayers >= 1) reqStr += minPlayers + " ~ " + maxPlayers;
- else reqStr += minPlayers;
-
- reqStr += "\r\n Level range: ";
- if(maxLevel - minLevel >= 1) reqStr += minLevel + " ~ " + maxLevel;
- else reqStr += minLevel;
-
- reqStr += "\r\n Time limit: ";
- reqStr += eventTime + " minutes";
-
- em.setProperty("party", reqStr);
+ var reqStr = "";
+
+ reqStr += "\r\n Number of players: ";
+ if (maxPlayers - minPlayers >= 1) {
+ reqStr += minPlayers + " ~ " + maxPlayers;
+ } else {
+ reqStr += minPlayers;
+ }
+
+ reqStr += "\r\n Level range: ";
+ if (maxLevel - minLevel >= 1) {
+ reqStr += minLevel + " ~ " + maxLevel;
+ } else {
+ reqStr += minLevel;
+ }
+
+ reqStr += "\r\n Time limit: ";
+ reqStr += eventTime + " minutes";
+
+ em.setProperty("party", reqStr);
}
function setEventExclusives(eim) {
- var itemSet = [4001007];
- eim.setExclusiveItems(itemSet);
+ var itemSet = [4001007];
+ eim.setExclusiveItems(itemSet);
}
function setEventRewards(eim) {
- var itemSet, itemQty, evLevel, expStages;
+ var itemSet, itemQty, evLevel, expStages;
- evLevel = 1; //Rewards at clear PQ
- itemSet = [4001009];
- itemQty = [1];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- expStages = [15000]; //bonus exp given on CLEAR stage signal
- eim.setEventClearStageExp(expStages);
+ evLevel = 1; //Rewards at clear PQ
+ itemSet = [4001009];
+ itemQty = [1];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ expStages = [15000]; //bonus exp given on CLEAR stage signal
+ eim.setEventClearStageExp(expStages);
}
function getEligibleParty(party) { //selects, from the given party, the team that is allowed to attempt this event
- var eligible = [];
- var hasLeader = false;
-
- if(party.size() > 0) {
- var partyList = party.toArray();
+ var eligible = [];
+ var hasLeader = false;
- for(var i = 0; i < party.size(); i++) {
- var ch = partyList[i];
+ if (party.size() > 0) {
+ var partyList = party.toArray();
- if(ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
- if(ch.isLeader()) hasLeader = true;
- eligible.push(ch);
- }
+ for (var i = 0; i < party.size(); i++) {
+ var ch = partyList[i];
+
+ if (ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
+ if (ch.isLeader()) {
+ hasLeader = true;
}
+ eligible.push(ch);
+ }
}
-
- if(!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) eligible = [];
- return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
+ }
+
+ if (!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) {
+ eligible = [];
+ }
+ return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
}
function setup(level, lobbyid) {
- var eim = em.newInstance("Lan2_" + lobbyid);
- eim.setProperty("level", level);
- eim.setProperty("stage", "0");
-
- eim.setIntProperty("couponsNeeded", couponsNeeded);
-
- var i;
- for (i = 0; i < eventMaps.length; i++) {
- var mapObj = eim.getInstanceMap(eventMaps[i]);
- mapObj.resetPQ(level);
- mapObj.toggleDrops();
- mapObj.instanceMapForceRespawn();
- }
-
- respawnStages(eim);
- eim.startEventTimer(eventTime * 60000);
- setEventRewards(eim);
- setEventExclusives(eim);
- return eim;
+ var eim = em.newInstance("Lan2_" + lobbyid);
+ eim.setProperty("level", level);
+ eim.setProperty("stage", "0");
+
+ eim.setIntProperty("couponsNeeded", couponsNeeded);
+
+ var i;
+ for (i = 0; i < eventMaps.length; i++) {
+ var mapObj = eim.getInstanceMap(eventMaps[i]);
+ mapObj.resetPQ(level);
+ mapObj.toggleDrops();
+ mapObj.instanceMapForceRespawn();
+ }
+
+ respawnStages(eim);
+ eim.startEventTimer(eventTime * 60000);
+ setEventRewards(eim);
+ setEventExclusives(eim);
+ return eim;
}
function afterSetup(eim) {}
function respawnStages(eim) {
- var i;
- for (i = 0; i < eventMaps.length; i++) {
- eim.getInstanceMap(eventMaps[i]).instanceMapRespawn();
- }
-
- eim.schedule("respawnStages", 15 * 1000);
+ var i;
+ for (i = 0; i < eventMaps.length; i++) {
+ eim.getInstanceMap(eventMaps[i]).instanceMapRespawn();
+ }
+
+ eim.schedule("respawnStages", 15 * 1000);
}
function playerEntry(eim, player) {
- var map = eim.getMapInstance(entryMap);
- player.changeMap(map, map.getPortal(0));
+ var map = eim.getMapInstance(entryMap);
+ player.changeMap(map, map.getPortal(0));
}
function scheduledTimeout(eim) {
- end(eim);
+ end(eim);
}
function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
- eim.unregisterPlayer(player);
- player.changeMap(exitMap, 0);
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap, 0);
}
function playerLeft(eim, player) {
- if(!eim.isEventCleared()) {
- playerExit(eim, player);
- }
+ if (!eim.isEventCleared()) {
+ playerExit(eim, player);
+ }
}
function changedMap(eim, player, mapid) {
- if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (mapid < minMapId || mapid > maxMapId) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
}
+ }
}
function changedLeader(eim, leader) {
- var mapid = leader.getMapId();
- if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
- end(eim);
- }
+ var mapid = leader.getMapId();
+ if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
+ end(eim);
+ }
}
function playerDead(eim, player) {}
function playerRevive(eim, player) { // player presses ok on the death pop up.
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function playerDisconnected(eim, player) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function leftParty(eim, player) {
- if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
- end(eim);
- }
- else
- playerLeft(eim, player);
+ if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
+ end(eim);
+ } else {
+ playerLeft(eim, player);
+ }
}
function disbandParty(eim) {
- if (!eim.isEventCleared()) {
- end(eim);
- }
+ if (!eim.isEventCleared()) {
+ end(eim);
+ }
}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function end(eim) {
- var party = eim.getPlayers();
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ var party = eim.getPlayers();
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
}
function giveRandomEventReward(eim, player) {
- eim.giveEventReward(player);
+ eim.giveEventReward(player);
}
function clearPQ(eim) {
- eim.stopEventTimer();
- eim.setEventCleared();
- eim.giveEventPlayersStageReward(1);
-
- var i;
- for (i = 0; i < eventMaps.length; i++) {
- eim.getInstanceMap(eventMaps[i]).killAllMonstersNotFriendly();
- eim.showClearEffect(eventMaps[i]);
- }
+ eim.stopEventTimer();
+ eim.setEventCleared();
+ eim.giveEventPlayersStageReward(1);
+
+ var i;
+ for (i = 0; i < eventMaps.length; i++) {
+ eim.getInstanceMap(eventMaps[i]).killAllMonstersNotFriendly();
+ eim.showClearEffect(eventMaps[i]);
+ }
}
function getDroppedQuantity(mob) {
- if(mob.getLevel() > 65) {
+ if (mob.getLevel() > 65) {
return 5;
- } else if(mob.getLevel() > 40) {
+ } else if (mob.getLevel() > 40) {
return 2;
} else {
return 1;
@@ -250,16 +260,19 @@ function getDroppedQuantity(mob) {
function monsterKilled(mob, eim) {
try {
- if(eim.isEventCleared()) return;
-
+ if (eim.isEventCleared()) {
+ return;
+ }
+
var mapObj = mob.getMap();
const Item = Java.type('client.inventory.Item');
var itemObj = new Item(4001007, 0, getDroppedQuantity(mob));
var dropper = eim.getPlayers().get(0);
mapObj.spawnItemDrop(mob, dropper, itemObj, mob.getPosition(), true, false);
-
- } catch(err) {} // PQ not started yet
+
+ } catch (err) {
+ } // PQ not started yet
}
function allMonstersDead(eim) {}
diff --git a/scripts/event/CafePQ_3.js b/scripts/event/CafePQ_3.js
index 2756114c48..b1cc5ada6a 100644
--- a/scripts/event/CafePQ_3.js
+++ b/scripts/event/CafePQ_3.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Cafe PQ 3
-*/
+ */
var isPq = true;
var minPlayers = 3, maxPlayers = 6;
@@ -41,207 +41,217 @@ var couponsNeeded = 350; // total of coupons to complete the event
const maxLobbies = 1;
function init() {
- setEventRequirements();
+ setEventRequirements();
}
function getMaxLobbies() {
- return maxLobbies;
+ return maxLobbies;
}
function setEventRequirements() {
- var reqStr = "";
-
- reqStr += "\r\n Number of players: ";
- if(maxPlayers - minPlayers >= 1) reqStr += minPlayers + " ~ " + maxPlayers;
- else reqStr += minPlayers;
-
- reqStr += "\r\n Level range: ";
- if(maxLevel - minLevel >= 1) reqStr += minLevel + " ~ " + maxLevel;
- else reqStr += minLevel;
-
- reqStr += "\r\n Time limit: ";
- reqStr += eventTime + " minutes";
-
- em.setProperty("party", reqStr);
+ var reqStr = "";
+
+ reqStr += "\r\n Number of players: ";
+ if (maxPlayers - minPlayers >= 1) {
+ reqStr += minPlayers + " ~ " + maxPlayers;
+ } else {
+ reqStr += minPlayers;
+ }
+
+ reqStr += "\r\n Level range: ";
+ if (maxLevel - minLevel >= 1) {
+ reqStr += minLevel + " ~ " + maxLevel;
+ } else {
+ reqStr += minLevel;
+ }
+
+ reqStr += "\r\n Time limit: ";
+ reqStr += eventTime + " minutes";
+
+ em.setProperty("party", reqStr);
}
function setEventExclusives(eim) {
- var itemSet = [4001007];
- eim.setExclusiveItems(itemSet);
+ var itemSet = [4001007];
+ eim.setExclusiveItems(itemSet);
}
function setEventRewards(eim) {
- var itemSet, itemQty, evLevel, expStages;
+ var itemSet, itemQty, evLevel, expStages;
- evLevel = 1; //Rewards at clear PQ
- itemSet = [4001013];
- itemQty = [1];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- expStages = [12000]; //bonus exp given on CLEAR stage signal
- eim.setEventClearStageExp(expStages);
+ evLevel = 1; //Rewards at clear PQ
+ itemSet = [4001013];
+ itemQty = [1];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ expStages = [12000]; //bonus exp given on CLEAR stage signal
+ eim.setEventClearStageExp(expStages);
}
function getEligibleParty(party) { //selects, from the given party, the team that is allowed to attempt this event
- var eligible = [];
- var hasLeader = false;
-
- if(party.size() > 0) {
- var partyList = party.toArray();
+ var eligible = [];
+ var hasLeader = false;
- for(var i = 0; i < party.size(); i++) {
- var ch = partyList[i];
+ if (party.size() > 0) {
+ var partyList = party.toArray();
- if(ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
- if(ch.isLeader()) hasLeader = true;
- eligible.push(ch);
- }
+ for (var i = 0; i < party.size(); i++) {
+ var ch = partyList[i];
+
+ if (ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
+ if (ch.isLeader()) {
+ hasLeader = true;
}
+ eligible.push(ch);
+ }
}
-
- if(!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) eligible = [];
- return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
+ }
+
+ if (!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) {
+ eligible = [];
+ }
+ return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
}
function setup(level, lobbyid) {
- var eim = em.newInstance("Lan3_" + lobbyid);
- eim.setProperty("level", level);
- eim.setProperty("stage", "0");
-
- eim.setIntProperty("couponsNeeded", couponsNeeded);
-
- var i;
- for (i = 0; i < eventMaps.length; i++) {
- var mapObj = eim.getInstanceMap(eventMaps[i]);
- mapObj.resetPQ(level);
- mapObj.toggleDrops();
- mapObj.instanceMapForceRespawn();
- }
-
- respawnStages(eim);
- eim.startEventTimer(eventTime * 60000);
- setEventRewards(eim);
- setEventExclusives(eim);
- return eim;
+ var eim = em.newInstance("Lan3_" + lobbyid);
+ eim.setProperty("level", level);
+ eim.setProperty("stage", "0");
+
+ eim.setIntProperty("couponsNeeded", couponsNeeded);
+
+ var i;
+ for (i = 0; i < eventMaps.length; i++) {
+ var mapObj = eim.getInstanceMap(eventMaps[i]);
+ mapObj.resetPQ(level);
+ mapObj.toggleDrops();
+ mapObj.instanceMapForceRespawn();
+ }
+
+ respawnStages(eim);
+ eim.startEventTimer(eventTime * 60000);
+ setEventRewards(eim);
+ setEventExclusives(eim);
+ return eim;
}
function afterSetup(eim) {}
function respawnStages(eim) {
- var i;
- for (i = 0; i < eventMaps.length; i++) {
- eim.getInstanceMap(eventMaps[i]).instanceMapRespawn();
- }
-
- eim.schedule("respawnStages", 15 * 1000);
+ var i;
+ for (i = 0; i < eventMaps.length; i++) {
+ eim.getInstanceMap(eventMaps[i]).instanceMapRespawn();
+ }
+
+ eim.schedule("respawnStages", 15 * 1000);
}
function playerEntry(eim, player) {
- var map = eim.getMapInstance(entryMap);
- player.changeMap(map, map.getPortal(0));
+ var map = eim.getMapInstance(entryMap);
+ player.changeMap(map, map.getPortal(0));
}
function scheduledTimeout(eim) {
- end(eim);
+ end(eim);
}
function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
- eim.unregisterPlayer(player);
- player.changeMap(exitMap, 0);
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap, 0);
}
function playerLeft(eim, player) {
- if(!eim.isEventCleared()) {
- playerExit(eim, player);
- }
+ if (!eim.isEventCleared()) {
+ playerExit(eim, player);
+ }
}
function changedMap(eim, player, mapid) {
- if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (mapid < minMapId || mapid > maxMapId) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
}
+ }
}
function changedLeader(eim, leader) {
- var mapid = leader.getMapId();
- if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
- end(eim);
- }
+ var mapid = leader.getMapId();
+ if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
+ end(eim);
+ }
}
function playerDead(eim, player) {}
function playerRevive(eim, player) { // player presses ok on the death pop up.
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function playerDisconnected(eim, player) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function leftParty(eim, player) {
- if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
- end(eim);
- }
- else
- playerLeft(eim, player);
+ if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
+ end(eim);
+ } else {
+ playerLeft(eim, player);
+ }
}
function disbandParty(eim) {
- if (!eim.isEventCleared()) {
- end(eim);
- }
+ if (!eim.isEventCleared()) {
+ end(eim);
+ }
}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function end(eim) {
- var party = eim.getPlayers();
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ var party = eim.getPlayers();
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
}
function giveRandomEventReward(eim, player) {
- eim.giveEventReward(player);
+ eim.giveEventReward(player);
}
function clearPQ(eim) {
- eim.stopEventTimer();
- eim.setEventCleared();
- eim.giveEventPlayersStageReward(1);
-
- var i;
- for (i = 0; i < eventMaps.length; i++) {
- eim.getInstanceMap(eventMaps[i]).killAllMonstersNotFriendly();
- eim.showClearEffect(eventMaps[i]);
- }
+ eim.stopEventTimer();
+ eim.setEventCleared();
+ eim.giveEventPlayersStageReward(1);
+
+ var i;
+ for (i = 0; i < eventMaps.length; i++) {
+ eim.getInstanceMap(eventMaps[i]).killAllMonstersNotFriendly();
+ eim.showClearEffect(eventMaps[i]);
+ }
}
function getDroppedQuantity(mob) {
- if(mob.getLevel() > 65) {
+ if (mob.getLevel() > 65) {
return 3;
- } else if(mob.getLevel() > 40) {
+ } else if (mob.getLevel() > 40) {
return 2;
} else {
return 1;
@@ -250,16 +260,19 @@ function getDroppedQuantity(mob) {
function monsterKilled(mob, eim) {
try {
- if(eim.isEventCleared()) return;
-
+ if (eim.isEventCleared()) {
+ return;
+ }
+
var mapObj = mob.getMap();
const Item = Java.type('client.inventory.Item');
var itemObj = new Item(4001007, 0, getDroppedQuantity(mob));
var dropper = eim.getPlayers().get(0);
mapObj.spawnItemDrop(mob, dropper, itemObj, mob.getPosition(), true, false);
-
- } catch(err) {} // PQ not started yet
+
+ } catch (err) {
+ } // PQ not started yet
}
function allMonstersDead(eim) {}
diff --git a/scripts/event/CafePQ_4.js b/scripts/event/CafePQ_4.js
index 330180dfb0..1b31e4d101 100644
--- a/scripts/event/CafePQ_4.js
+++ b/scripts/event/CafePQ_4.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Cafe PQ 4
-*/
+ */
var isPq = true;
var minPlayers = 3, maxPlayers = 6;
@@ -41,207 +41,217 @@ var couponsNeeded = 450; // total of coupons to complete the event
const maxLobbies = 1;
function init() {
- setEventRequirements();
+ setEventRequirements();
}
function getMaxLobbies() {
- return maxLobbies;
+ return maxLobbies;
}
function setEventRequirements() {
- var reqStr = "";
-
- reqStr += "\r\n Number of players: ";
- if(maxPlayers - minPlayers >= 1) reqStr += minPlayers + " ~ " + maxPlayers;
- else reqStr += minPlayers;
-
- reqStr += "\r\n Level range: ";
- if(maxLevel - minLevel >= 1) reqStr += minLevel + " ~ " + maxLevel;
- else reqStr += minLevel;
-
- reqStr += "\r\n Time limit: ";
- reqStr += eventTime + " minutes";
-
- em.setProperty("party", reqStr);
+ var reqStr = "";
+
+ reqStr += "\r\n Number of players: ";
+ if (maxPlayers - minPlayers >= 1) {
+ reqStr += minPlayers + " ~ " + maxPlayers;
+ } else {
+ reqStr += minPlayers;
+ }
+
+ reqStr += "\r\n Level range: ";
+ if (maxLevel - minLevel >= 1) {
+ reqStr += minLevel + " ~ " + maxLevel;
+ } else {
+ reqStr += minLevel;
+ }
+
+ reqStr += "\r\n Time limit: ";
+ reqStr += eventTime + " minutes";
+
+ em.setProperty("party", reqStr);
}
function setEventExclusives(eim) {
- var itemSet = [4001007];
- eim.setExclusiveItems(itemSet);
+ var itemSet = [4001007];
+ eim.setExclusiveItems(itemSet);
}
function setEventRewards(eim) {
- var itemSet, itemQty, evLevel, expStages;
+ var itemSet, itemQty, evLevel, expStages;
- evLevel = 1; //Rewards at clear PQ
- itemSet = [4001011];
- itemQty = [1];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- expStages = [21000]; //bonus exp given on CLEAR stage signal
- eim.setEventClearStageExp(expStages);
+ evLevel = 1; //Rewards at clear PQ
+ itemSet = [4001011];
+ itemQty = [1];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ expStages = [21000]; //bonus exp given on CLEAR stage signal
+ eim.setEventClearStageExp(expStages);
}
function getEligibleParty(party) { //selects, from the given party, the team that is allowed to attempt this event
- var eligible = [];
- var hasLeader = false;
-
- if(party.size() > 0) {
- var partyList = party.toArray();
+ var eligible = [];
+ var hasLeader = false;
- for(var i = 0; i < party.size(); i++) {
- var ch = partyList[i];
+ if (party.size() > 0) {
+ var partyList = party.toArray();
- if(ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
- if(ch.isLeader()) hasLeader = true;
- eligible.push(ch);
- }
+ for (var i = 0; i < party.size(); i++) {
+ var ch = partyList[i];
+
+ if (ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
+ if (ch.isLeader()) {
+ hasLeader = true;
}
+ eligible.push(ch);
+ }
}
-
- if(!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) eligible = [];
- return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
+ }
+
+ if (!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) {
+ eligible = [];
+ }
+ return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
}
function setup(level, lobbyid) {
- var eim = em.newInstance("Lan4_" + lobbyid);
- eim.setProperty("level", level);
- eim.setProperty("stage", "0");
-
- eim.setIntProperty("couponsNeeded", couponsNeeded);
-
- var i;
- for (i = 0; i < eventMaps.length; i++) {
- var mapObj = eim.getInstanceMap(eventMaps[i]);
- mapObj.resetPQ(level);
- mapObj.toggleDrops();
- mapObj.instanceMapForceRespawn();
- }
-
- respawnStages(eim);
- eim.startEventTimer(eventTime * 60000);
- setEventRewards(eim);
- setEventExclusives(eim);
- return eim;
+ var eim = em.newInstance("Lan4_" + lobbyid);
+ eim.setProperty("level", level);
+ eim.setProperty("stage", "0");
+
+ eim.setIntProperty("couponsNeeded", couponsNeeded);
+
+ var i;
+ for (i = 0; i < eventMaps.length; i++) {
+ var mapObj = eim.getInstanceMap(eventMaps[i]);
+ mapObj.resetPQ(level);
+ mapObj.toggleDrops();
+ mapObj.instanceMapForceRespawn();
+ }
+
+ respawnStages(eim);
+ eim.startEventTimer(eventTime * 60000);
+ setEventRewards(eim);
+ setEventExclusives(eim);
+ return eim;
}
function afterSetup(eim) {}
function respawnStages(eim) {
- var i;
- for (i = 0; i < eventMaps.length; i++) {
- eim.getInstanceMap(eventMaps[i]).instanceMapRespawn();
- }
-
- eim.schedule("respawnStages", 15 * 1000);
+ var i;
+ for (i = 0; i < eventMaps.length; i++) {
+ eim.getInstanceMap(eventMaps[i]).instanceMapRespawn();
+ }
+
+ eim.schedule("respawnStages", 15 * 1000);
}
function playerEntry(eim, player) {
- var map = eim.getMapInstance(entryMap);
- player.changeMap(map, map.getPortal(0));
+ var map = eim.getMapInstance(entryMap);
+ player.changeMap(map, map.getPortal(0));
}
function scheduledTimeout(eim) {
- end(eim);
+ end(eim);
}
function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
- eim.unregisterPlayer(player);
- player.changeMap(exitMap, 0);
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap, 0);
}
function playerLeft(eim, player) {
- if(!eim.isEventCleared()) {
- playerExit(eim, player);
- }
+ if (!eim.isEventCleared()) {
+ playerExit(eim, player);
+ }
}
function changedMap(eim, player, mapid) {
- if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (mapid < minMapId || mapid > maxMapId) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
}
+ }
}
function changedLeader(eim, leader) {
- var mapid = leader.getMapId();
- if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
- end(eim);
- }
+ var mapid = leader.getMapId();
+ if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
+ end(eim);
+ }
}
function playerDead(eim, player) {}
function playerRevive(eim, player) { // player presses ok on the death pop up.
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function playerDisconnected(eim, player) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function leftParty(eim, player) {
- if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
- end(eim);
- }
- else
- playerLeft(eim, player);
+ if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
+ end(eim);
+ } else {
+ playerLeft(eim, player);
+ }
}
function disbandParty(eim) {
- if (!eim.isEventCleared()) {
- end(eim);
- }
+ if (!eim.isEventCleared()) {
+ end(eim);
+ }
}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function end(eim) {
- var party = eim.getPlayers();
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ var party = eim.getPlayers();
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
}
function giveRandomEventReward(eim, player) {
- eim.giveEventReward(player);
+ eim.giveEventReward(player);
}
function clearPQ(eim) {
- eim.stopEventTimer();
- eim.setEventCleared();
- eim.giveEventPlayersStageReward(1);
-
- var i;
- for (i = 0; i < eventMaps.length; i++) {
- eim.getInstanceMap(eventMaps[i]).killAllMonstersNotFriendly();
- eim.showClearEffect(eventMaps[i]);
- }
+ eim.stopEventTimer();
+ eim.setEventCleared();
+ eim.giveEventPlayersStageReward(1);
+
+ var i;
+ for (i = 0; i < eventMaps.length; i++) {
+ eim.getInstanceMap(eventMaps[i]).killAllMonstersNotFriendly();
+ eim.showClearEffect(eventMaps[i]);
+ }
}
function getDroppedQuantity(mob) {
- if(mob.getLevel() > 65) {
+ if (mob.getLevel() > 65) {
return 5;
- } else if(mob.getLevel() > 40) {
+ } else if (mob.getLevel() > 40) {
return 2;
} else {
return 1;
@@ -250,16 +260,19 @@ function getDroppedQuantity(mob) {
function monsterKilled(mob, eim) {
try {
- if(eim.isEventCleared()) return;
-
+ if (eim.isEventCleared()) {
+ return;
+ }
+
var mapObj = mob.getMap();
const Item = Java.type('client.inventory.Item');
var itemObj = new Item(4001007, 0, getDroppedQuantity(mob));
var dropper = eim.getPlayers().get(0);
mapObj.spawnItemDrop(mob, dropper, itemObj, mob.getPosition(), true, false);
-
- } catch(err) {} // PQ not started yet
+
+ } catch (err) {
+ } // PQ not started yet
}
function allMonstersDead(eim) {}
diff --git a/scripts/event/CafePQ_5.js b/scripts/event/CafePQ_5.js
index 57b2fd8ff8..2aa91f2c9c 100644
--- a/scripts/event/CafePQ_5.js
+++ b/scripts/event/CafePQ_5.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Cafe PQ 5
-*/
+ */
var isPq = true;
var minPlayers = 3, maxPlayers = 6;
@@ -41,207 +41,217 @@ var couponsNeeded = 500; // total of coupons to complete the event
const maxLobbies = 1;
function init() {
- setEventRequirements();
+ setEventRequirements();
}
function getMaxLobbies() {
- return maxLobbies;
+ return maxLobbies;
}
function setEventRequirements() {
- var reqStr = "";
-
- reqStr += "\r\n Number of players: ";
- if(maxPlayers - minPlayers >= 1) reqStr += minPlayers + " ~ " + maxPlayers;
- else reqStr += minPlayers;
-
- reqStr += "\r\n Level range: ";
- if(maxLevel - minLevel >= 1) reqStr += minLevel + " ~ " + maxLevel;
- else reqStr += minLevel;
-
- reqStr += "\r\n Time limit: ";
- reqStr += eventTime + " minutes";
-
- em.setProperty("party", reqStr);
+ var reqStr = "";
+
+ reqStr += "\r\n Number of players: ";
+ if (maxPlayers - minPlayers >= 1) {
+ reqStr += minPlayers + " ~ " + maxPlayers;
+ } else {
+ reqStr += minPlayers;
+ }
+
+ reqStr += "\r\n Level range: ";
+ if (maxLevel - minLevel >= 1) {
+ reqStr += minLevel + " ~ " + maxLevel;
+ } else {
+ reqStr += minLevel;
+ }
+
+ reqStr += "\r\n Time limit: ";
+ reqStr += eventTime + " minutes";
+
+ em.setProperty("party", reqStr);
}
function setEventExclusives(eim) {
- var itemSet = [4001007];
- eim.setExclusiveItems(itemSet);
+ var itemSet = [4001007];
+ eim.setExclusiveItems(itemSet);
}
function setEventRewards(eim) {
- var itemSet, itemQty, evLevel, expStages;
+ var itemSet, itemQty, evLevel, expStages;
- evLevel = 1; //Rewards at clear PQ
- itemSet = [4001012];
- itemQty = [1];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- expStages = [25000]; //bonus exp given on CLEAR stage signal
- eim.setEventClearStageExp(expStages);
+ evLevel = 1; //Rewards at clear PQ
+ itemSet = [4001012];
+ itemQty = [1];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ expStages = [25000]; //bonus exp given on CLEAR stage signal
+ eim.setEventClearStageExp(expStages);
}
function getEligibleParty(party) { //selects, from the given party, the team that is allowed to attempt this event
- var eligible = [];
- var hasLeader = false;
-
- if(party.size() > 0) {
- var partyList = party.toArray();
+ var eligible = [];
+ var hasLeader = false;
- for(var i = 0; i < party.size(); i++) {
- var ch = partyList[i];
+ if (party.size() > 0) {
+ var partyList = party.toArray();
- if(ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
- if(ch.isLeader()) hasLeader = true;
- eligible.push(ch);
- }
+ for (var i = 0; i < party.size(); i++) {
+ var ch = partyList[i];
+
+ if (ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
+ if (ch.isLeader()) {
+ hasLeader = true;
}
+ eligible.push(ch);
+ }
}
-
- if(!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) eligible = [];
- return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
+ }
+
+ if (!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) {
+ eligible = [];
+ }
+ return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
}
function setup(level, lobbyid) {
- var eim = em.newInstance("Lan5_" + lobbyid);
- eim.setProperty("level", level);
- eim.setProperty("stage", "0");
-
- eim.setIntProperty("couponsNeeded", couponsNeeded);
-
- var i;
- for (i = 0; i < eventMaps.length; i++) {
- var mapObj = eim.getInstanceMap(eventMaps[i]);
- mapObj.resetPQ(level);
- mapObj.toggleDrops();
- mapObj.instanceMapForceRespawn();
- }
-
- respawnStages(eim);
- eim.startEventTimer(eventTime * 60000);
- setEventRewards(eim);
- setEventExclusives(eim);
- return eim;
+ var eim = em.newInstance("Lan5_" + lobbyid);
+ eim.setProperty("level", level);
+ eim.setProperty("stage", "0");
+
+ eim.setIntProperty("couponsNeeded", couponsNeeded);
+
+ var i;
+ for (i = 0; i < eventMaps.length; i++) {
+ var mapObj = eim.getInstanceMap(eventMaps[i]);
+ mapObj.resetPQ(level);
+ mapObj.toggleDrops();
+ mapObj.instanceMapForceRespawn();
+ }
+
+ respawnStages(eim);
+ eim.startEventTimer(eventTime * 60000);
+ setEventRewards(eim);
+ setEventExclusives(eim);
+ return eim;
}
function afterSetup(eim) {}
function respawnStages(eim) {
- var i;
- for (i = 0; i < eventMaps.length; i++) {
- eim.getInstanceMap(eventMaps[i]).instanceMapRespawn();
- }
-
- eim.schedule("respawnStages", 15 * 1000);
+ var i;
+ for (i = 0; i < eventMaps.length; i++) {
+ eim.getInstanceMap(eventMaps[i]).instanceMapRespawn();
+ }
+
+ eim.schedule("respawnStages", 15 * 1000);
}
function playerEntry(eim, player) {
- var map = eim.getMapInstance(entryMap);
- player.changeMap(map, map.getPortal(0));
+ var map = eim.getMapInstance(entryMap);
+ player.changeMap(map, map.getPortal(0));
}
function scheduledTimeout(eim) {
- end(eim);
+ end(eim);
}
function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
- eim.unregisterPlayer(player);
- player.changeMap(exitMap, 0);
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap, 0);
}
function playerLeft(eim, player) {
- if(!eim.isEventCleared()) {
- playerExit(eim, player);
- }
+ if (!eim.isEventCleared()) {
+ playerExit(eim, player);
+ }
}
function changedMap(eim, player, mapid) {
- if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (mapid < minMapId || mapid > maxMapId) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
}
+ }
}
function changedLeader(eim, leader) {
- var mapid = leader.getMapId();
- if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
- end(eim);
- }
+ var mapid = leader.getMapId();
+ if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
+ end(eim);
+ }
}
function playerDead(eim, player) {}
function playerRevive(eim, player) { // player presses ok on the death pop up.
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function playerDisconnected(eim, player) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function leftParty(eim, player) {
- if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
- end(eim);
- }
- else
- playerLeft(eim, player);
+ if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
+ end(eim);
+ } else {
+ playerLeft(eim, player);
+ }
}
function disbandParty(eim) {
- if (!eim.isEventCleared()) {
- end(eim);
- }
+ if (!eim.isEventCleared()) {
+ end(eim);
+ }
}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function end(eim) {
- var party = eim.getPlayers();
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ var party = eim.getPlayers();
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
}
function giveRandomEventReward(eim, player) {
- eim.giveEventReward(player);
+ eim.giveEventReward(player);
}
function clearPQ(eim) {
- eim.stopEventTimer();
- eim.setEventCleared();
- eim.giveEventPlayersStageReward(1);
-
- var i;
- for (i = 0; i < eventMaps.length; i++) {
- eim.getInstanceMap(eventMaps[i]).killAllMonstersNotFriendly();
- eim.showClearEffect(eventMaps[i]);
- }
+ eim.stopEventTimer();
+ eim.setEventCleared();
+ eim.giveEventPlayersStageReward(1);
+
+ var i;
+ for (i = 0; i < eventMaps.length; i++) {
+ eim.getInstanceMap(eventMaps[i]).killAllMonstersNotFriendly();
+ eim.showClearEffect(eventMaps[i]);
+ }
}
function getDroppedQuantity(mob) {
- if(mob.getLevel() > 65) {
+ if (mob.getLevel() > 65) {
return 5;
- } else if(mob.getLevel() > 40) {
+ } else if (mob.getLevel() > 40) {
return 2;
} else {
return 1;
@@ -250,16 +260,19 @@ function getDroppedQuantity(mob) {
function monsterKilled(mob, eim) {
try {
- if(eim.isEventCleared()) return;
-
+ if (eim.isEventCleared()) {
+ return;
+ }
+
var mapObj = mob.getMap();
const Item = Java.type('client.inventory.Item');
var itemObj = new Item(4001007, 0, getDroppedQuantity(mob));
var dropper = eim.getPlayers().get(0);
mapObj.spawnItemDrop(mob, dropper, itemObj, mob.getPosition(), true, false);
-
- } catch(err) {} // PQ not started yet
+
+ } catch (err) {
+ } // PQ not started yet
}
function allMonstersDead(eim) {}
diff --git a/scripts/event/CafePQ_6.js b/scripts/event/CafePQ_6.js
index 9dde1e421e..b9e87af2b3 100644
--- a/scripts/event/CafePQ_6.js
+++ b/scripts/event/CafePQ_6.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Cafe PQ 6
-*/
+ */
var isPq = true;
var minPlayers = 3, maxPlayers = 6;
@@ -41,207 +41,217 @@ var couponsNeeded = 300; // total of coupons to complete the event
const maxLobbies = 1;
function init() {
- setEventRequirements();
+ setEventRequirements();
}
function getMaxLobbies() {
- return maxLobbies;
+ return maxLobbies;
}
function setEventRequirements() {
- var reqStr = "";
-
- reqStr += "\r\n Number of players: ";
- if(maxPlayers - minPlayers >= 1) reqStr += minPlayers + " ~ " + maxPlayers;
- else reqStr += minPlayers;
-
- reqStr += "\r\n Level range: ";
- if(maxLevel - minLevel >= 1) reqStr += minLevel + " ~ " + maxLevel;
- else reqStr += minLevel;
-
- reqStr += "\r\n Time limit: ";
- reqStr += eventTime + " minutes";
-
- em.setProperty("party", reqStr);
+ var reqStr = "";
+
+ reqStr += "\r\n Number of players: ";
+ if (maxPlayers - minPlayers >= 1) {
+ reqStr += minPlayers + " ~ " + maxPlayers;
+ } else {
+ reqStr += minPlayers;
+ }
+
+ reqStr += "\r\n Level range: ";
+ if (maxLevel - minLevel >= 1) {
+ reqStr += minLevel + " ~ " + maxLevel;
+ } else {
+ reqStr += minLevel;
+ }
+
+ reqStr += "\r\n Time limit: ";
+ reqStr += eventTime + " minutes";
+
+ em.setProperty("party", reqStr);
}
function setEventExclusives(eim) {
- var itemSet = [4001007];
- eim.setExclusiveItems(itemSet);
+ var itemSet = [4001007];
+ eim.setExclusiveItems(itemSet);
}
function setEventRewards(eim) {
- var itemSet, itemQty, evLevel, expStages;
+ var itemSet, itemQty, evLevel, expStages;
- evLevel = 1; //Rewards at clear PQ
- itemSet = [4001010];
- itemQty = [1];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- expStages = [10000]; //bonus exp given on CLEAR stage signal
- eim.setEventClearStageExp(expStages);
+ evLevel = 1; //Rewards at clear PQ
+ itemSet = [4001010];
+ itemQty = [1];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ expStages = [10000]; //bonus exp given on CLEAR stage signal
+ eim.setEventClearStageExp(expStages);
}
function getEligibleParty(party) { //selects, from the given party, the team that is allowed to attempt this event
- var eligible = [];
- var hasLeader = false;
-
- if(party.size() > 0) {
- var partyList = party.toArray();
+ var eligible = [];
+ var hasLeader = false;
- for(var i = 0; i < party.size(); i++) {
- var ch = partyList[i];
+ if (party.size() > 0) {
+ var partyList = party.toArray();
- if(ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
- if(ch.isLeader()) hasLeader = true;
- eligible.push(ch);
- }
+ for (var i = 0; i < party.size(); i++) {
+ var ch = partyList[i];
+
+ if (ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
+ if (ch.isLeader()) {
+ hasLeader = true;
}
+ eligible.push(ch);
+ }
}
-
- if(!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) eligible = [];
- return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
+ }
+
+ if (!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) {
+ eligible = [];
+ }
+ return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
}
function setup(level, lobbyid) {
- var eim = em.newInstance("Lan6_" + lobbyid);
- eim.setProperty("level", level);
- eim.setProperty("stage", "0");
-
- eim.setIntProperty("couponsNeeded", couponsNeeded);
-
- var i;
- for (i = 0; i < eventMaps.length; i++) {
- var mapObj = eim.getInstanceMap(eventMaps[i]);
- mapObj.resetPQ(level);
- mapObj.toggleDrops();
- mapObj.instanceMapForceRespawn();
- }
-
- respawnStages(eim);
- eim.startEventTimer(eventTime * 60000);
- setEventRewards(eim);
- setEventExclusives(eim);
- return eim;
+ var eim = em.newInstance("Lan6_" + lobbyid);
+ eim.setProperty("level", level);
+ eim.setProperty("stage", "0");
+
+ eim.setIntProperty("couponsNeeded", couponsNeeded);
+
+ var i;
+ for (i = 0; i < eventMaps.length; i++) {
+ var mapObj = eim.getInstanceMap(eventMaps[i]);
+ mapObj.resetPQ(level);
+ mapObj.toggleDrops();
+ mapObj.instanceMapForceRespawn();
+ }
+
+ respawnStages(eim);
+ eim.startEventTimer(eventTime * 60000);
+ setEventRewards(eim);
+ setEventExclusives(eim);
+ return eim;
}
function afterSetup(eim) {}
function respawnStages(eim) {
- var i;
- for (i = 0; i < eventMaps.length; i++) {
- eim.getInstanceMap(eventMaps[i]).instanceMapRespawn();
- }
-
- eim.schedule("respawnStages", 15 * 1000);
+ var i;
+ for (i = 0; i < eventMaps.length; i++) {
+ eim.getInstanceMap(eventMaps[i]).instanceMapRespawn();
+ }
+
+ eim.schedule("respawnStages", 15 * 1000);
}
function playerEntry(eim, player) {
- var map = eim.getMapInstance(entryMap);
- player.changeMap(map, map.getPortal(0));
+ var map = eim.getMapInstance(entryMap);
+ player.changeMap(map, map.getPortal(0));
}
function scheduledTimeout(eim) {
- end(eim);
+ end(eim);
}
function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
- eim.unregisterPlayer(player);
- player.changeMap(exitMap, 0);
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap, 0);
}
function playerLeft(eim, player) {
- if(!eim.isEventCleared()) {
- playerExit(eim, player);
- }
+ if (!eim.isEventCleared()) {
+ playerExit(eim, player);
+ }
}
function changedMap(eim, player, mapid) {
- if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (mapid < minMapId || mapid > maxMapId) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
}
+ }
}
function changedLeader(eim, leader) {
- var mapid = leader.getMapId();
- if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
- end(eim);
- }
+ var mapid = leader.getMapId();
+ if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
+ end(eim);
+ }
}
function playerDead(eim, player) {}
function playerRevive(eim, player) { // player presses ok on the death pop up.
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function playerDisconnected(eim, player) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function leftParty(eim, player) {
- if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
- end(eim);
- }
- else
- playerLeft(eim, player);
+ if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
+ end(eim);
+ } else {
+ playerLeft(eim, player);
+ }
}
function disbandParty(eim) {
- if (!eim.isEventCleared()) {
- end(eim);
- }
+ if (!eim.isEventCleared()) {
+ end(eim);
+ }
}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function end(eim) {
- var party = eim.getPlayers();
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ var party = eim.getPlayers();
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
}
function giveRandomEventReward(eim, player) {
- eim.giveEventReward(player);
+ eim.giveEventReward(player);
}
function clearPQ(eim) {
- eim.stopEventTimer();
- eim.setEventCleared();
- eim.giveEventPlayersStageReward(1);
-
- var i;
- for (i = 0; i < eventMaps.length; i++) {
- eim.getInstanceMap(eventMaps[i]).killAllMonstersNotFriendly();
- eim.showClearEffect(eventMaps[i]);
- }
+ eim.stopEventTimer();
+ eim.setEventCleared();
+ eim.giveEventPlayersStageReward(1);
+
+ var i;
+ for (i = 0; i < eventMaps.length; i++) {
+ eim.getInstanceMap(eventMaps[i]).killAllMonstersNotFriendly();
+ eim.showClearEffect(eventMaps[i]);
+ }
}
function getDroppedQuantity(mob) {
- if(mob.getLevel() > 65) {
+ if (mob.getLevel() > 65) {
return 5;
- } else if(mob.getLevel() > 40) {
+ } else if (mob.getLevel() > 40) {
return 2;
} else {
return 1;
@@ -250,8 +260,10 @@ function getDroppedQuantity(mob) {
function monsterKilled(mob, eim) {
try {
- if(eim.isEventCleared()) return;
-
+ if (eim.isEventCleared()) {
+ return;
+ }
+
var mapObj = mob.getMap();
const Item = Java.type('client.inventory.Item');
var itemObj = new Item(4001007, 0, 1);
@@ -259,8 +271,9 @@ function monsterKilled(mob, eim) {
itemObj.setQuantity(getDroppedQuantity(mob));
mapObj.spawnItemDrop(mob, dropper, itemObj, mob.getPosition(), true, false);
-
- } catch(err) {} // PQ not started yet
+
+ } catch (err) {
+ } // PQ not started yet
}
function allMonstersDead(eim) {}
diff --git a/scripts/event/Cygnus_Magic_Library.js b/scripts/event/Cygnus_Magic_Library.js
index 1fee278828..c3f5acfddb 100644
--- a/scripts/event/Cygnus_Magic_Library.js
+++ b/scripts/event/Cygnus_Magic_Library.js
@@ -5,96 +5,98 @@ var entryMap = 101000000;
var exitMap = 101000000;
var eventMap = 910110000;
-function init(){}
+function init() {}
-function setup(difficulty, lobbyId){
- var eim = em.newInstance("Cygnus_Magic_Library_" +lobbyId);
- eim.getInstanceMap(eventMap).resetFully();
- eim.getInstanceMap(eventMap).allowSummonState(false);
- respawn(eim);
- eim.startEventTimer(eventTimer);
- return eim;
+function setup(difficulty, lobbyId) {
+ var eim = em.newInstance("Cygnus_Magic_Library_" + lobbyId);
+ eim.getInstanceMap(eventMap).resetFully();
+ eim.getInstanceMap(eventMap).allowSummonState(false);
+ respawn(eim);
+ eim.startEventTimer(eventTimer);
+ return eim;
}
-function afterSetup(eim){}
+function afterSetup(eim) {}
-function respawn(eim){
- var map = eim.getMapInstance(entryMap);
- map.allowSummonState(true);
- map.instanceMapRespawn();
- eim.schedule("respawn", 10000);
+function respawn(eim) {
+ var map = eim.getMapInstance(entryMap);
+ map.allowSummonState(true);
+ map.instanceMapRespawn();
+ eim.schedule("respawn", 10000);
}
-function playerEntry(eim, player){
- var magicLibrary = eim.getMapInstance(eventMap);
- player.changeMap(magicLibrary, magicLibrary.getPortal(1));
+function playerEntry(eim, player) {
+ var magicLibrary = eim.getMapInstance(eventMap);
+ player.changeMap(magicLibrary, magicLibrary.getPortal(1));
}
-function scheduledTimeout(eim){
- var party = eim.getPlayers();
+function scheduledTimeout(eim) {
+ var party = eim.getPlayers();
- for(var i = 0; i < party.size(); i++)
- playerExit(eim, party.get(i));
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
- eim.dispose();
+ eim.dispose();
}
-function playerRevive(eim, player){
- player.respawn(eim, entryMap);
- return false;
+function playerRevive(eim, player) {
+ player.respawn(eim, entryMap);
+ return false;
}
-function playerDead(eim, player){}
+function playerDead(eim, player) {}
-function playerDisconnected(eim, player){
- var party = eim.getPlayers();
+function playerDisconnected(eim, player) {
+ var party = eim.getPlayers();
- for(var i = 0; i < party.size(); i++){
- if(party.get(i).equals(player))
- removePlayer(eim, player);
- else
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ for (var i = 0; i < party.size(); i++) {
+ if (party.get(i).equals(player)) {
+ removePlayer(eim, player);
+ } else {
+ playerExit(eim, party.get(i));
+ }
+ }
+ eim.dispose();
}
-function monsterValue(eim, mobId){
- return -1;
+function monsterValue(eim, mobId) {
+ return -1;
}
-function leftParty(eim, player){}
+function leftParty(eim, player) {}
-function disbandParty(eim){}
+function disbandParty(eim) {}
-function playerUnregistered(eim, player){}
+function playerUnregistered(eim, player) {}
-function playerExit(eim, player){
- eim.unregisterPlayer(player);
- player.changeMap(entryMap, 2);
+function playerExit(eim, player) {
+ eim.unregisterPlayer(player);
+ player.changeMap(entryMap, 2);
}
function changedMap(eim, chr, mapid) {
- if(mapid == exitMap){
- removePlayer(eim, chr);
- eim.dispose();
- }
+ if (mapid == exitMap) {
+ removePlayer(eim, chr);
+ eim.dispose();
+ }
}
-function removePlayer(eim, player){
- eim.unregisterPlayer(player);
- player.getMap().removePlayer(player);
- player.setMap(entryMap);
+function removePlayer(eim, player) {
+ eim.unregisterPlayer(player);
+ player.getMap().removePlayer(player);
+ player.setMap(entryMap);
}
-function cancelSchedule(){}
+function cancelSchedule() {}
-function dispose(){}
+function dispose() {}
-function clearPQ(eim){}
+function clearPQ(eim) {}
-function monsterKilled(mob, eim){}
+function monsterKilled(mob, eim) {}
-function allMonstersDead(eim){}
+function allMonstersDead(eim) {}
// ---------- FILLER FUNCTIONS ----------
diff --git a/scripts/event/DelliBattle.js b/scripts/event/DelliBattle.js
index 1238842e37..8e80e1265c 100644
--- a/scripts/event/DelliBattle.js
+++ b/scripts/event/DelliBattle.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Delli Battle
-*/
+ */
var isPq = true;
var minPlayers = 1, maxPlayers = 2;
@@ -38,166 +38,176 @@ var eventTime = 6; // 6 minutes
const maxLobbies = 7;
function init() {
- setEventRequirements();
+ setEventRequirements();
}
function getMaxLobbies() {
- return maxLobbies;
+ return maxLobbies;
}
function setEventRequirements() {
- var reqStr = "";
-
- reqStr += "\r\n Number of players: ";
- if(maxPlayers - minPlayers >= 1) reqStr += minPlayers + " ~ " + maxPlayers;
- else reqStr += minPlayers;
-
- reqStr += "\r\n Level range: ";
- if(maxLevel - minLevel >= 1) reqStr += minLevel + " ~ " + maxLevel;
- else reqStr += minLevel;
-
- reqStr += "\r\n Time limit: ";
- reqStr += eventTime + " minutes";
-
- em.setProperty("party", reqStr);
+ var reqStr = "";
+
+ reqStr += "\r\n Number of players: ";
+ if (maxPlayers - minPlayers >= 1) {
+ reqStr += minPlayers + " ~ " + maxPlayers;
+ } else {
+ reqStr += minPlayers;
+ }
+
+ reqStr += "\r\n Level range: ";
+ if (maxLevel - minLevel >= 1) {
+ reqStr += minLevel + " ~ " + maxLevel;
+ } else {
+ reqStr += minLevel;
+ }
+
+ reqStr += "\r\n Time limit: ";
+ reqStr += eventTime + " minutes";
+
+ em.setProperty("party", reqStr);
}
function getEligibleParty(party) { //selects, from the given party, the team that is allowed to attempt this event
- var eligible = [];
- var hasLeader = false;
-
- if(party.size() > 0) {
- var partyList = party.toArray();
+ var eligible = [];
+ var hasLeader = false;
- for(var i = 0; i < party.size(); i++) {
- var ch = partyList[i];
+ if (party.size() > 0) {
+ var partyList = party.toArray();
- if(ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
- if(ch.isLeader()) hasLeader = true;
- eligible.push(ch);
- }
+ for (var i = 0; i < party.size(); i++) {
+ var ch = partyList[i];
+
+ if (ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
+ if (ch.isLeader()) {
+ hasLeader = true;
}
+ eligible.push(ch);
+ }
}
-
- if(!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) eligible = [];
- return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
+ }
+
+ if (!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) {
+ eligible = [];
+ }
+ return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
}
function setup(level, lobbyid) {
- var eim = em.newInstance("Delli" + lobbyid);
- eim.setProperty("level", level);
-
- respawnStages(eim);
- eim.startEventTimer(eventTime * 60000);
-
- eim.getMapInstance(entryMap).toggleDrops();
- return eim;
+ var eim = em.newInstance("Delli" + lobbyid);
+ eim.setProperty("level", level);
+
+ respawnStages(eim);
+ eim.startEventTimer(eventTime * 60000);
+
+ eim.getMapInstance(entryMap).toggleDrops();
+ return eim;
}
function afterSetup(eim) {}
-function respawnStages(eim) {
- eim.getMapInstance(entryMap).instanceMapRespawn();
- eim.schedule("respawnStages", 15 * 1000);
+function respawnStages(eim) {
+ eim.getMapInstance(entryMap).instanceMapRespawn();
+ eim.schedule("respawnStages", 15 * 1000);
}
function playerEntry(eim, player) {
- var map = eim.getMapInstance(entryMap);
- player.changeMap(map, map.getPortal(0));
+ var map = eim.getMapInstance(entryMap);
+ player.changeMap(map, map.getPortal(0));
}
function scheduledTimeout(eim) {
- eim.getMapInstance(entryMap).killAllMonstersNotFriendly();
- eim.showClearEffect();
- clearPQ(eim);
+ eim.getMapInstance(entryMap).killAllMonstersNotFriendly();
+ eim.showClearEffect();
+ clearPQ(eim);
}
function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
- eim.unregisterPlayer(player);
- player.changeMap(exitMap, 0);
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap, 0);
}
function playerLeft(eim, player) {
- if(!eim.isEventCleared()) {
- playerExit(eim, player);
- }
+ if (!eim.isEventCleared()) {
+ playerExit(eim, player);
+ }
}
function changedMap(eim, player, mapid) {
- if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (mapid < minMapId || mapid > maxMapId) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
}
+ }
}
function changedLeader(eim, leader) {
- var mapid = leader.getMapId();
- if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
- end(eim);
- }
+ var mapid = leader.getMapId();
+ if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
+ end(eim);
+ }
}
function playerDead(eim, player) {}
function playerRevive(eim, player) { // player presses ok on the death pop up.
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function playerDisconnected(eim, player) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function leftParty(eim, player) {
- if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
- end(eim);
- }
- else
- playerLeft(eim, player);
+ if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
+ end(eim);
+ } else {
+ playerLeft(eim, player);
+ }
}
function disbandParty(eim) {
- if (!eim.isEventCleared()) {
- end(eim);
- }
+ if (!eim.isEventCleared()) {
+ end(eim);
+ }
}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function friendlyKilled(mob, eim) {
- if (mob.getId() == 9300162) {
- end(eim);
- }
+ if (mob.getId() == 9300162) {
+ end(eim);
+ }
}
function end(eim) {
- var party = eim.getPlayers();
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ var party = eim.getPlayers();
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
}
function clearPQ(eim) {
- eim.stopEventTimer();
- eim.setEventCleared();
+ eim.stopEventTimer();
+ eim.setEventCleared();
}
function monsterKilled(mob, eim) {}
diff --git a/scripts/event/DollHouse.js b/scripts/event/DollHouse.js
index 42e0e93c5e..51a9e67166 100644
--- a/scripts/event/DollHouse.js
+++ b/scripts/event/DollHouse.js
@@ -21,30 +21,30 @@
*/
/**
*Dollhouse Event
-**/
+ **/
var entryMap = 922000010;
var exitMap = 221024400;
var eventTime = 10; //10 minutes
function init() {
- em.setProperty("noEntry","false");
+ em.setProperty("noEntry", "false");
}
function setup(level, lobbyid) {
var eim = em.newInstance("DollHouse_" + lobbyid);
eim.setProperty("level", level);
eim.setProperty("boss", "0");
-
+
return eim;
}
function playerEntry(eim, player) {
eim.getInstanceMap(entryMap).shuffleReactors();
eim.setExclusiveItems([4031094]);
-
+
player.changeMap(entryMap, 0);
- em.setProperty("noEntry","true");
+ em.setProperty("noEntry", "true");
const PacketCreator = Java.type('tools.PacketCreator');
player.sendPacket(PacketCreator.getClock(eventTime * 60));
@@ -56,7 +56,7 @@ function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
eim.unregisterPlayer(player);
eim.dispose();
- em.setProperty("noEntry","false");
+ em.setProperty("noEntry", "false");
}
function scheduledTimeout(eim) {
@@ -73,13 +73,15 @@ function clear(eim) {
var player = eim.getPlayers().get(0);
eim.unregisterPlayer(player);
player.changeMap(exitMap, 4);
-
+
eim.dispose();
- em.setProperty("noEntry","false");
+ em.setProperty("noEntry", "false");
}
function changedMap(eim, chr, mapid) {
- if(mapid != entryMap) playerExit(eim, chr);
+ if (mapid != entryMap) {
+ playerExit(eim, chr);
+ }
}
function cancelSchedule() {}
diff --git a/scripts/event/ElementalBattle.js b/scripts/event/ElementalBattle.js
index 48e238c90e..2ef3b3e91f 100644
--- a/scripts/event/ElementalBattle.js
+++ b/scripts/event/ElementalBattle.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Vs Elemental Thanatos
-*/
+ */
var isPq = true;
var minPlayers = 2, maxPlayers = 2;
@@ -39,82 +39,92 @@ var eventTime = 20; // 20 minutes
const maxLobbies = 7;
function init() {
- setEventRequirements();
+ setEventRequirements();
}
function getMaxLobbies() {
- return maxLobbies;
+ return maxLobbies;
}
function setEventRequirements() {
- var reqStr = "";
-
- reqStr += "\r\n Number of players: ";
- if(maxPlayers - minPlayers >= 1) reqStr += minPlayers + " ~ " + maxPlayers;
- else reqStr += minPlayers;
-
- reqStr += "\r\n Level range: ";
- if(maxLevel - minLevel >= 1) reqStr += minLevel + " ~ " + maxLevel;
- else reqStr += minLevel;
-
- reqStr += "\r\n For #rmagicians only#k.";
-
- reqStr += "\r\n Time limit: ";
- reqStr += eventTime + " minutes";
-
- em.setProperty("party", reqStr);
+ var reqStr = "";
+
+ reqStr += "\r\n Number of players: ";
+ if (maxPlayers - minPlayers >= 1) {
+ reqStr += minPlayers + " ~ " + maxPlayers;
+ } else {
+ reqStr += minPlayers;
+ }
+
+ reqStr += "\r\n Level range: ";
+ if (maxLevel - minLevel >= 1) {
+ reqStr += minLevel + " ~ " + maxLevel;
+ } else {
+ reqStr += minLevel;
+ }
+
+ reqStr += "\r\n For #rmagicians only#k.";
+
+ reqStr += "\r\n Time limit: ";
+ reqStr += eventTime + " minutes";
+
+ em.setProperty("party", reqStr);
}
function setEventExclusives(eim) {
- var itemSet = [];
- eim.setExclusiveItems(itemSet);
+ var itemSet = [];
+ eim.setExclusiveItems(itemSet);
}
function setEventRewards(eim) {
- var itemSet, itemQty, evLevel, expStages;
+ var itemSet, itemQty, evLevel, expStages;
- evLevel = 1; //Rewards at clear PQ
- itemSet = [];
- itemQty = [];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- expStages = []; //bonus exp given on CLEAR stage signal
- eim.setEventClearStageExp(expStages);
+ evLevel = 1; //Rewards at clear PQ
+ itemSet = [];
+ itemQty = [];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ expStages = []; //bonus exp given on CLEAR stage signal
+ eim.setEventClearStageExp(expStages);
}
function getEligibleParty(party) { //selects, from the given party, the team that is allowed to attempt this event
- var eligible = [];
- var hasLeader = false;
-
- if(party.size() > 0) {
- var partyList = party.toArray();
+ var eligible = [];
+ var hasLeader = false;
- for(var i = 0; i < party.size(); i++) {
- var ch = partyList[i];
+ if (party.size() > 0) {
+ var partyList = party.toArray();
- if(ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel && ch.getJob().getJobNiche() == 2) {
- if(ch.isLeader()) hasLeader = true; // magician niche only
- eligible.push(ch);
- }
- }
+ for (var i = 0; i < party.size(); i++) {
+ var ch = partyList[i];
+
+ if (ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel && ch.getJob().getJobNiche() == 2) {
+ if (ch.isLeader()) {
+ hasLeader = true;
+ } // magician niche only
+ eligible.push(ch);
+ }
}
-
- if(!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) eligible = [];
- return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
+ }
+
+ if (!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) {
+ eligible = [];
+ }
+ return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
}
function setup(level, lobbyid) {
- var eim = em.newInstance("Elemental" + lobbyid);
- eim.setProperty("level", level);
- eim.setProperty("boss", "0");
-
- eim.getInstanceMap(922020100).resetPQ(level);
-
- respawnStages(eim);
- eim.startEventTimer(eventTime * 60000);
- setEventRewards(eim);
- setEventExclusives(eim);
- return eim;
+ var eim = em.newInstance("Elemental" + lobbyid);
+ eim.setProperty("level", level);
+ eim.setProperty("boss", "0");
+
+ eim.getInstanceMap(922020100).resetPQ(level);
+
+ respawnStages(eim);
+ eim.startEventTimer(eventTime * 60000);
+ setEventRewards(eim);
+ setEventExclusives(eim);
+ return eim;
}
function afterSetup(eim) {}
@@ -122,116 +132,116 @@ function afterSetup(eim) {}
function respawnStages(eim) {}
function playerEntry(eim, player) {
- var map = eim.getMapInstance(entryMap);
- player.changeMap(map, map.getPortal(0));
+ var map = eim.getMapInstance(entryMap);
+ player.changeMap(map, map.getPortal(0));
}
function scheduledTimeout(eim) {
- end(eim);
+ end(eim);
}
function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
- eim.unregisterPlayer(player);
- player.changeMap(exitMap, 0);
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap, 0);
}
function playerLeft(eim, player) {
- if(!eim.isEventCleared()) {
- playerExit(eim, player);
- }
+ if (!eim.isEventCleared()) {
+ playerExit(eim, player);
+ }
}
function changedMap(eim, player, mapid) {
- if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (mapid < minMapId || mapid > maxMapId) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
}
+ }
}
function changedLeader(eim, leader) {
- var mapid = leader.getMapId();
- if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
- end(eim);
- }
+ var mapid = leader.getMapId();
+ if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
+ end(eim);
+ }
}
function playerDead(eim, player) {}
function playerRevive(eim, player) { // player presses ok on the death pop up.
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function playerDisconnected(eim, player) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function leftParty(eim, player) {
- if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
- end(eim);
- }
- else
- playerLeft(eim, player);
+ if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
+ end(eim);
+ } else {
+ playerLeft(eim, player);
+ }
}
function disbandParty(eim) {
- if (!eim.isEventCleared()) {
- end(eim);
- }
+ if (!eim.isEventCleared()) {
+ end(eim);
+ }
}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function end(eim) {
- var party = eim.getPlayers();
-
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ var party = eim.getPlayers();
+
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
}
function giveRandomEventReward(eim, player) {
- eim.giveEventReward(player);
+ eim.giveEventReward(player);
}
function clearPQ(eim) {
- eim.stopEventTimer();
- eim.setEventCleared();
+ eim.stopEventTimer();
+ eim.setEventCleared();
}
function isElemental(mob) {
- var mobid = mob.getId();
- return mobid == 9300086 || mobid == 9300100;
+ var mobid = mob.getId();
+ return mobid == 9300086 || mobid == 9300100;
}
function monsterKilled(mob, eim) {
- if(isElemental(mob)) {
- var killed = eim.getIntProperty("boss");
- if(killed == 1) {
- eim.showClearEffect();
- eim.clearPQ();
- } else {
- eim.setIntProperty("boss", killed + 1);
- }
+ if (isElemental(mob)) {
+ var killed = eim.getIntProperty("boss");
+ if (killed == 1) {
+ eim.showClearEffect();
+ eim.clearPQ();
+ } else {
+ eim.setIntProperty("boss", killed + 1);
}
+ }
}
function allMonstersDead(eim) {}
diff --git a/scripts/event/Elevator.js b/scripts/event/Elevator.js
index 1a42b349ac..7c8fcd4890 100644
--- a/scripts/event/Elevator.js
+++ b/scripts/event/Elevator.js
@@ -22,22 +22,22 @@ along with this program. If not, see .
//Time Setting is in millisecond
var beginTime = 60 * 1000; //The time to begin the ride
-var rideTime = 60 * 1000; //The time that require move to destination
+var rideTime = 60 * 1000; //The time that require move to destination
function init() {
beginTime = em.getTransportationTime(beginTime);
- rideTime = em.getTransportationTime(rideTime);
-
+ rideTime = em.getTransportationTime(rideTime);
+
em.getChannelServer().getMapFactory().getMap(222020100).resetReactors();
em.getChannelServer().getMapFactory().getMap(222020200).resetReactors();
-
+
scheduleNew();
}
function scheduleNew() {
em.setProperty("goingUp", "false");
em.setProperty("goingDown", "true");
-
+
em.getChannelServer().getMapFactory().getMap(222020100).resetReactors();
em.getChannelServer().getMapFactory().getMap(222020200).setReactorState();
em.schedule("goingUpNow", beginTime);
@@ -55,7 +55,7 @@ function goingUpNow() {
em.getChannelServer().getMapFactory().getMap(222020110).warpEveryone(222020111);
em.setProperty("goingUp", "true");
em.schedule("isUpNow", rideTime);
-
+
em.getChannelServer().getMapFactory().getMap(222020100).setReactorState();
}
@@ -63,7 +63,7 @@ function goingDownNow() {
em.getChannelServer().getMapFactory().getMap(222020210).warpEveryone(222020211);
em.setProperty("goingDown", "true");
em.schedule("isDownNow", rideTime);
-
+
em.getChannelServer().getMapFactory().getMap(222020200).setReactorState();
}
@@ -79,7 +79,7 @@ function isDownNow() {
em.setProperty("goingUp", "false"); // clear
em.getChannelServer().getMapFactory().getMap(222020100).resetReactors();
em.getChannelServer().getMapFactory().getMap(222020211).warpEveryone(222020100, 4);
-
+
goUp();
}
diff --git a/scripts/event/EllinPQ.js b/scripts/event/EllinPQ.js
index ac5608cb43..c58423574f 100644
--- a/scripts/event/EllinPQ.js
+++ b/scripts/event/EllinPQ.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Ellin PQ
-*/
+ */
var isPq = true;
var minPlayers = 4, maxPlayers = 6;
@@ -39,200 +39,213 @@ var eventTime = 30; // 30 minutes
const maxLobbies = 1;
function init() {
- setEventRequirements();
+ setEventRequirements();
}
function getMaxLobbies() {
- return maxLobbies;
+ return maxLobbies;
}
function setEventRequirements() {
- var reqStr = "";
-
- reqStr += "\r\n Number of players: ";
- if(maxPlayers - minPlayers >= 1) reqStr += minPlayers + " ~ " + maxPlayers;
- else reqStr += minPlayers;
-
- reqStr += "\r\n Level range: ";
- if(maxLevel - minLevel >= 1) reqStr += minLevel + " ~ " + maxLevel;
- else reqStr += minLevel;
-
- reqStr += "\r\n For #radventurers only#k.";
-
- reqStr += "\r\n Time limit: ";
- reqStr += eventTime + " minutes";
-
- em.setProperty("party", reqStr);
+ var reqStr = "";
+
+ reqStr += "\r\n Number of players: ";
+ if (maxPlayers - minPlayers >= 1) {
+ reqStr += minPlayers + " ~ " + maxPlayers;
+ } else {
+ reqStr += minPlayers;
+ }
+
+ reqStr += "\r\n Level range: ";
+ if (maxLevel - minLevel >= 1) {
+ reqStr += minLevel + " ~ " + maxLevel;
+ } else {
+ reqStr += minLevel;
+ }
+
+ reqStr += "\r\n For #radventurers only#k.";
+
+ reqStr += "\r\n Time limit: ";
+ reqStr += eventTime + " minutes";
+
+ em.setProperty("party", reqStr);
}
function setEventExclusives(eim) {
- var itemSet = [4001162, 4001163, 4001169, 2270004];
- eim.setExclusiveItems(itemSet);
+ var itemSet = [4001162, 4001163, 4001169, 2270004];
+ eim.setExclusiveItems(itemSet);
}
function setEventRewards(eim) {}
function getEligibleParty(party) { //selects, from the given party, the team that is allowed to attempt this event
- var eligible = [];
- var hasLeader = false;
-
- if(party.size() > 0) {
- var partyList = party.toArray();
+ var eligible = [];
+ var hasLeader = false;
- for(var i = 0; i < party.size(); i++) {
- var ch = partyList[i];
+ if (party.size() > 0) {
+ var partyList = party.toArray();
- if(ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel && Math.floor(ch.getJob().getId() / 1000) == 0) { //only adventurers
- if(ch.isLeader()) hasLeader = true;
- eligible.push(ch);
- }
+ for (var i = 0; i < party.size(); i++) {
+ var ch = partyList[i];
+
+ if (ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel && Math.floor(ch.getJob().getId() / 1000) == 0) { //only adventurers
+ if (ch.isLeader()) {
+ hasLeader = true;
}
+ eligible.push(ch);
+ }
}
-
- if(!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) eligible = [];
- return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
+ }
+
+ if (!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) {
+ eligible = [];
+ }
+ return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
}
function setup(level, lobbyid) {
- var eim = em.newInstance("Ellin" + lobbyid);
- eim.setProperty("level", level);
-
- eim.setProperty("statusStg4", 0);
-
- eim.getInstanceMap(930000000).resetPQ(level);
- eim.getInstanceMap(930000100).resetPQ(level);
- eim.getInstanceMap(930000200).resetPQ(level);
- eim.getInstanceMap(930000300).resetPQ(level);
- eim.getInstanceMap(930000400).resetPQ(level);
- var map = eim.getInstanceMap(930000500);
- map.resetPQ(level);
- map.shuffleReactors();
- eim.getInstanceMap(930000600).resetPQ(level);
- eim.getInstanceMap(930000700).resetPQ(level);
+ var eim = em.newInstance("Ellin" + lobbyid);
+ eim.setProperty("level", level);
- respawnStg2(eim);
-
- eim.startEventTimer(eventTime * 60000);
- setEventRewards(eim);
- setEventExclusives(eim);
- return eim;
+ eim.setProperty("statusStg4", 0);
+
+ eim.getInstanceMap(930000000).resetPQ(level);
+ eim.getInstanceMap(930000100).resetPQ(level);
+ eim.getInstanceMap(930000200).resetPQ(level);
+ eim.getInstanceMap(930000300).resetPQ(level);
+ eim.getInstanceMap(930000400).resetPQ(level);
+ var map = eim.getInstanceMap(930000500);
+ map.resetPQ(level);
+ map.shuffleReactors();
+ eim.getInstanceMap(930000600).resetPQ(level);
+ eim.getInstanceMap(930000700).resetPQ(level);
+
+ respawnStg2(eim);
+
+ eim.startEventTimer(eventTime * 60000);
+ setEventRewards(eim);
+ setEventExclusives(eim);
+ return eim;
}
function afterSetup(eim) {}
-function respawnStg2(eim) {
- if(!eim.getMapInstance(930000200).getPlayers().isEmpty()) eim.getMapInstance(930000200).instanceMapRespawn();
+function respawnStg2(eim) {
+ if (!eim.getMapInstance(930000200).getPlayers().isEmpty()) {
+ eim.getMapInstance(930000200).instanceMapRespawn();
+ }
eim.schedule("respawnStg2", 4 * 1000);
}
function changedMap(eim, player, mapid) {
- if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (mapid < minMapId || mapid > maxMapId) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
}
+ }
}
function changedLeader(eim, leader) {
- var mapid = leader.getMapId();
- if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
- end(eim);
- }
+ var mapid = leader.getMapId();
+ if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
+ end(eim);
+ }
}
function playerEntry(eim, player) {
- var map = eim.getMapInstance(entryMap);
- player.changeMap(map, map.getPortal(0));
+ var map = eim.getMapInstance(entryMap);
+ player.changeMap(map, map.getPortal(0));
}
function scheduledTimeout(eim) {
- end(eim);
+ end(eim);
}
function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
- eim.unregisterPlayer(player);
- player.changeMap(exitMap, 0);
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap, 0);
}
function playerLeft(eim, player) {
- if(!eim.isEventCleared()) {
- playerExit(eim, player);
- }
+ if (!eim.isEventCleared()) {
+ playerExit(eim, player);
+ }
}
function playerDead(eim, player) {}
function playerRevive(eim, player) { // player presses ok on the death pop up.
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function playerDisconnected(eim, player) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player))
- end(eim);
- else
- playerExit(eim, player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ end(eim);
+ } else {
+ playerExit(eim, player);
+ }
}
function leftParty(eim, player) {
- if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
- end(eim);
- }
- else
- playerLeft(eim, player);
+ if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
+ end(eim);
+ } else {
+ playerLeft(eim, player);
+ }
}
function disbandParty(eim) {
- if (!eim.isEventCleared()) {
- end(eim);
- }
+ if (!eim.isEventCleared()) {
+ end(eim);
+ }
}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function end(eim) {
- var party = eim.getPlayers();
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ var party = eim.getPlayers();
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
}
function clearPQ(eim) {
- eim.stopEventTimer();
- eim.setEventCleared();
+ eim.stopEventTimer();
+ eim.setEventCleared();
}
function isPoisonGolem(mob) {
- var mobid = mob.getId();
- return (mobid == 9300182);
+ var mobid = mob.getId();
+ return (mobid == 9300182);
}
function monsterKilled(mob, eim, hasKiller) {
- var map = mob.getMap();
-
- if(isPoisonGolem(mob)) {
- eim.showClearEffect(map.getId());
- eim.clearPQ();
- } else if(map.countMonsters() == 0) {
- var stage = ((map.getId() % 1000) / 100);
-
- if(stage == 1 || (stage == 4 && !hasKiller)) {
- eim.showClearEffect(map.getId());
- }
+ var map = mob.getMap();
+
+ if (isPoisonGolem(mob)) {
+ eim.showClearEffect(map.getId());
+ eim.clearPQ();
+ } else if (map.countMonsters() == 0) {
+ var stage = ((map.getId() % 1000) / 100);
+
+ if (stage == 1 || (stage == 4 && !hasKiller)) {
+ eim.showClearEffect(map.getId());
}
+ }
}
function allMonstersDead(eim) {}
diff --git a/scripts/event/ElnathPQ.js b/scripts/event/ElnathPQ.js
index 37f3530b71..38eb034a0c 100644
--- a/scripts/event/ElnathPQ.js
+++ b/scripts/event/ElnathPQ.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: ElNath PQ
-*/
+ */
var isPq = true;
var minPlayers = 1, maxPlayers = 4;
@@ -38,156 +38,166 @@ var eventTime = 10; // 10 minutes
const maxLobbies = 1;
function init() {
- setEventRequirements();
+ setEventRequirements();
}
function getMaxLobbies() {
- return maxLobbies;
+ return maxLobbies;
}
function setEventRequirements() {
- var reqStr = "";
-
- reqStr += "\r\n Number of players: ";
- if(maxPlayers - minPlayers >= 1) reqStr += minPlayers + " ~ " + maxPlayers;
- else reqStr += minPlayers;
-
- reqStr += "\r\n Level range: ";
- if(maxLevel - minLevel >= 1) reqStr += minLevel + " ~ " + maxLevel;
- else reqStr += minLevel;
-
- reqStr += "\r\n Time limit: ";
- reqStr += eventTime + " minutes";
-
- em.setProperty("party", reqStr);
+ var reqStr = "";
+
+ reqStr += "\r\n Number of players: ";
+ if (maxPlayers - minPlayers >= 1) {
+ reqStr += minPlayers + " ~ " + maxPlayers;
+ } else {
+ reqStr += minPlayers;
+ }
+
+ reqStr += "\r\n Level range: ";
+ if (maxLevel - minLevel >= 1) {
+ reqStr += minLevel + " ~ " + maxLevel;
+ } else {
+ reqStr += minLevel;
+ }
+
+ reqStr += "\r\n Time limit: ";
+ reqStr += eventTime + " minutes";
+
+ em.setProperty("party", reqStr);
}
function getEligibleParty(party) { //selects, from the given party, the team that is allowed to attempt this event
- var eligible = [];
- var hasLeader = false;
-
- if(party.size() > 0) {
- var partyList = party.toArray();
+ var eligible = [];
+ var hasLeader = false;
- for(var i = 0; i < party.size(); i++) {
- var ch = partyList[i];
+ if (party.size() > 0) {
+ var partyList = party.toArray();
- if(ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
- if(ch.isLeader()) hasLeader = true;
- eligible.push(ch);
- }
+ for (var i = 0; i < party.size(); i++) {
+ var ch = partyList[i];
+
+ if (ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
+ if (ch.isLeader()) {
+ hasLeader = true;
}
+ eligible.push(ch);
+ }
}
-
- if(!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) eligible = [];
- return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
+ }
+
+ if (!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) {
+ eligible = [];
+ }
+ return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
}
function setup(level, lobbyid) {
- var eim = em.newInstance("Tylus" + lobbyid);
- eim.setProperty("level", level);
-
- respawnStages(eim);
- eim.startEventTimer(eventTime * 60000);
- return eim;
+ var eim = em.newInstance("Tylus" + lobbyid);
+ eim.setProperty("level", level);
+
+ respawnStages(eim);
+ eim.startEventTimer(eventTime * 60000);
+ return eim;
}
function afterSetup(eim) {}
-function respawnStages(eim) {
- eim.getMapInstance(entryMap).instanceMapRespawn();
- eim.schedule("respawnStages", 15 * 1000);
+function respawnStages(eim) {
+ eim.getMapInstance(entryMap).instanceMapRespawn();
+ eim.schedule("respawnStages", 15 * 1000);
}
function playerEntry(eim, player) {
- var map = eim.getMapInstance(entryMap);
- player.changeMap(map, map.getPortal(0));
+ var map = eim.getMapInstance(entryMap);
+ player.changeMap(map, map.getPortal(0));
}
function scheduledTimeout(eim) {
- end(eim);
+ end(eim);
}
function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
- eim.unregisterPlayer(player);
- player.changeMap(exitMap, 0);
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap, 0);
}
function playerLeft(eim, player) {
- if(!eim.isEventCleared()) {
- playerExit(eim, player);
- }
+ if (!eim.isEventCleared()) {
+ playerExit(eim, player);
+ }
}
function changedMap(eim, player, mapid) {
- if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (mapid < minMapId || mapid > maxMapId) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
}
+ }
}
function changedLeader(eim, leader) {
- var mapid = leader.getMapId();
- if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
- end(eim);
- }
+ var mapid = leader.getMapId();
+ if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
+ end(eim);
+ }
}
function playerDead(eim, player) {}
function playerRevive(eim, player) { // player presses ok on the death pop up.
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function playerDisconnected(eim, player) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function leftParty(eim, player) {
- if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
- end(eim);
- }
- else
- playerLeft(eim, player);
+ if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
+ end(eim);
+ } else {
+ playerLeft(eim, player);
+ }
}
function disbandParty(eim) {
- if (!eim.isEventCleared()) {
- end(eim);
- }
+ if (!eim.isEventCleared()) {
+ end(eim);
+ }
}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function end(eim) {
- var party = eim.getPlayers();
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ var party = eim.getPlayers();
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
}
function clearPQ(eim) {
- eim.stopEventTimer();
- eim.setEventCleared();
+ eim.stopEventTimer();
+ eim.setEventCleared();
}
function monsterKilled(mob, eim) {}
diff --git a/scripts/event/Genie.js b/scripts/event/Genie.js
index 1894771858..57153aaecc 100644
--- a/scripts/event/Genie.js
+++ b/scripts/event/Genie.js
@@ -30,13 +30,13 @@ var Ariant_docked;
//Time Setting is in millisecond
var closeTime = 4 * 60 * 1000; //The time to close the gate
var beginTime = 5 * 60 * 1000; //The time to begin the ride
-var rideTime = 5 * 60 * 1000; //The time that require move to destination
+var rideTime = 5 * 60 * 1000; //The time that require move to destination
function init() {
closeTime = em.getTransportationTime(closeTime);
beginTime = em.getTransportationTime(beginTime);
- rideTime = em.getTransportationTime(rideTime);
-
+ rideTime = em.getTransportationTime(rideTime);
+
Orbis_btf = em.getChannelServer().getMapFactory().getMap(200000152);
Ariant_btf = em.getChannelServer().getMapFactory().getMap(260000110);
Genie_to_Orbis = em.getChannelServer().getMapFactory().getMap(200090410);
@@ -44,7 +44,7 @@ function init() {
Orbis_docked = em.getChannelServer().getMapFactory().getMap(200000151);
Ariant_docked = em.getChannelServer().getMapFactory().getMap(260000100);
Orbis_Station = em.getChannelServer().getMapFactory().getMap(200000100);
-
+
scheduleNew();
}
@@ -52,14 +52,14 @@ function scheduleNew() {
em.setProperty("docked", "true");
Orbis_docked.setDocked(true);
Ariant_docked.setDocked(true);
-
+
em.setProperty("entry", "true");
em.schedule("stopEntry", closeTime); //The time to close the gate
em.schedule("takeoff", beginTime); //The time to begin the ride
}
function stopEntry() {
- em.setProperty("entry","false");
+ em.setProperty("entry", "false");
}
function takeoff() {
@@ -67,11 +67,11 @@ function takeoff() {
Ariant_btf.warpEveryone(Genie_to_Orbis.getId());
Orbis_docked.broadcastShip(false);
Ariant_docked.broadcastShip(false);
-
- em.setProperty("docked","false");
+
+ em.setProperty("docked", "false");
Orbis_docked.setDocked(false);
Ariant_docked.setDocked(false);
-
+
em.schedule("arrived", rideTime); //The time that require move to destination
}
@@ -80,7 +80,7 @@ function arrived() {
Genie_to_Ariant.warpEveryone(Ariant_docked.getId(), 1);
Orbis_docked.broadcastShip(true);
Ariant_docked.broadcastShip(true);
-
+
scheduleNew();
}
diff --git a/scripts/event/GuardianNex.js b/scripts/event/GuardianNex.js
index 360e414543..9caa825bf5 100644
--- a/scripts/event/GuardianNex.js
+++ b/scripts/event/GuardianNex.js
@@ -5,104 +5,105 @@ var exitMap = 240070000;
var eventMap = 240070010;
var eventBossIds = [7120100, 7120101, 7120102, 8120100, 8120101, 8140510];
-function init(){}
+function init() {}
-function setup(difficulty, lobbyId){
- var eim = em.newInstance("Nex_" + lobbyId);
- eim.setIntProperty("nex", lobbyId);
-
- eim.getInstanceMap(eventMap + 10 * lobbyId).resetFully();
- eim.getInstanceMap(eventMap + 10 * lobbyId).allowSummonState(false);
- respawn(eim);
- eim.startEventTimer(eventTimer);
- return eim;
+function setup(difficulty, lobbyId) {
+ var eim = em.newInstance("Nex_" + lobbyId);
+ eim.setIntProperty("nex", lobbyId);
+
+ eim.getInstanceMap(eventMap + 10 * lobbyId).resetFully();
+ eim.getInstanceMap(eventMap + 10 * lobbyId).allowSummonState(false);
+ respawn(eim);
+ eim.startEventTimer(eventTimer);
+ return eim;
}
-function afterSetup(eim){}
+function afterSetup(eim) {}
-function respawn(eim){}
+function respawn(eim) {}
-function playerEntry(eim, player){
- var cave = eim.getMapInstance(eventMap + 10 * eim.getIntProperty("nex"));
- player.changeMap(cave, 1);
+function playerEntry(eim, player) {
+ var cave = eim.getMapInstance(eventMap + 10 * eim.getIntProperty("nex"));
+ player.changeMap(cave, 1);
}
-function scheduledTimeout(eim){
- var party = eim.getPlayers();
+function scheduledTimeout(eim) {
+ var party = eim.getPlayers();
- for(var i = 0; i < party.size(); i++)
- playerExit(eim, party.get(i));
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
- eim.dispose();
+ eim.dispose();
}
-function playerRevive(eim, player){
- player.respawn(eim, exitMap);
- return false;
+function playerRevive(eim, player) {
+ player.respawn(eim, exitMap);
+ return false;
}
-function playerDead(eim, player){}
+function playerDead(eim, player) {}
function playerDisconnected(eim, player) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
-function monsterValue(eim, mobId){
- return -1;
+function monsterValue(eim, mobId) {
+ return -1;
}
function end(eim) {
- var party = eim.getPlayers();
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
+ var party = eim.getPlayers();
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
+}
+
+function leftParty(eim, player) {}
+
+function disbandParty(eim) {}
+
+function playerUnregistered(eim, player) {}
+
+function playerExit(eim, player) {
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap);
+}
+
+function changedMap(eim, player, mapid) {
+ if (mapid != (eventMap + 10 * eim.getIntProperty("nex"))) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
}
- eim.dispose();
+ }
}
-function leftParty(eim, player){}
+function cancelSchedule() {}
-function disbandParty(eim){}
+function dispose() {}
-function playerUnregistered(eim, player){}
-
-function playerExit(eim, player){
- eim.unregisterPlayer(player);
- player.changeMap(exitMap);
+function clearPQ(eim) {
+ eim.stopEventTimer();
+ eim.setEventCleared();
}
-function changedMap(eim, player, mapid){
- if (mapid != (eventMap + 10 * eim.getIntProperty("nex"))) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
- }
+function monsterKilled(mob, eim) {
+ if (mob.getId() == eventBossIds[eim.getIntProperty("nex")]) {
+ eim.showClearEffect();
+ eim.clearPQ();
+ }
}
-function cancelSchedule(){}
-
-function dispose(){}
-
-function clearPQ(eim){
- eim.stopEventTimer();
- eim.setEventCleared();
-}
-
-function monsterKilled(mob, eim){
- if (mob.getId() == eventBossIds[eim.getIntProperty("nex")]) {
- eim.showClearEffect();
- eim.clearPQ();
- }
-}
-
-function allMonstersDead(eim){}
+function allMonstersDead(eim) {}
// ---------- FILLER FUNCTIONS ----------
diff --git a/scripts/event/GuildQuest.js b/scripts/event/GuildQuest.js
index 796ac62b7d..23b0dfb921 100644
--- a/scripts/event/GuildQuest.js
+++ b/scripts/event/GuildQuest.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Sharenian Guild PQ
-*/
+ */
var isPq = true;
var minPlayers = 6, maxPlayers = 30;
@@ -41,239 +41,248 @@ var bonusTime = 0.5; // 30 seconds
const maxLobbies = 1;
function init() {
- setEventRequirements();
+ setEventRequirements();
}
function getMaxLobbies() {
- return maxLobbies;
+ return maxLobbies;
}
function setEventRequirements() {
- var reqStr = "";
-
- reqStr += "\r\n Number of players: ";
- if(maxPlayers - minPlayers >= 1) reqStr += minPlayers + " ~ " + maxPlayers;
- else reqStr += minPlayers;
-
- reqStr += "\r\n Level range: ";
- if(maxLevel - minLevel >= 1) reqStr += minLevel + " ~ " + maxLevel;
- else reqStr += minLevel;
-
- reqStr += "\r\n All members of the same guild";
-
- reqStr += "\r\n Time limit: ";
- reqStr += eventTime + " minutes";
-
- em.setProperty("party", reqStr);
+ var reqStr = "";
+
+ reqStr += "\r\n Number of players: ";
+ if (maxPlayers - minPlayers >= 1) {
+ reqStr += minPlayers + " ~ " + maxPlayers;
+ } else {
+ reqStr += minPlayers;
+ }
+
+ reqStr += "\r\n Level range: ";
+ if (maxLevel - minLevel >= 1) {
+ reqStr += minLevel + " ~ " + maxLevel;
+ } else {
+ reqStr += minLevel;
+ }
+
+ reqStr += "\r\n All members of the same guild";
+
+ reqStr += "\r\n Time limit: ";
+ reqStr += eventTime + " minutes";
+
+ em.setProperty("party", reqStr);
}
function setEventExclusives(eim) {
- var itemSet = [1032033, 4001024, 4001025, 4001026, 4001027, 4001028, 4001029, 4001030, 4001031, 4001032, 4001033, 4001034, 4001035, 4001037];
- eim.setExclusiveItems(itemSet);
+ var itemSet = [1032033, 4001024, 4001025, 4001026, 4001027, 4001028, 4001029, 4001030, 4001031, 4001032, 4001033, 4001034, 4001035, 4001037];
+ eim.setExclusiveItems(itemSet);
}
function setEventRewards(eim) {
- var itemSet, itemQty, evLevel, expStages;
+ var itemSet, itemQty, evLevel, expStages;
- evLevel = 1; //Rewards at clear PQ
- itemSet = [];
- itemQty = [];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- expStages = []; //bonus exp given on CLEAR stage signal
- eim.setEventClearStageExp(expStages);
+ evLevel = 1; //Rewards at clear PQ
+ itemSet = [];
+ itemQty = [];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ expStages = []; //bonus exp given on CLEAR stage signal
+ eim.setEventClearStageExp(expStages);
}
function getEligibleParty(party) { //selects, from the given party, the team that is allowed to attempt this event
- var eligible = [];
- var hasLeader = false;
-
- var guildId = 0;
-
- if(party.size() > 0) {
- var partyList = party.toArray();
-
- for(var i = 0; i < party.size(); i++) {
- var ch = partyList[i];
- if(ch.isLeader()) {
- guildId = ch.getGuildId();
- break;
- }
- }
+ var eligible = [];
+ var hasLeader = false;
- for(var i = 0; i < party.size(); i++) {
- var ch = partyList[i];
+ var guildId = 0;
- if(ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel && ch.getGuildId() == guildId) {
- if(ch.isLeader()) hasLeader = true;
- eligible.push(ch);
- }
- }
+ if (party.size() > 0) {
+ var partyList = party.toArray();
+
+ for (var i = 0; i < party.size(); i++) {
+ var ch = partyList[i];
+ if (ch.isLeader()) {
+ guildId = ch.getGuildId();
+ break;
+ }
}
-
- if(!(hasLeader)) eligible = [];
- return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
+
+ for (var i = 0; i < party.size(); i++) {
+ var ch = partyList[i];
+
+ if (ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel && ch.getGuildId() == guildId) {
+ if (ch.isLeader()) {
+ hasLeader = true;
+ }
+ eligible.push(ch);
+ }
+ }
+ }
+
+ if (!(hasLeader)) {
+ eligible = [];
+ }
+ return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
}
function setup(level, lobbyid) {
- var eim = em.newInstance("Guild" + lobbyid);
- eim.setProperty("level", level);
-
- eim.setProperty("guild", 0);
- eim.setProperty("canJoin", 1);
- eim.setProperty("canRevive", 0);
-
- eim.getInstanceMap(990000000).resetPQ(level);
- eim.getInstanceMap(990000100).resetPQ(level);
- eim.getInstanceMap(990000200).resetPQ(level);
- eim.getInstanceMap(990000300).resetPQ(level);
- eim.getInstanceMap(990000301).resetPQ(level);
- eim.getInstanceMap(990000400).resetPQ(level);
- eim.getInstanceMap(990000401).resetPQ(level);
- eim.getInstanceMap(990000410).resetPQ(level);
- eim.getInstanceMap(990000420).resetPQ(level);
- eim.getInstanceMap(990000430).resetPQ(level);
- eim.getInstanceMap(990000431).resetPQ(level);
- eim.getInstanceMap(990000440).resetPQ(level);
- eim.getInstanceMap(990000500).resetPQ(level);
- eim.getInstanceMap(990000501).resetPQ(level);
- eim.getInstanceMap(990000502).resetPQ(level);
- eim.getInstanceMap(990000600).resetPQ(level);
- eim.getInstanceMap(990000610).resetPQ(level);
- eim.getInstanceMap(990000611).resetPQ(level);
- eim.getInstanceMap(990000620).resetPQ(level);
- eim.getInstanceMap(990000630).resetPQ(level);
- eim.getInstanceMap(990000631).resetPQ(level);
- eim.getInstanceMap(990000640).resetPQ(level);
- eim.getInstanceMap(990000641).resetPQ(level);
- eim.getInstanceMap(990000700).resetPQ(level);
- eim.getInstanceMap(990000800).resetPQ(level);
- eim.getInstanceMap(990000900).resetPQ(level);
- eim.getInstanceMap(990001000).resetPQ(level);
- eim.getInstanceMap(990001100).resetPQ(level);
- eim.getInstanceMap(990001101).resetPQ(level);
-
- respawnStages(eim);
-
- var ts = Date.now();
- ts += (60000 * waitTime);
- eim.setProperty("entryTimestamp", "" + ts);
-
- eim.startEventTimer(waitTime * 60000);
-
- setEventRewards(eim);
- setEventExclusives(eim);
-
- return eim;
+ var eim = em.newInstance("Guild" + lobbyid);
+ eim.setProperty("level", level);
+
+ eim.setProperty("guild", 0);
+ eim.setProperty("canJoin", 1);
+ eim.setProperty("canRevive", 0);
+
+ eim.getInstanceMap(990000000).resetPQ(level);
+ eim.getInstanceMap(990000100).resetPQ(level);
+ eim.getInstanceMap(990000200).resetPQ(level);
+ eim.getInstanceMap(990000300).resetPQ(level);
+ eim.getInstanceMap(990000301).resetPQ(level);
+ eim.getInstanceMap(990000400).resetPQ(level);
+ eim.getInstanceMap(990000401).resetPQ(level);
+ eim.getInstanceMap(990000410).resetPQ(level);
+ eim.getInstanceMap(990000420).resetPQ(level);
+ eim.getInstanceMap(990000430).resetPQ(level);
+ eim.getInstanceMap(990000431).resetPQ(level);
+ eim.getInstanceMap(990000440).resetPQ(level);
+ eim.getInstanceMap(990000500).resetPQ(level);
+ eim.getInstanceMap(990000501).resetPQ(level);
+ eim.getInstanceMap(990000502).resetPQ(level);
+ eim.getInstanceMap(990000600).resetPQ(level);
+ eim.getInstanceMap(990000610).resetPQ(level);
+ eim.getInstanceMap(990000611).resetPQ(level);
+ eim.getInstanceMap(990000620).resetPQ(level);
+ eim.getInstanceMap(990000630).resetPQ(level);
+ eim.getInstanceMap(990000631).resetPQ(level);
+ eim.getInstanceMap(990000640).resetPQ(level);
+ eim.getInstanceMap(990000641).resetPQ(level);
+ eim.getInstanceMap(990000700).resetPQ(level);
+ eim.getInstanceMap(990000800).resetPQ(level);
+ eim.getInstanceMap(990000900).resetPQ(level);
+ eim.getInstanceMap(990001000).resetPQ(level);
+ eim.getInstanceMap(990001100).resetPQ(level);
+ eim.getInstanceMap(990001101).resetPQ(level);
+
+ respawnStages(eim);
+
+ var ts = Date.now();
+ ts += (60000 * waitTime);
+ eim.setProperty("entryTimestamp", "" + ts);
+
+ eim.startEventTimer(waitTime * 60000);
+
+ setEventRewards(eim);
+ setEventExclusives(eim);
+
+ return eim;
}
function isTeamAllJobs(eim) {
- var eventJobs = eim.getEventPlayersJobs();
- var rangeJobs = parseInt('111110', 2);
-
- return ((eventJobs & rangeJobs) == rangeJobs);
+ var eventJobs = eim.getEventPlayersJobs();
+ var rangeJobs = parseInt('111110', 2);
+
+ return ((eventJobs & rangeJobs) == rangeJobs);
}
function afterSetup(eim) {
- var leader = em.getChannelServer().getPlayerStorage().getCharacterById(eim.getLeaderId());
- if(leader != null) {
- eim.setProperty("guild", "" + leader.getGuildId());
- }
+ var leader = em.getChannelServer().getPlayerStorage().getCharacterById(eim.getLeaderId());
+ if (leader != null) {
+ eim.setProperty("guild", "" + leader.getGuildId());
+ }
}
function respawnStages(eim) {}
function playerEntry(eim, player) {
- var map = eim.getMapInstance(entryMap);
- player.changeMap(map, map.getPortal(0));
+ var map = eim.getMapInstance(entryMap);
+ player.changeMap(map, map.getPortal(0));
}
function scheduledTimeout(eim) {
- if(eim.isEventCleared()) {
- eim.warpEventTeam(990001100);
- } else {
- if(eim.getIntProperty("canJoin") == 1) {
- eim.setProperty("canJoin", 0);
+ if (eim.isEventCleared()) {
+ eim.warpEventTeam(990001100);
+ } else {
+ if (eim.getIntProperty("canJoin") == 1) {
+ eim.setProperty("canJoin", 0);
- if(eim.checkEventTeamLacking(true, minPlayers)) {
- end(eim);
- } else {
- eim.startEventTimer(eventTime * 60000);
-
- if(isTeamAllJobs(eim)) {
- var rnd = Math.floor(Math.random() * 4);
- eim.applyEventPlayersItemBuff(2023000 + rnd);
- }
- }
- } else {
- end(eim);
+ if (eim.checkEventTeamLacking(true, minPlayers)) {
+ end(eim);
+ } else {
+ eim.startEventTimer(eventTime * 60000);
+
+ if (isTeamAllJobs(eim)) {
+ var rnd = Math.floor(Math.random() * 4);
+ eim.applyEventPlayersItemBuff(2023000 + rnd);
}
+ }
+ } else {
+ end(eim);
}
+ }
}
function playerUnregistered(eim, player) {
- player.cancelEffect(2023000);
- player.cancelEffect(2023001);
- player.cancelEffect(2023002);
- player.cancelEffect(2023003);
+ player.cancelEffect(2023000);
+ player.cancelEffect(2023001);
+ player.cancelEffect(2023002);
+ player.cancelEffect(2023003);
}
function playerExit(eim, player) {
- eim.unregisterPlayer(player);
- player.changeMap(exitMap, 0);
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap, 0);
}
function changedMap(eim, player, mapid) {
- if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player) && eim.getIntProperty("canJoin") == 0) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (mapid < minMapId || mapid > maxMapId) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, player) && eim.getIntProperty("canJoin") == 0) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
}
+ }
}
function afterChangedMap(eim, player, mapid) {
- if (mapid == 990000100) {
- var texttt = "So, here is the brief. You guys should be warned that, once out on the fortress outskirts, anyone that would not be equipping the #b#t1032033##k will die instantly due to the deteriorated state of the air around there. That being said, once your team moves out, make sure to #bhit the glowing rocks#k in that region and #bequip the dropped item#k before advancing stages. That will protect you thoroughly from the air sickness. Good luck!";
- player.getAbstractPlayerInteraction().npcTalk(9040000, texttt);
- }
+ if (mapid == 990000100) {
+ var texttt = "So, here is the brief. You guys should be warned that, once out on the fortress outskirts, anyone that would not be equipping the #b#t1032033##k will die instantly due to the deteriorated state of the air around there. That being said, once your team moves out, make sure to #bhit the glowing rocks#k in that region and #bequip the dropped item#k before advancing stages. That will protect you thoroughly from the air sickness. Good luck!";
+ player.getAbstractPlayerInteraction().npcTalk(9040000, texttt);
+ }
}
function changedLeader(eim, leader) {}
function playerDead(eim, player) {
- if(player.getMapId() == 990000900) {
- if(player.getMap().countAlivePlayers() == 0 && player.getMap().countMonsters() > 0) {
- end(eim);
- }
+ if (player.getMapId() == 990000900) {
+ if (player.getMap().countAlivePlayers() == 0 && player.getMap().countMonsters() > 0) {
+ end(eim);
}
+ }
}
function playerRevive(eim, player) { // player presses ok on the death pop up.
- if(eim.getIntProperty("canRevive") == 0) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player) && eim.getIntProperty("canJoin") == 0) {
- player.respawn(eim, exitMap);
- end(eim);
- }
- else {
- player.respawn(eim, exitMap);
- }
-
- return false;
+ if (eim.getIntProperty("canRevive") == 0) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, player) && eim.getIntProperty("canJoin") == 0) {
+ player.respawn(eim, exitMap);
+ end(eim);
+ } else {
+ player.respawn(eim, exitMap);
}
-
- return true;
+
+ return false;
+ }
+
+ return true;
}
function playerDisconnected(eim, player) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player) && eim.getIntProperty("canJoin") == 0) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player) && eim.getIntProperty("canJoin") == 0) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function leftParty(eim, player) {}
@@ -281,27 +290,27 @@ function leftParty(eim, player) {}
function disbandParty(eim) {}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function end(eim) {
- var party = eim.getPlayers();
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ var party = eim.getPlayers();
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
}
function giveRandomEventReward(eim, player) {
- eim.giveEventReward(player);
+ eim.giveEventReward(player);
}
function clearPQ(eim) {
- eim.stopEventTimer();
- eim.setEventCleared();
-
- eim.warpEventTeam(clearMap);
- eim.startEventTimer(bonusTime * 60000);
+ eim.stopEventTimer();
+ eim.setEventCleared();
+
+ eim.warpEventTeam(clearMap);
+ eim.startEventTimer(bonusTime * 60000);
}
function monsterKilled(mob, eim) {}
@@ -311,9 +320,9 @@ function allMonstersDead(eim) {}
function cancelSchedule() {}
function dispose(eim) {
- em.schedule("reopenGuildQuest", em.getLobbyDelay() * 1.5 * 1000);
+ em.schedule("reopenGuildQuest", em.getLobbyDelay() * 1.5 * 1000);
}
function reopenGuildQuest() {
- em.attemptStartGuildInstance();
+ em.attemptStartGuildInstance();
}
\ No newline at end of file
diff --git a/scripts/event/Hak.js b/scripts/event/Hak.js
index d47a926126..d5dd12e629 100644
--- a/scripts/event/Hak.js
+++ b/scripts/event/Hak.js
@@ -1,6 +1,6 @@
-var returnTo = new Array(200000141, 250000100);
-var rideTo = new Array(250000100, 200000141);
-var birdRide = new Array(200090300, 200090310);
+var returnTo = [200000141, 250000100];
+var rideTo = [250000100, 200000141];
+var birdRide = [200090300, 200090310];
var myRide;
var returnMap;
var exitMap;
@@ -15,49 +15,49 @@ function init() {
}
function setup(level, lobbyid) {
- var eim = em.newInstance("Hak_" + lobbyid);
- return eim;
+ var eim = em.newInstance("Hak_" + lobbyid);
+ return eim;
}
function afterSetup(eim) {}
function playerEntry(eim, player) {
- if (player.getMapId() == returnTo[0]) {
- myRide = 0;
- } else {
- myRide = 1;
- }
- exitMap = eim.getEm().getChannelServer().getMapFactory().getMap(rideTo[myRide]);
- returnMap = eim.getMapFactory().getMap(returnTo[myRide]);
- onRide = eim.getMapFactory().getMap(birdRide[myRide]);
- player.changeMap(onRide, onRide.getPortal(0));
+ if (player.getMapId() == returnTo[0]) {
+ myRide = 0;
+ } else {
+ myRide = 1;
+ }
+ exitMap = eim.getEm().getChannelServer().getMapFactory().getMap(rideTo[myRide]);
+ returnMap = eim.getMapFactory().getMap(returnTo[myRide]);
+ onRide = eim.getMapFactory().getMap(birdRide[myRide]);
+ player.changeMap(onRide, onRide.getPortal(0));
const PacketCreator = Java.type('tools.PacketCreator');
- player.sendPacket(PacketCreator.getClock(rideTime / 1000));
- eim.schedule("timeOut", rideTime);
+ player.sendPacket(PacketCreator.getClock(rideTime / 1000));
+ eim.schedule("timeOut", rideTime);
}
function timeOut(eim) {
- end(eim);
+ end(eim);
}
function playerUnregistered(eim, player) {}
function playerExit(eim, player, success) {
- eim.unregisterPlayer(player);
- player.changeMap(success ? exitMap.getId() : returnMap.getId(), 0);
+ eim.unregisterPlayer(player);
+ player.changeMap(success ? exitMap.getId() : returnMap.getId(), 0);
}
function end(eim) {
- var party = eim.getPlayers();
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i), true);
- }
- eim.dispose();
+ var party = eim.getPlayers();
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i), true);
+ }
+ eim.dispose();
}
function playerDisconnected(eim, player) {
- playerExit(eim, player, false);
+ playerExit(eim, player, false);
}
function cancelSchedule() {}
diff --git a/scripts/event/HenesysPQ.js b/scripts/event/HenesysPQ.js
index f9c3bfed64..93fc8058bd 100644
--- a/scripts/event/HenesysPQ.js
+++ b/scripts/event/HenesysPQ.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Henesys PQ
-*/
+ */
var isPq = true;
var minPlayers = 3, maxPlayers = 6;
@@ -39,231 +39,240 @@ var eventTime = 10; // 10 minutes
const maxLobbies = 1;
function init() {
- setEventRequirements();
+ setEventRequirements();
}
function getMaxLobbies() {
- return maxLobbies;
+ return maxLobbies;
}
function setEventRequirements() {
- var reqStr = "";
-
- reqStr += "\r\n Number of players: ";
- if(maxPlayers - minPlayers >= 1) reqStr += minPlayers + " ~ " + maxPlayers;
- else reqStr += minPlayers;
-
- reqStr += "\r\n Level range: ";
- if(maxLevel - minLevel >= 1) reqStr += minLevel + " ~ " + maxLevel;
- else reqStr += minLevel;
-
- reqStr += "\r\n Time limit: ";
- reqStr += eventTime + " minutes";
-
- em.setProperty("party", reqStr);
+ var reqStr = "";
+
+ reqStr += "\r\n Number of players: ";
+ if (maxPlayers - minPlayers >= 1) {
+ reqStr += minPlayers + " ~ " + maxPlayers;
+ } else {
+ reqStr += minPlayers;
+ }
+
+ reqStr += "\r\n Level range: ";
+ if (maxLevel - minLevel >= 1) {
+ reqStr += minLevel + " ~ " + maxLevel;
+ } else {
+ reqStr += minLevel;
+ }
+
+ reqStr += "\r\n Time limit: ";
+ reqStr += eventTime + " minutes";
+
+ em.setProperty("party", reqStr);
}
function setEventExclusives(eim) {
- var itemSet = [4001095, 4001096, 4001097, 4001098, 4001099, 4001100, 4001101];
- eim.setExclusiveItems(itemSet);
+ var itemSet = [4001095, 4001096, 4001097, 4001098, 4001099, 4001100, 4001101];
+ eim.setExclusiveItems(itemSet);
}
function setEventRewards(eim) {
- var itemSet, itemQty, evLevel, expStages;
+ var itemSet, itemQty, evLevel, expStages;
- evLevel = 1; //Rewards at clear PQ
- itemSet = [4001158];
- itemQty = [1];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- expStages = [1600]; //bonus exp given on CLEAR stage signal
- eim.setEventClearStageExp(expStages);
+ evLevel = 1; //Rewards at clear PQ
+ itemSet = [4001158];
+ itemQty = [1];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ expStages = [1600]; //bonus exp given on CLEAR stage signal
+ eim.setEventClearStageExp(expStages);
}
function getEligibleParty(party) { //selects, from the given party, the team that is allowed to attempt this event
- var eligible = [];
- var hasLeader = false;
-
- if(party.size() > 0) {
- var partyList = party.toArray();
+ var eligible = [];
+ var hasLeader = false;
- for(var i = 0; i < party.size(); i++) {
- var ch = partyList[i];
+ if (party.size() > 0) {
+ var partyList = party.toArray();
- if(ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
- if(ch.isLeader()) hasLeader = true;
- eligible.push(ch);
- }
+ for (var i = 0; i < party.size(); i++) {
+ var ch = partyList[i];
+
+ if (ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
+ if (ch.isLeader()) {
+ hasLeader = true;
}
+ eligible.push(ch);
+ }
}
-
- if(!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) eligible = [];
- return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
+ }
+
+ if (!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) {
+ eligible = [];
+ }
+ return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
}
function setup(level, lobbyid) {
- var eim = em.newInstance("Henesys" + lobbyid);
- eim.setProperty("level", level);
- eim.setProperty("stage", "0");
- eim.setProperty("bunnyCake", "0");
- eim.setProperty("bunnyDamaged", "0");
-
- eim.getInstanceMap(910010000).resetPQ(level);
- eim.getInstanceMap(910010000).allowSummonState(false);
-
- eim.getInstanceMap(910010200).resetPQ(level);
-
- respawnStages(eim);
- eim.startEventTimer(eventTime * 60000);
- setEventRewards(eim);
- setEventExclusives(eim);
- return eim;
+ var eim = em.newInstance("Henesys" + lobbyid);
+ eim.setProperty("level", level);
+ eim.setProperty("stage", "0");
+ eim.setProperty("bunnyCake", "0");
+ eim.setProperty("bunnyDamaged", "0");
+
+ eim.getInstanceMap(910010000).resetPQ(level);
+ eim.getInstanceMap(910010000).allowSummonState(false);
+
+ eim.getInstanceMap(910010200).resetPQ(level);
+
+ respawnStages(eim);
+ eim.startEventTimer(eventTime * 60000);
+ setEventRewards(eim);
+ setEventExclusives(eim);
+ return eim;
}
function afterSetup(eim) {}
function respawnStages(eim) {
- eim.getInstanceMap(910010000).instanceMapRespawn();
- eim.getInstanceMap(910010200).instanceMapRespawn();
-
- eim.schedule("respawnStages", 15 * 1000);
+ eim.getInstanceMap(910010000).instanceMapRespawn();
+ eim.getInstanceMap(910010200).instanceMapRespawn();
+
+ eim.schedule("respawnStages", 15 * 1000);
}
function playerEntry(eim, player) {
- var map = eim.getMapInstance(entryMap);
- player.changeMap(map, map.getPortal(0));
+ var map = eim.getMapInstance(entryMap);
+ player.changeMap(map, map.getPortal(0));
}
function scheduledTimeout(eim) {
- if(eim.getProperty("1stageclear") != null) {
- var curStage = 910010200, toStage = 910010400;
- eim.warpEventTeam(curStage, toStage);
- }
- else {
- end(eim);
- }
+ if (eim.getProperty("1stageclear") != null) {
+ var curStage = 910010200, toStage = 910010400;
+ eim.warpEventTeam(curStage, toStage);
+ } else {
+ end(eim);
+ }
}
function bunnyDefeated(eim) {
- eim.dropMessage(5, "Due to your failure to protect the Moon Bunny, you have been transported to the Exile Map.");
- end(eim);
+ eim.dropMessage(5, "Due to your failure to protect the Moon Bunny, you have been transported to the Exile Map.");
+ end(eim);
}
function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
- eim.unregisterPlayer(player);
- player.changeMap(exitMap, 0);
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap, 0);
}
function playerLeft(eim, player) {
- if(!eim.isEventCleared()) {
- playerExit(eim, player);
- }
+ if (!eim.isEventCleared()) {
+ playerExit(eim, player);
+ }
}
function changedMap(eim, player, mapid) {
- if (mapid < minMapId || mapid > maxMapId || mapid == 910010300) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (mapid < minMapId || mapid > maxMapId || mapid == 910010300) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
}
+ }
}
function changedLeader(eim, leader) {
- var mapid = leader.getMapId();
- if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
- end(eim);
- }
+ var mapid = leader.getMapId();
+ if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
+ end(eim);
+ }
}
function playerDead(eim, player) {}
function playerRevive(eim, player) { // player presses ok on the death pop up.
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function playerDisconnected(eim, player) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function leftParty(eim, player) {
- if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
- end(eim);
- }
- else
- playerLeft(eim, player);
+ if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
+ end(eim);
+ } else {
+ playerLeft(eim, player);
+ }
}
function disbandParty(eim) {
- if (!eim.isEventCleared()) {
- end(eim);
- }
+ if (!eim.isEventCleared()) {
+ end(eim);
+ }
}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function end(eim) {
- var party = eim.getPlayers();
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ var party = eim.getPlayers();
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
}
function giveRandomEventReward(eim, player) {
- eim.giveEventReward(player);
+ eim.giveEventReward(player);
}
function clearPQ(eim) {
- eim.stopEventTimer();
- eim.setEventCleared();
-
- eim.warpEventTeam(910010100);
+ eim.stopEventTimer();
+ eim.setEventCleared();
+
+ eim.warpEventTeam(910010100);
}
function monsterKilled(mob, eim) {}
function friendlyKilled(mob, eim) {
- if (mob.getId() == 9300061) {
- eim.schedule("bunnyDefeated", 5 * 1000);
- }
+ if (mob.getId() == 9300061) {
+ eim.schedule("bunnyDefeated", 5 * 1000);
+ }
}
function friendlyItemDrop(eim, mob) {
- if (mob.getId() == 9300061) {
- var cakes = eim.getIntProperty("bunnyCake") + 1;
- eim.setIntProperty("bunnyCake", cakes);
+ if (mob.getId() == 9300061) {
+ var cakes = eim.getIntProperty("bunnyCake") + 1;
+ eim.setIntProperty("bunnyCake", cakes);
- const PacketCreator = Java.type('tools.PacketCreator');
- mob.getMap().broadcastMessage(PacketCreator.serverNotice(6, "The Moon Bunny made rice cake number " + cakes + "."));
- }
+ const PacketCreator = Java.type('tools.PacketCreator');
+ mob.getMap().broadcastMessage(PacketCreator.serverNotice(6, "The Moon Bunny made rice cake number " + cakes + "."));
+ }
}
function friendlyDamaged(eim, mob) {
- if (mob.getId() == 9300061) {
- var bunnyDamage = eim.getIntProperty("bunnyDamaged") + 1;
- if (bunnyDamage > 5) {
- const PacketCreator = Java.type('tools.PacketCreator');
- broadcastMessage(PacketCreator.serverNotice(6, "The Moon Bunny is feeling sick. Please protect it so it can make delicious rice cakes."));
- eim.setIntProperty("bunnyDamaged", 0);
- }
+ if (mob.getId() == 9300061) {
+ var bunnyDamage = eim.getIntProperty("bunnyDamaged") + 1;
+ if (bunnyDamage > 5) {
+ const PacketCreator = Java.type('tools.PacketCreator');
+ broadcastMessage(PacketCreator.serverNotice(6, "The Moon Bunny is feeling sick. Please protect it so it can make delicious rice cakes."));
+ eim.setIntProperty("bunnyDamaged", 0);
}
+ }
}
function allMonstersDead(eim) {}
diff --git a/scripts/event/HolidayPQ_1.js b/scripts/event/HolidayPQ_1.js
index 42490321ab..b2c2593917 100644
--- a/scripts/event/HolidayPQ_1.js
+++ b/scripts/event/HolidayPQ_1.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Holiday PQ
-*/
+ */
// GMS-like event string data thanks to iHealForLove
@@ -41,314 +41,330 @@ var eventTime = 15; // 15 minutes
const maxLobbies = 1;
function init() {
- setEventRequirements();
+ setEventRequirements();
}
function getMaxLobbies() {
- return maxLobbies;
+ return maxLobbies;
}
function setEventRequirements() {
- var reqStr = "";
-
- reqStr += "\r\n Number of players: ";
- if(maxPlayers - minPlayers >= 1) reqStr += minPlayers + " ~ " + maxPlayers;
- else reqStr += minPlayers;
-
- reqStr += "\r\n Level range: ";
- if(maxLevel - minLevel >= 1) reqStr += minLevel + " ~ " + maxLevel;
- else reqStr += minLevel;
-
- reqStr += "\r\n Time limit: ";
- reqStr += eventTime + " minutes";
-
- em.setProperty("party", reqStr);
+ var reqStr = "";
+
+ reqStr += "\r\n Number of players: ";
+ if (maxPlayers - minPlayers >= 1) {
+ reqStr += minPlayers + " ~ " + maxPlayers;
+ } else {
+ reqStr += minPlayers;
+ }
+
+ reqStr += "\r\n Level range: ";
+ if (maxLevel - minLevel >= 1) {
+ reqStr += minLevel + " ~ " + maxLevel;
+ } else {
+ reqStr += minLevel;
+ }
+
+ reqStr += "\r\n Time limit: ";
+ reqStr += eventTime + " minutes";
+
+ em.setProperty("party", reqStr);
}
function setEventExclusives(eim) {
- var itemSet = [4032094, 4032095];
- eim.setExclusiveItems(itemSet);
+ var itemSet = [4032094, 4032095];
+ eim.setExclusiveItems(itemSet);
}
function setEventRewards(eim) {
- var itemSet, itemQty, evLevel, expStages;
+ var itemSet, itemQty, evLevel, expStages;
- evLevel = 3; //Rewards at Hard difficulty
- itemSet = [1302080, 1002033, 2022153, 2022042, 2020006, 2020009, 2020016, 2020024, 4010006, 4010007, 4020004, 4020005, 4003002];
- itemQty = [1, 1, 1, 5, 20, 15, 10, 10, 2, 4, 4, 4, 1];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- evLevel = 2; //Rewards at Normal difficulty
- itemSet = [1302080, 1002033, 2012005, 2012006, 2020002, 2020025, 2020026, 4010003, 4010004, 4010005, 4020002, 4020003, 4020007];
- itemQty = [1, 1, 15, 15, 15, 10, 10, 3, 3, 3, 3, 3, 3];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- evLevel = 1; //Rewards at Easy difficulty
- itemSet = [1002033, 2012005, 2012006, 2020002, 2022006, 2022002, 4010000, 4010001, 4010002, 4020000, 4020001, 4020006];
- itemQty = [1, 15, 15, 10, 5, 5, 2, 2, 2, 2, 2, 2];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- expStages = [210, 620, 500, 1400, 950, 2200]; //bonus exp given on CLEAR stage signal
- eim.setEventClearStageExp(expStages);
+ evLevel = 3; //Rewards at Hard difficulty
+ itemSet = [1302080, 1002033, 2022153, 2022042, 2020006, 2020009, 2020016, 2020024, 4010006, 4010007, 4020004, 4020005, 4003002];
+ itemQty = [1, 1, 1, 5, 20, 15, 10, 10, 2, 4, 4, 4, 1];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ evLevel = 2; //Rewards at Normal difficulty
+ itemSet = [1302080, 1002033, 2012005, 2012006, 2020002, 2020025, 2020026, 4010003, 4010004, 4010005, 4020002, 4020003, 4020007];
+ itemQty = [1, 1, 15, 15, 15, 10, 10, 3, 3, 3, 3, 3, 3];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ evLevel = 1; //Rewards at Easy difficulty
+ itemSet = [1002033, 2012005, 2012006, 2020002, 2022006, 2022002, 4010000, 4010001, 4010002, 4020000, 4020001, 4020006];
+ itemQty = [1, 15, 15, 10, 5, 5, 2, 2, 2, 2, 2, 2];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ expStages = [210, 620, 500, 1400, 950, 2200]; //bonus exp given on CLEAR stage signal
+ eim.setEventClearStageExp(expStages);
}
function getEligibleParty(party) { //selects, from the given party, the team that is allowed to attempt this event
- var eligible = [];
- var hasLeader = false;
-
- if(party.size() > 0) {
- var partyList = party.toArray();
+ var eligible = [];
+ var hasLeader = false;
- for(var i = 0; i < party.size(); i++) {
- var ch = partyList[i];
+ if (party.size() > 0) {
+ var partyList = party.toArray();
- if(ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
- if(ch.isLeader()) hasLeader = true;
- eligible.push(ch);
- }
+ for (var i = 0; i < party.size(); i++) {
+ var ch = partyList[i];
+
+ if (ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
+ if (ch.isLeader()) {
+ hasLeader = true;
}
+ eligible.push(ch);
+ }
}
-
- if(!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) eligible = [];
- return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
+ }
+
+ if (!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) {
+ eligible = [];
+ }
+ return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
}
function setup(level, lobbyid) {
- var eim = em.newInstance("Holiday1_" + lobbyid);
- eim.setProperty("level", level);
- eim.setProperty("stage", "0");
- eim.setProperty("statusStg1", "-1");
- eim.setProperty("missingDrops", "0");
- eim.setProperty("snowmanLevel", "0");
- eim.setProperty("snowmanStep", "0");
- eim.setProperty("spawnedBoss", "0");
-
- var mapobj = eim.getInstanceMap(entryMap);
- mapobj.resetPQ(level);
- mapobj.allowSummonState(false);
-
- respawnStages(eim);
- eim.startEventTimer(eventTime * 60000);
- setEventRewards(eim);
- setEventExclusives(eim);
- return eim;
+ var eim = em.newInstance("Holiday1_" + lobbyid);
+ eim.setProperty("level", level);
+ eim.setProperty("stage", "0");
+ eim.setProperty("statusStg1", "-1");
+ eim.setProperty("missingDrops", "0");
+ eim.setProperty("snowmanLevel", "0");
+ eim.setProperty("snowmanStep", "0");
+ eim.setProperty("spawnedBoss", "0");
+
+ var mapobj = eim.getInstanceMap(entryMap);
+ mapobj.resetPQ(level);
+ mapobj.allowSummonState(false);
+
+ respawnStages(eim);
+ eim.startEventTimer(eventTime * 60000);
+ setEventRewards(eim);
+ setEventExclusives(eim);
+ return eim;
}
function afterSetup(eim) {}
function respawnStages(eim) {
- eim.getInstanceMap(entryMap).instanceMapRespawn();
- eim.schedule("respawnStages", 10 * 1000);
+ eim.getInstanceMap(entryMap).instanceMapRespawn();
+ eim.schedule("respawnStages", 10 * 1000);
}
function snowmanHeal(eim) {
- var difficulty = eim.getIntProperty("level");
- var snowman = eim.getInstanceMap(entryMap).getMonsterById(9400316 + (5 * difficulty) + 5);
-
- snowman.heal(200 + 200 * difficulty, 0);
- eim.schedule("snowmanHeal", 10 * 1000);
+ var difficulty = eim.getIntProperty("level");
+ var snowman = eim.getInstanceMap(entryMap).getMonsterById(9400316 + (5 * difficulty) + 5);
+
+ snowman.heal(200 + 200 * difficulty, 0);
+ eim.schedule("snowmanHeal", 10 * 1000);
}
function playerEntry(eim, player) {
- var map = eim.getMapInstance(entryMap);
- player.changeMap(map, map.getPortal(0));
+ var map = eim.getMapInstance(entryMap);
+ player.changeMap(map, map.getPortal(0));
}
function scheduledTimeout(eim) {
- end(eim);
+ end(eim);
}
function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
- eim.unregisterPlayer(player);
- player.changeMap(exitMap, 0);
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap, 0);
}
function playerLeft(eim, player) {
- if(!eim.isEventCleared()) {
- playerExit(eim, player);
- }
+ if (!eim.isEventCleared()) {
+ playerExit(eim, player);
+ }
}
function changedMap(eim, player, mapid) {
- if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (mapid < minMapId || mapid > maxMapId) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
}
+ }
}
function changedLeader(eim, leader) {
- var mapid = leader.getMapId();
- if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
- end(eim);
- }
+ var mapid = leader.getMapId();
+ if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
+ end(eim);
+ }
}
function playerDead(eim, player) {}
function playerRevive(eim, player) { // player presses ok on the death pop up.
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function playerDisconnected(eim, player) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function leftParty(eim, player) {
- if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
- end(eim);
- }
- else
- playerLeft(eim, player);
+ if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
+ end(eim);
+ } else {
+ playerLeft(eim, player);
+ }
}
function disbandParty(eim) {
- if (!eim.isEventCleared()) {
- end(eim);
- }
+ if (!eim.isEventCleared()) {
+ end(eim);
+ }
}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function end(eim) {
- var party = eim.getPlayers();
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ var party = eim.getPlayers();
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
}
function giveRandomEventReward(eim, player) {
- eim.giveEventReward(player);
+ eim.giveEventReward(player);
}
function clearPQ(eim) {
- eim.stopEventTimer();
- eim.setEventCleared();
-
- eim.applyEventPlayersItemBuff(2022436);
+ eim.stopEventTimer();
+ eim.setEventCleared();
+
+ eim.applyEventPlayersItemBuff(2022436);
}
function isScrooge(mob) {
- var mobid = mob.getId();
- return mobid >= 9400319 && mobid <= 9400321;
+ var mobid = mob.getId();
+ return mobid >= 9400319 && mobid <= 9400321;
}
function monsterKilled(mob, eim) {
- try {
- if(eim.isEventCleared()) return;
- else if(isScrooge(mob)) {
- eim.giveEventPlayersStageReward(2 * eim.getIntProperty("level"));
- eim.showClearEffect();
- eim.clearPQ();
- return;
- }
+ try {
+ if (eim.isEventCleared()) {
+ return;
+ } else if (isScrooge(mob)) {
+ eim.giveEventPlayersStageReward(2 * eim.getIntProperty("level"));
+ eim.showClearEffect();
+ eim.clearPQ();
+ return;
+ }
- var rnd = Math.random();
- var forceDrop = false;
- if(rnd >= 0.42) { // 42% chance of dropping token
- var miss = eim.getIntProperty("missingDrops");
- if(miss < 5) {
- eim.setIntProperty("missingDrops", miss + 1);
- return;
- }
-
- forceDrop = true;
- }
-
- var mapObj = mob.getMap();
- const Item = Java.type('client.inventory.Item');
- var itemObj = new Item((forceDrop || Math.random() < 0.77) ? 4032094 : 4032095, 0, 1); // 77% chance of not fake
- var dropper = eim.getPlayers().get(0);
+ var rnd = Math.random();
+ var forceDrop = false;
+ if (rnd >= 0.42) { // 42% chance of dropping token
+ var miss = eim.getIntProperty("missingDrops");
+ if (miss < 5) {
+ eim.setIntProperty("missingDrops", miss + 1);
+ return;
+ }
- mapObj.spawnItemDrop(mob, dropper, itemObj, mob.getPosition(), true, false);
- eim.setIntProperty("missingDrops", 0);
- } catch(err) {} // PQ not started yet
+ forceDrop = true;
+ }
+
+ var mapObj = mob.getMap();
+ const Item = Java.type('client.inventory.Item');
+ var itemObj = new Item((forceDrop || Math.random() < 0.77) ? 4032094 : 4032095, 0, 1); // 77% chance of not fake
+ var dropper = eim.getPlayers().get(0);
+
+ mapObj.spawnItemDrop(mob, dropper, itemObj, mob.getPosition(), true, false);
+ eim.setIntProperty("missingDrops", 0);
+ } catch (err) {
+ } // PQ not started yet
}
function allMonstersDead(eim) {}
function friendlyKilled(mob, eim) {
- eim.setIntProperty("snowmanStep", 0);
- var snowmanLevel = eim.getIntProperty("snowmanLevel");
-
- if(snowmanLevel <= 1) {
- end(eim);
- } else {
- eim.setIntProperty("snowmanLevel", snowmanLevel - 1);
- }
+ eim.setIntProperty("snowmanStep", 0);
+ var snowmanLevel = eim.getIntProperty("snowmanLevel");
+
+ if (snowmanLevel <= 1) {
+ end(eim);
+ } else {
+ eim.setIntProperty("snowmanLevel", snowmanLevel - 1);
+ }
}
function snowmanEvolve(eim, curLevel) {
- var mapobj = eim.getInstanceMap(entryMap);
- var difficulty = eim.getIntProperty("level");
- var snowman = mapobj.getMonsterById(9400317 + (5 * difficulty) + (curLevel - 1));
-
- eim.setIntProperty("snowmanLevel", curLevel + 2); // increment by 2 to decrement by 1 on friendlyKilled
- mapobj.killMonster(snowman, null, false, 2);
+ var mapobj = eim.getInstanceMap(entryMap);
+ var difficulty = eim.getIntProperty("level");
+ var snowman = mapobj.getMonsterById(9400317 + (5 * difficulty) + (curLevel - 1));
- const LifeFactory = Java.type('server.life.LifeFactory');
- const Point = Java.type('java.awt.Point');
- var snowman = LifeFactory.getMonster(9400317 + (5 * difficulty) + curLevel);
- mapobj.spawnMonsterOnGroundBelow(snowman, new Point(-180, 15));
-
- if(curLevel >= 4) {
- mapobj.allowSummonState(false);
- mapobj.killAllMonstersNotFriendly();
- mapobj.setReactorState();
-
- eim.giveEventPlayersStageReward(2 * difficulty - 1);
- eim.showClearEffect();
- }
+ eim.setIntProperty("snowmanLevel", curLevel + 2); // increment by 2 to decrement by 1 on friendlyKilled
+ mapobj.killMonster(snowman, null, false, 2);
+
+ const LifeFactory = Java.type('server.life.LifeFactory');
+ const Point = Java.type('java.awt.Point');
+ var snowman = LifeFactory.getMonster(9400317 + (5 * difficulty) + curLevel);
+ mapobj.spawnMonsterOnGroundBelow(snowman, new Point(-180, 15));
+
+ if (curLevel >= 4) {
+ mapobj.allowSummonState(false);
+ mapobj.killAllMonstersNotFriendly();
+ mapobj.setReactorState();
+
+ eim.giveEventPlayersStageReward(2 * difficulty - 1);
+ eim.showClearEffect();
+ }
}
function snowmanSnack(eim) {
- if(eim.getIntProperty("snowmanLevel") >= 5) return;
-
- var step = eim.getIntProperty("snowmanStep");
- var snowmanLevel = eim.getIntProperty("snowmanLevel");
-
- if(step >= 2 + (eim.getIntProperty("level") * snowmanLevel)) {
- step = 0;
- snowmanEvolve(eim, snowmanLevel);
- } else {
- var mapobj = eim.getInstanceMap(entryMap);
- var difficulty = eim.getIntProperty("level");
- var snowman = mapobj.getMonsterById(9400316 + (5 * difficulty) + snowmanLevel);
-
- snowman.heal(200 + (200 * snowmanLevel), 0);
- step += 1;
- }
-
- eim.setIntProperty("snowmanStep", step);
+ if (eim.getIntProperty("snowmanLevel") >= 5) {
+ return;
+ }
+
+ var step = eim.getIntProperty("snowmanStep");
+ var snowmanLevel = eim.getIntProperty("snowmanLevel");
+
+ if (step >= 2 + (eim.getIntProperty("level") * snowmanLevel)) {
+ step = 0;
+ snowmanEvolve(eim, snowmanLevel);
+ } else {
+ var mapobj = eim.getInstanceMap(entryMap);
+ var difficulty = eim.getIntProperty("level");
+ var snowman = mapobj.getMonsterById(9400316 + (5 * difficulty) + snowmanLevel);
+
+ snowman.heal(200 + (200 * snowmanLevel), 0);
+ step += 1;
+ }
+
+ eim.setIntProperty("snowmanStep", step);
}
function snowmanSnackFake(eim) {
- if(eim.getIntProperty("snowmanLevel") >= 5) return;
-
- var step = eim.getIntProperty("snowmanStep");
- if(step > 0) {
- eim.setIntProperty("snowmanStep", step - 1);
- }
-
- eim.dropMessage(5, "The snowman absorbed a Fake Snow Vigor!");
+ if (eim.getIntProperty("snowmanLevel") >= 5) {
+ return;
+ }
+
+ var step = eim.getIntProperty("snowmanStep");
+ if (step > 0) {
+ eim.setIntProperty("snowmanStep", step - 1);
+ }
+
+ eim.dropMessage(5, "The snowman absorbed a Fake Snow Vigor!");
}
diff --git a/scripts/event/HolidayPQ_2.js b/scripts/event/HolidayPQ_2.js
index fd5798c850..04ad50673a 100644
--- a/scripts/event/HolidayPQ_2.js
+++ b/scripts/event/HolidayPQ_2.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Holiday PQ
-*/
+ */
// GMS-like event string data thanks to iHealForLove
@@ -41,314 +41,330 @@ var eventTime = 20; // 20 minutes
const maxLobbies = 1;
function init() {
- setEventRequirements();
+ setEventRequirements();
}
function getMaxLobbies() {
- return maxLobbies;
+ return maxLobbies;
}
function setEventRequirements() {
- var reqStr = "";
-
- reqStr += "\r\n Number of players: ";
- if(maxPlayers - minPlayers >= 1) reqStr += minPlayers + " ~ " + maxPlayers;
- else reqStr += minPlayers;
-
- reqStr += "\r\n Level range: ";
- if(maxLevel - minLevel >= 1) reqStr += minLevel + " ~ " + maxLevel;
- else reqStr += minLevel;
-
- reqStr += "\r\n Time limit: ";
- reqStr += eventTime + " minutes";
-
- em.setProperty("party", reqStr);
+ var reqStr = "";
+
+ reqStr += "\r\n Number of players: ";
+ if (maxPlayers - minPlayers >= 1) {
+ reqStr += minPlayers + " ~ " + maxPlayers;
+ } else {
+ reqStr += minPlayers;
+ }
+
+ reqStr += "\r\n Level range: ";
+ if (maxLevel - minLevel >= 1) {
+ reqStr += minLevel + " ~ " + maxLevel;
+ } else {
+ reqStr += minLevel;
+ }
+
+ reqStr += "\r\n Time limit: ";
+ reqStr += eventTime + " minutes";
+
+ em.setProperty("party", reqStr);
}
function setEventExclusives(eim) {
- var itemSet = [4032094, 4032095];
- eim.setExclusiveItems(itemSet);
+ var itemSet = [4032094, 4032095];
+ eim.setExclusiveItems(itemSet);
}
function setEventRewards(eim) {
- var itemSet, itemQty, evLevel, expStages;
+ var itemSet, itemQty, evLevel, expStages;
- evLevel = 3; //Rewards at Hard difficulty
- itemSet = [1302080, 1002033, 2022153, 2022042, 2020006, 2020009, 2020016, 2020024, 4010006, 4010007, 4020004, 4020005, 4003002];
- itemQty = [1, 1, 1, 5, 20, 15, 10, 10, 2, 4, 4, 4, 1];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- evLevel = 2; //Rewards at Normal difficulty
- itemSet = [1302080, 1002033, 2012005, 2012006, 2020002, 2020025, 2020026, 4010003, 4010004, 4010005, 4020002, 4020003, 4020007];
- itemQty = [1, 1, 15, 15, 15, 10, 10, 3, 3, 3, 3, 3, 3];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- evLevel = 1; //Rewards at Easy difficulty
- itemSet = [1002033, 2012005, 2012006, 2020002, 2022006, 2022002, 4010000, 4010001, 4010002, 4020000, 4020001, 4020006];
- itemQty = [1, 15, 15, 10, 5, 5, 2, 2, 2, 2, 2, 2];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- expStages = [210, 620, 500, 1400, 950, 2200]; //bonus exp given on CLEAR stage signal
- eim.setEventClearStageExp(expStages);
+ evLevel = 3; //Rewards at Hard difficulty
+ itemSet = [1302080, 1002033, 2022153, 2022042, 2020006, 2020009, 2020016, 2020024, 4010006, 4010007, 4020004, 4020005, 4003002];
+ itemQty = [1, 1, 1, 5, 20, 15, 10, 10, 2, 4, 4, 4, 1];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ evLevel = 2; //Rewards at Normal difficulty
+ itemSet = [1302080, 1002033, 2012005, 2012006, 2020002, 2020025, 2020026, 4010003, 4010004, 4010005, 4020002, 4020003, 4020007];
+ itemQty = [1, 1, 15, 15, 15, 10, 10, 3, 3, 3, 3, 3, 3];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ evLevel = 1; //Rewards at Easy difficulty
+ itemSet = [1002033, 2012005, 2012006, 2020002, 2022006, 2022002, 4010000, 4010001, 4010002, 4020000, 4020001, 4020006];
+ itemQty = [1, 15, 15, 10, 5, 5, 2, 2, 2, 2, 2, 2];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ expStages = [210, 620, 500, 1400, 950, 2200]; //bonus exp given on CLEAR stage signal
+ eim.setEventClearStageExp(expStages);
}
function getEligibleParty(party) { //selects, from the given party, the team that is allowed to attempt this event
- var eligible = [];
- var hasLeader = false;
-
- if(party.size() > 0) {
- var partyList = party.toArray();
+ var eligible = [];
+ var hasLeader = false;
- for(var i = 0; i < party.size(); i++) {
- var ch = partyList[i];
+ if (party.size() > 0) {
+ var partyList = party.toArray();
- if(ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
- if(ch.isLeader()) hasLeader = true;
- eligible.push(ch);
- }
+ for (var i = 0; i < party.size(); i++) {
+ var ch = partyList[i];
+
+ if (ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
+ if (ch.isLeader()) {
+ hasLeader = true;
}
+ eligible.push(ch);
+ }
}
-
- if(!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) eligible = [];
- return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
+ }
+
+ if (!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) {
+ eligible = [];
+ }
+ return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
}
function setup(level, lobbyid) {
- var eim = em.newInstance("Holiday2_" + lobbyid);
- eim.setProperty("level", level);
- eim.setProperty("stage", "0");
- eim.setProperty("statusStg1", "-1");
- eim.setProperty("missingDrops", "0");
- eim.setProperty("snowmanLevel", "0");
- eim.setProperty("snowmanStep", "0");
- eim.setProperty("spawnedBoss", "0");
-
- var mapobj = eim.getInstanceMap(entryMap);
- mapobj.resetPQ(level);
- mapobj.allowSummonState(false);
-
- respawnStages(eim);
- eim.startEventTimer(eventTime * 60000);
- setEventRewards(eim);
- setEventExclusives(eim);
- return eim;
+ var eim = em.newInstance("Holiday2_" + lobbyid);
+ eim.setProperty("level", level);
+ eim.setProperty("stage", "0");
+ eim.setProperty("statusStg1", "-1");
+ eim.setProperty("missingDrops", "0");
+ eim.setProperty("snowmanLevel", "0");
+ eim.setProperty("snowmanStep", "0");
+ eim.setProperty("spawnedBoss", "0");
+
+ var mapobj = eim.getInstanceMap(entryMap);
+ mapobj.resetPQ(level);
+ mapobj.allowSummonState(false);
+
+ respawnStages(eim);
+ eim.startEventTimer(eventTime * 60000);
+ setEventRewards(eim);
+ setEventExclusives(eim);
+ return eim;
}
function afterSetup(eim) {}
function respawnStages(eim) {
- eim.getInstanceMap(entryMap).instanceMapRespawn();
- eim.schedule("respawnStages", 10 * 1000);
+ eim.getInstanceMap(entryMap).instanceMapRespawn();
+ eim.schedule("respawnStages", 10 * 1000);
}
function snowmanHeal(eim) {
- var difficulty = eim.getIntProperty("level");
- var snowman = eim.getInstanceMap(entryMap).getMonsterById(9400316 + (5 * difficulty) + 5);
-
- snowman.heal(200 + 200 * difficulty, 0);
- eim.schedule("snowmanHeal", 10 * 1000);
+ var difficulty = eim.getIntProperty("level");
+ var snowman = eim.getInstanceMap(entryMap).getMonsterById(9400316 + (5 * difficulty) + 5);
+
+ snowman.heal(200 + 200 * difficulty, 0);
+ eim.schedule("snowmanHeal", 10 * 1000);
}
function playerEntry(eim, player) {
- var map = eim.getMapInstance(entryMap);
- player.changeMap(map, map.getPortal(0));
+ var map = eim.getMapInstance(entryMap);
+ player.changeMap(map, map.getPortal(0));
}
function scheduledTimeout(eim) {
- end(eim);
+ end(eim);
}
function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
- eim.unregisterPlayer(player);
- player.changeMap(exitMap, 0);
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap, 0);
}
function playerLeft(eim, player) {
- if(!eim.isEventCleared()) {
- playerExit(eim, player);
- }
+ if (!eim.isEventCleared()) {
+ playerExit(eim, player);
+ }
}
function changedMap(eim, player, mapid) {
- if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (mapid < minMapId || mapid > maxMapId) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
}
+ }
}
function changedLeader(eim, leader) {
- var mapid = leader.getMapId();
- if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
- end(eim);
- }
+ var mapid = leader.getMapId();
+ if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
+ end(eim);
+ }
}
function playerDead(eim, player) {}
function playerRevive(eim, player) { // player presses ok on the death pop up.
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function playerDisconnected(eim, player) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function leftParty(eim, player) {
- if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
- end(eim);
- }
- else
- playerLeft(eim, player);
+ if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
+ end(eim);
+ } else {
+ playerLeft(eim, player);
+ }
}
function disbandParty(eim) {
- if (!eim.isEventCleared()) {
- end(eim);
- }
+ if (!eim.isEventCleared()) {
+ end(eim);
+ }
}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function end(eim) {
- var party = eim.getPlayers();
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ var party = eim.getPlayers();
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
}
function giveRandomEventReward(eim, player) {
- eim.giveEventReward(player);
+ eim.giveEventReward(player);
}
function clearPQ(eim) {
- eim.stopEventTimer();
- eim.setEventCleared();
-
- eim.applyEventPlayersItemBuff(2022437);
+ eim.stopEventTimer();
+ eim.setEventCleared();
+
+ eim.applyEventPlayersItemBuff(2022437);
}
function isScrooge(mob) {
- var mobid = mob.getId();
- return mobid >= 9400319 && mobid <= 9400321;
+ var mobid = mob.getId();
+ return mobid >= 9400319 && mobid <= 9400321;
}
function monsterKilled(mob, eim) {
- try {
- if(eim.isEventCleared()) return;
- else if(isScrooge(mob)) {
- eim.giveEventPlayersStageReward(2 * eim.getIntProperty("level"));
- eim.showClearEffect();
- eim.clearPQ();
- return;
- }
+ try {
+ if (eim.isEventCleared()) {
+ return;
+ } else if (isScrooge(mob)) {
+ eim.giveEventPlayersStageReward(2 * eim.getIntProperty("level"));
+ eim.showClearEffect();
+ eim.clearPQ();
+ return;
+ }
- var rnd = Math.random();
- var forceDrop = false;
- if(rnd >= 0.42) { // 42% chance of dropping token
- var miss = eim.getIntProperty("missingDrops");
- if(miss < 5) {
- eim.setIntProperty("missingDrops", miss + 1);
- return;
- }
-
- forceDrop = true;
- }
-
- var mapObj = mob.getMap();
- const Item = Java.type('client.inventory.Item');
- var itemObj = new Item((forceDrop || Math.random() < 0.77) ? 4032094 : 4032095, 0, 1); // 77% chance of not fake
- var dropper = eim.getPlayers().get(0);
+ var rnd = Math.random();
+ var forceDrop = false;
+ if (rnd >= 0.42) { // 42% chance of dropping token
+ var miss = eim.getIntProperty("missingDrops");
+ if (miss < 5) {
+ eim.setIntProperty("missingDrops", miss + 1);
+ return;
+ }
- mapObj.spawnItemDrop(mob, dropper, itemObj, mob.getPosition(), true, false);
- eim.setIntProperty("missingDrops", 0);
- } catch(err) {} // PQ not started yet
+ forceDrop = true;
+ }
+
+ var mapObj = mob.getMap();
+ const Item = Java.type('client.inventory.Item');
+ var itemObj = new Item((forceDrop || Math.random() < 0.77) ? 4032094 : 4032095, 0, 1); // 77% chance of not fake
+ var dropper = eim.getPlayers().get(0);
+
+ mapObj.spawnItemDrop(mob, dropper, itemObj, mob.getPosition(), true, false);
+ eim.setIntProperty("missingDrops", 0);
+ } catch (err) {
+ } // PQ not started yet
}
function allMonstersDead(eim) {}
function friendlyKilled(mob, eim) {
- eim.setIntProperty("snowmanStep", 0);
- var snowmanLevel = eim.getIntProperty("snowmanLevel");
-
- if(snowmanLevel <= 1) {
- end(eim);
- } else {
- eim.setIntProperty("snowmanLevel", snowmanLevel - 1);
- }
+ eim.setIntProperty("snowmanStep", 0);
+ var snowmanLevel = eim.getIntProperty("snowmanLevel");
+
+ if (snowmanLevel <= 1) {
+ end(eim);
+ } else {
+ eim.setIntProperty("snowmanLevel", snowmanLevel - 1);
+ }
}
function snowmanEvolve(eim, curLevel) {
- var mapobj = eim.getInstanceMap(entryMap);
- var difficulty = eim.getIntProperty("level");
- var snowman = mapobj.getMonsterById(9400317 + (5 * difficulty) + (curLevel - 1));
-
- eim.setIntProperty("snowmanLevel", curLevel + 2); // increment by 2 to decrement by 1 on friendlyKilled
- mapobj.killMonster(snowman, null, false, 2);
+ var mapobj = eim.getInstanceMap(entryMap);
+ var difficulty = eim.getIntProperty("level");
+ var snowman = mapobj.getMonsterById(9400317 + (5 * difficulty) + (curLevel - 1));
- const LifeFactory = Java.type('server.life.LifeFactory');
- const Point = Java.type('java.awt.Point');
- var snowman = LifeFactory.getMonster(9400317 + (5 * difficulty) + curLevel);
- mapobj.spawnMonsterOnGroundBelow(snowman, new Point(-180, 15));
-
- if(curLevel >= 4) {
- mapobj.allowSummonState(false);
- mapobj.killAllMonstersNotFriendly();
- mapobj.setReactorState();
-
- eim.giveEventPlayersStageReward(2 * difficulty - 1);
- eim.showClearEffect();
- }
+ eim.setIntProperty("snowmanLevel", curLevel + 2); // increment by 2 to decrement by 1 on friendlyKilled
+ mapobj.killMonster(snowman, null, false, 2);
+
+ const LifeFactory = Java.type('server.life.LifeFactory');
+ const Point = Java.type('java.awt.Point');
+ var snowman = LifeFactory.getMonster(9400317 + (5 * difficulty) + curLevel);
+ mapobj.spawnMonsterOnGroundBelow(snowman, new Point(-180, 15));
+
+ if (curLevel >= 4) {
+ mapobj.allowSummonState(false);
+ mapobj.killAllMonstersNotFriendly();
+ mapobj.setReactorState();
+
+ eim.giveEventPlayersStageReward(2 * difficulty - 1);
+ eim.showClearEffect();
+ }
}
function snowmanSnack(eim) {
- if(eim.getIntProperty("snowmanLevel") >= 5) return;
-
- var step = eim.getIntProperty("snowmanStep");
- var snowmanLevel = eim.getIntProperty("snowmanLevel");
-
- if(step >= 2 + (eim.getIntProperty("level") * snowmanLevel)) {
- step = 0;
- snowmanEvolve(eim, snowmanLevel);
- } else {
- var mapobj = eim.getInstanceMap(entryMap);
- var difficulty = eim.getIntProperty("level");
- var snowman = mapobj.getMonsterById(9400316 + (5 * difficulty) + snowmanLevel);
-
- snowman.heal(200 + (200 * snowmanLevel), 0);
- step += 1;
- }
-
- eim.setIntProperty("snowmanStep", step);
+ if (eim.getIntProperty("snowmanLevel") >= 5) {
+ return;
+ }
+
+ var step = eim.getIntProperty("snowmanStep");
+ var snowmanLevel = eim.getIntProperty("snowmanLevel");
+
+ if (step >= 2 + (eim.getIntProperty("level") * snowmanLevel)) {
+ step = 0;
+ snowmanEvolve(eim, snowmanLevel);
+ } else {
+ var mapobj = eim.getInstanceMap(entryMap);
+ var difficulty = eim.getIntProperty("level");
+ var snowman = mapobj.getMonsterById(9400316 + (5 * difficulty) + snowmanLevel);
+
+ snowman.heal(200 + (200 * snowmanLevel), 0);
+ step += 1;
+ }
+
+ eim.setIntProperty("snowmanStep", step);
}
function snowmanSnackFake(eim) {
- if(eim.getIntProperty("snowmanLevel") >= 5) return;
-
- var step = eim.getIntProperty("snowmanStep");
- if(step > 0) {
- eim.setIntProperty("snowmanStep", step - 1);
- }
-
- eim.dropMessage(5, "The snowman absorbed a Fake Snow Vigor!");
+ if (eim.getIntProperty("snowmanLevel") >= 5) {
+ return;
+ }
+
+ var step = eim.getIntProperty("snowmanStep");
+ if (step > 0) {
+ eim.setIntProperty("snowmanStep", step - 1);
+ }
+
+ eim.dropMessage(5, "The snowman absorbed a Fake Snow Vigor!");
}
diff --git a/scripts/event/HolidayPQ_3.js b/scripts/event/HolidayPQ_3.js
index 5aeef36b51..fcd74c19b1 100644
--- a/scripts/event/HolidayPQ_3.js
+++ b/scripts/event/HolidayPQ_3.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Holiday PQ
-*/
+ */
// GMS-like event string data thanks to iHealForLove
@@ -41,314 +41,330 @@ var eventTime = 25; // 25 minutes
const maxLobbies = 1;
function init() {
- setEventRequirements();
+ setEventRequirements();
}
function getMaxLobbies() {
- return maxLobbies;
+ return maxLobbies;
}
function setEventRequirements() {
- var reqStr = "";
-
- reqStr += "\r\n Number of players: ";
- if(maxPlayers - minPlayers >= 1) reqStr += minPlayers + " ~ " + maxPlayers;
- else reqStr += minPlayers;
-
- reqStr += "\r\n Level range: ";
- if(maxLevel - minLevel >= 1) reqStr += minLevel + " ~ " + maxLevel;
- else reqStr += minLevel;
-
- reqStr += "\r\n Time limit: ";
- reqStr += eventTime + " minutes";
-
- em.setProperty("party", reqStr);
+ var reqStr = "";
+
+ reqStr += "\r\n Number of players: ";
+ if (maxPlayers - minPlayers >= 1) {
+ reqStr += minPlayers + " ~ " + maxPlayers;
+ } else {
+ reqStr += minPlayers;
+ }
+
+ reqStr += "\r\n Level range: ";
+ if (maxLevel - minLevel >= 1) {
+ reqStr += minLevel + " ~ " + maxLevel;
+ } else {
+ reqStr += minLevel;
+ }
+
+ reqStr += "\r\n Time limit: ";
+ reqStr += eventTime + " minutes";
+
+ em.setProperty("party", reqStr);
}
function setEventExclusives(eim) {
- var itemSet = [4032094, 4032095];
- eim.setExclusiveItems(itemSet);
+ var itemSet = [4032094, 4032095];
+ eim.setExclusiveItems(itemSet);
}
function setEventRewards(eim) {
- var itemSet, itemQty, evLevel, expStages;
+ var itemSet, itemQty, evLevel, expStages;
- evLevel = 3; //Rewards at Hard difficulty
- itemSet = [1302080, 1002033, 2022153, 2022042, 2020006, 2020009, 2020016, 2020024, 4010006, 4010007, 4020004, 4020005, 4003002];
- itemQty = [1, 1, 1, 5, 20, 15, 10, 10, 2, 4, 4, 4, 1];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- evLevel = 2; //Rewards at Normal difficulty
- itemSet = [1302080, 1002033, 2012005, 2012006, 2020002, 2020025, 2020026, 4010003, 4010004, 4010005, 4020002, 4020003, 4020007];
- itemQty = [1, 1, 15, 15, 15, 10, 10, 3, 3, 3, 3, 3, 3];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- evLevel = 1; //Rewards at Easy difficulty
- itemSet = [1002033, 2012005, 2012006, 2020002, 2022006, 2022002, 4010000, 4010001, 4010002, 4020000, 4020001, 4020006];
- itemQty = [1, 15, 15, 10, 5, 5, 2, 2, 2, 2, 2, 2];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- expStages = [210, 620, 500, 1400, 950, 2200]; //bonus exp given on CLEAR stage signal
- eim.setEventClearStageExp(expStages);
+ evLevel = 3; //Rewards at Hard difficulty
+ itemSet = [1302080, 1002033, 2022153, 2022042, 2020006, 2020009, 2020016, 2020024, 4010006, 4010007, 4020004, 4020005, 4003002];
+ itemQty = [1, 1, 1, 5, 20, 15, 10, 10, 2, 4, 4, 4, 1];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ evLevel = 2; //Rewards at Normal difficulty
+ itemSet = [1302080, 1002033, 2012005, 2012006, 2020002, 2020025, 2020026, 4010003, 4010004, 4010005, 4020002, 4020003, 4020007];
+ itemQty = [1, 1, 15, 15, 15, 10, 10, 3, 3, 3, 3, 3, 3];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ evLevel = 1; //Rewards at Easy difficulty
+ itemSet = [1002033, 2012005, 2012006, 2020002, 2022006, 2022002, 4010000, 4010001, 4010002, 4020000, 4020001, 4020006];
+ itemQty = [1, 15, 15, 10, 5, 5, 2, 2, 2, 2, 2, 2];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ expStages = [210, 620, 500, 1400, 950, 2200]; //bonus exp given on CLEAR stage signal
+ eim.setEventClearStageExp(expStages);
}
function getEligibleParty(party) { //selects, from the given party, the team that is allowed to attempt this event
- var eligible = [];
- var hasLeader = false;
-
- if(party.size() > 0) {
- var partyList = party.toArray();
+ var eligible = [];
+ var hasLeader = false;
- for(var i = 0; i < party.size(); i++) {
- var ch = partyList[i];
+ if (party.size() > 0) {
+ var partyList = party.toArray();
- if(ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
- if(ch.isLeader()) hasLeader = true;
- eligible.push(ch);
- }
+ for (var i = 0; i < party.size(); i++) {
+ var ch = partyList[i];
+
+ if (ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
+ if (ch.isLeader()) {
+ hasLeader = true;
}
+ eligible.push(ch);
+ }
}
-
- if(!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) eligible = [];
- return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
+ }
+
+ if (!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) {
+ eligible = [];
+ }
+ return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
}
function setup(level, lobbyid) {
- var eim = em.newInstance("Holiday3_" + lobbyid);
- eim.setProperty("level", level);
- eim.setProperty("stage", "0");
- eim.setProperty("statusStg1", "-1");
- eim.setProperty("missingDrops", "0");
- eim.setProperty("snowmanLevel", "0");
- eim.setProperty("snowmanStep", "0");
- eim.setProperty("spawnedBoss", "0");
-
- var mapobj = eim.getInstanceMap(entryMap);
- mapobj.resetPQ(level);
- mapobj.allowSummonState(false);
-
- respawnStages(eim);
- eim.startEventTimer(eventTime * 60000);
- setEventRewards(eim);
- setEventExclusives(eim);
- return eim;
+ var eim = em.newInstance("Holiday3_" + lobbyid);
+ eim.setProperty("level", level);
+ eim.setProperty("stage", "0");
+ eim.setProperty("statusStg1", "-1");
+ eim.setProperty("missingDrops", "0");
+ eim.setProperty("snowmanLevel", "0");
+ eim.setProperty("snowmanStep", "0");
+ eim.setProperty("spawnedBoss", "0");
+
+ var mapobj = eim.getInstanceMap(entryMap);
+ mapobj.resetPQ(level);
+ mapobj.allowSummonState(false);
+
+ respawnStages(eim);
+ eim.startEventTimer(eventTime * 60000);
+ setEventRewards(eim);
+ setEventExclusives(eim);
+ return eim;
}
function afterSetup(eim) {}
function respawnStages(eim) {
- eim.getInstanceMap(entryMap).instanceMapRespawn();
- eim.schedule("respawnStages", 10 * 1000);
+ eim.getInstanceMap(entryMap).instanceMapRespawn();
+ eim.schedule("respawnStages", 10 * 1000);
}
function snowmanHeal(eim) {
- var difficulty = eim.getIntProperty("level");
- var snowman = eim.getInstanceMap(entryMap).getMonsterById(9400316 + (5 * difficulty) + 5);
-
- snowman.heal(200 + 200 * difficulty, 0);
- eim.schedule("snowmanHeal", 10 * 1000);
+ var difficulty = eim.getIntProperty("level");
+ var snowman = eim.getInstanceMap(entryMap).getMonsterById(9400316 + (5 * difficulty) + 5);
+
+ snowman.heal(200 + 200 * difficulty, 0);
+ eim.schedule("snowmanHeal", 10 * 1000);
}
function playerEntry(eim, player) {
- var map = eim.getMapInstance(entryMap);
- player.changeMap(map, map.getPortal(0));
+ var map = eim.getMapInstance(entryMap);
+ player.changeMap(map, map.getPortal(0));
}
function scheduledTimeout(eim) {
- end(eim);
+ end(eim);
}
function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
- eim.unregisterPlayer(player);
- player.changeMap(exitMap, 0);
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap, 0);
}
function playerLeft(eim, player) {
- if(!eim.isEventCleared()) {
- playerExit(eim, player);
- }
+ if (!eim.isEventCleared()) {
+ playerExit(eim, player);
+ }
}
function changedMap(eim, player, mapid) {
- if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (mapid < minMapId || mapid > maxMapId) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
}
+ }
}
function changedLeader(eim, leader) {
- var mapid = leader.getMapId();
- if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
- end(eim);
- }
+ var mapid = leader.getMapId();
+ if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
+ end(eim);
+ }
}
function playerDead(eim, player) {}
function playerRevive(eim, player) { // player presses ok on the death pop up.
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function playerDisconnected(eim, player) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function leftParty(eim, player) {
- if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
- end(eim);
- }
- else
- playerLeft(eim, player);
+ if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
+ end(eim);
+ } else {
+ playerLeft(eim, player);
+ }
}
function disbandParty(eim) {
- if (!eim.isEventCleared()) {
- end(eim);
- }
+ if (!eim.isEventCleared()) {
+ end(eim);
+ }
}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function end(eim) {
- var party = eim.getPlayers();
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ var party = eim.getPlayers();
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
}
function giveRandomEventReward(eim, player) {
- eim.giveEventReward(player);
+ eim.giveEventReward(player);
}
function clearPQ(eim) {
- eim.stopEventTimer();
- eim.setEventCleared();
-
- eim.applyEventPlayersItemBuff(2022438);
+ eim.stopEventTimer();
+ eim.setEventCleared();
+
+ eim.applyEventPlayersItemBuff(2022438);
}
function isScrooge(mob) {
- var mobid = mob.getId();
- return mobid >= 9400319 && mobid <= 9400321;
+ var mobid = mob.getId();
+ return mobid >= 9400319 && mobid <= 9400321;
}
function monsterKilled(mob, eim) {
- try {
- if(eim.isEventCleared()) return;
- else if(isScrooge(mob)) {
- eim.giveEventPlayersStageReward(2 * eim.getIntProperty("level"));
- eim.showClearEffect();
- eim.clearPQ();
- return;
- }
+ try {
+ if (eim.isEventCleared()) {
+ return;
+ } else if (isScrooge(mob)) {
+ eim.giveEventPlayersStageReward(2 * eim.getIntProperty("level"));
+ eim.showClearEffect();
+ eim.clearPQ();
+ return;
+ }
- var rnd = Math.random();
- var forceDrop = false;
- if(rnd >= 0.42) { // 42% chance of dropping token
- var miss = eim.getIntProperty("missingDrops");
- if(miss < 5) {
- eim.setIntProperty("missingDrops", miss + 1);
- return;
- }
-
- forceDrop = true;
- }
-
- var mapObj = mob.getMap();
- const Item = Java.type('client.inventory.Item');
- var itemObj = new Item((forceDrop || Math.random() < 0.77) ? 4032094 : 4032095, 0, 1); // 77% chance of not fake
- var dropper = eim.getPlayers().get(0);
+ var rnd = Math.random();
+ var forceDrop = false;
+ if (rnd >= 0.42) { // 42% chance of dropping token
+ var miss = eim.getIntProperty("missingDrops");
+ if (miss < 5) {
+ eim.setIntProperty("missingDrops", miss + 1);
+ return;
+ }
- mapObj.spawnItemDrop(mob, dropper, itemObj, mob.getPosition(), true, false);
- eim.setIntProperty("missingDrops", 0);
- } catch(err) {} // PQ not started yet
+ forceDrop = true;
+ }
+
+ var mapObj = mob.getMap();
+ const Item = Java.type('client.inventory.Item');
+ var itemObj = new Item((forceDrop || Math.random() < 0.77) ? 4032094 : 4032095, 0, 1); // 77% chance of not fake
+ var dropper = eim.getPlayers().get(0);
+
+ mapObj.spawnItemDrop(mob, dropper, itemObj, mob.getPosition(), true, false);
+ eim.setIntProperty("missingDrops", 0);
+ } catch (err) {
+ } // PQ not started yet
}
function allMonstersDead(eim) {}
function friendlyKilled(mob, eim) {
- eim.setIntProperty("snowmanStep", 0);
- var snowmanLevel = eim.getIntProperty("snowmanLevel");
-
- if(snowmanLevel <= 1) {
- end(eim);
- } else {
- eim.setIntProperty("snowmanLevel", snowmanLevel - 1);
- }
+ eim.setIntProperty("snowmanStep", 0);
+ var snowmanLevel = eim.getIntProperty("snowmanLevel");
+
+ if (snowmanLevel <= 1) {
+ end(eim);
+ } else {
+ eim.setIntProperty("snowmanLevel", snowmanLevel - 1);
+ }
}
function snowmanEvolve(eim, curLevel) {
- var mapobj = eim.getInstanceMap(entryMap);
- var difficulty = eim.getIntProperty("level");
- var snowman = mapobj.getMonsterById(9400317 + (5 * difficulty) + (curLevel - 1));
-
- eim.setIntProperty("snowmanLevel", curLevel + 2); // increment by 2 to decrement by 1 on friendlyKilled
- mapobj.killMonster(snowman, null, false, 2);
+ var mapobj = eim.getInstanceMap(entryMap);
+ var difficulty = eim.getIntProperty("level");
+ var snowman = mapobj.getMonsterById(9400317 + (5 * difficulty) + (curLevel - 1));
- const LifeFactory = Java.type('server.life.LifeFactory');
- const Point = Java.type('java.awt.Point');
- var snowman = LifeFactory.getMonster(9400317 + (5 * difficulty) + curLevel);
- mapobj.spawnMonsterOnGroundBelow(snowman, new Point(-180, 15));
-
- if(curLevel >= 4) {
- mapobj.allowSummonState(false);
- mapobj.killAllMonstersNotFriendly();
- mapobj.setReactorState();
-
- eim.giveEventPlayersStageReward(2 * difficulty - 1);
- eim.showClearEffect();
- }
+ eim.setIntProperty("snowmanLevel", curLevel + 2); // increment by 2 to decrement by 1 on friendlyKilled
+ mapobj.killMonster(snowman, null, false, 2);
+
+ const LifeFactory = Java.type('server.life.LifeFactory');
+ const Point = Java.type('java.awt.Point');
+ var snowman = LifeFactory.getMonster(9400317 + (5 * difficulty) + curLevel);
+ mapobj.spawnMonsterOnGroundBelow(snowman, new Point(-180, 15));
+
+ if (curLevel >= 4) {
+ mapobj.allowSummonState(false);
+ mapobj.killAllMonstersNotFriendly();
+ mapobj.setReactorState();
+
+ eim.giveEventPlayersStageReward(2 * difficulty - 1);
+ eim.showClearEffect();
+ }
}
function snowmanSnack(eim) {
- if(eim.getIntProperty("snowmanLevel") >= 5) return;
-
- var step = eim.getIntProperty("snowmanStep");
- var snowmanLevel = eim.getIntProperty("snowmanLevel");
-
- if(step >= 2 + (eim.getIntProperty("level") * snowmanLevel)) {
- step = 0;
- snowmanEvolve(eim, snowmanLevel);
- } else {
- var mapobj = eim.getInstanceMap(entryMap);
- var difficulty = eim.getIntProperty("level");
- var snowman = mapobj.getMonsterById(9400316 + (5 * difficulty) + snowmanLevel);
-
- snowman.heal(200 + (200 * snowmanLevel), 0);
- step += 1;
- }
-
- eim.setIntProperty("snowmanStep", step);
+ if (eim.getIntProperty("snowmanLevel") >= 5) {
+ return;
+ }
+
+ var step = eim.getIntProperty("snowmanStep");
+ var snowmanLevel = eim.getIntProperty("snowmanLevel");
+
+ if (step >= 2 + (eim.getIntProperty("level") * snowmanLevel)) {
+ step = 0;
+ snowmanEvolve(eim, snowmanLevel);
+ } else {
+ var mapobj = eim.getInstanceMap(entryMap);
+ var difficulty = eim.getIntProperty("level");
+ var snowman = mapobj.getMonsterById(9400316 + (5 * difficulty) + snowmanLevel);
+
+ snowman.heal(200 + (200 * snowmanLevel), 0);
+ step += 1;
+ }
+
+ eim.setIntProperty("snowmanStep", step);
}
function snowmanSnackFake(eim) {
- if(eim.getIntProperty("snowmanLevel") >= 5) return;
-
- var step = eim.getIntProperty("snowmanStep");
- if(step > 0) {
- eim.setIntProperty("snowmanStep", step - 1);
- }
-
- eim.dropMessage(5, "The snowman absorbed a Fake Snow Vigor!");
+ if (eim.getIntProperty("snowmanLevel") >= 5) {
+ return;
+ }
+
+ var step = eim.getIntProperty("snowmanStep");
+ if (step > 0) {
+ eim.setIntProperty("snowmanStep", step - 1);
+ }
+
+ eim.dropMessage(5, "The snowman absorbed a Fake Snow Vigor!");
}
diff --git a/scripts/event/HorntailBattle.js b/scripts/event/HorntailBattle.js
index 538efa49d6..101e951d58 100644
--- a/scripts/event/HorntailBattle.js
+++ b/scripts/event/HorntailBattle.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Horntail Battle
-*/
+ */
var isPq = true;
var minPlayers = 6, maxPlayers = 30;
@@ -39,7 +39,7 @@ var eventTime = 120; // 120 minutes
const maxLobbies = 1;
function init() {
- setEventRequirements();
+ setEventRequirements();
}
function getMaxLobbies() {
@@ -47,40 +47,46 @@ function getMaxLobbies() {
}
function setEventRequirements() {
- var reqStr = "";
-
- reqStr += "\r\n Number of players: ";
- if(maxPlayers - minPlayers >= 1) reqStr += minPlayers + " ~ " + maxPlayers;
- else reqStr += minPlayers;
-
- reqStr += "\r\n Level range: ";
- if(maxLevel - minLevel >= 1) reqStr += minLevel + " ~ " + maxLevel;
- else reqStr += minLevel;
-
- reqStr += "\r\n Time limit: ";
- reqStr += eventTime + " minutes";
-
- em.setProperty("party", reqStr);
+ var reqStr = "";
+
+ reqStr += "\r\n Number of players: ";
+ if (maxPlayers - minPlayers >= 1) {
+ reqStr += minPlayers + " ~ " + maxPlayers;
+ } else {
+ reqStr += minPlayers;
+ }
+
+ reqStr += "\r\n Level range: ";
+ if (maxLevel - minLevel >= 1) {
+ reqStr += minLevel + " ~ " + maxLevel;
+ } else {
+ reqStr += minLevel;
+ }
+
+ reqStr += "\r\n Time limit: ";
+ reqStr += eventTime + " minutes";
+
+ em.setProperty("party", reqStr);
}
function setEventExclusives(eim) {
- var itemSet = [];
- eim.setExclusiveItems(itemSet);
+ var itemSet = [];
+ eim.setExclusiveItems(itemSet);
}
function setEventRewards(eim) {
- var itemSet, itemQty, evLevel, expStages, mesoStages;
+ var itemSet, itemQty, evLevel, expStages, mesoStages;
- evLevel = 1; //Rewards at clear PQ
- itemSet = [];
- itemQty = [];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- expStages = []; //bonus exp given on CLEAR stage signal
- eim.setEventClearStageExp(expStages);
-
- mesoStages = []; //bonus meso given on CLEAR stage signal
- eim.setEventClearStageMeso(mesoStages);
+ evLevel = 1; //Rewards at clear PQ
+ itemSet = [];
+ itemQty = [];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ expStages = []; //bonus exp given on CLEAR stage signal
+ eim.setEventClearStageExp(expStages);
+
+ mesoStages = []; //bonus meso given on CLEAR stage signal
+ eim.setEventClearStageMeso(mesoStages);
}
function afterSetup(eim) {}
@@ -102,15 +108,15 @@ function setup(channel) {
map = eim.getInstanceMap(240060000);
mob = LifeFactory.getMonster(8810000);
map.spawnMonsterOnGroundBelow(mob, new Point(960, 120));
-
+
map = eim.getInstanceMap(240060100);
mob = LifeFactory.getMonster(8810001);
map.spawnMonsterOnGroundBelow(mob, new Point(-420, 120));
-
+
eim.startEventTimer(eventTime * 60000);
setEventRewards(eim);
setEventExclusives(eim);
-
+
return eim;
}
@@ -126,12 +132,11 @@ function scheduledTimeout(eim) {
function changedMap(eim, player, mapid) {
if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isExpeditionTeamLackingNow(true, minPlayers, player)) {
+ if (eim.isExpeditionTeamLackingNow(true, minPlayers, player)) {
eim.unregisterPlayer(player);
eim.dropMessage(5, "[Expedition] Either the leader has quit the expedition or there is no longer the minimum number of members required to continue it.");
end(eim);
- }
- else {
+ } else {
eim.dropMessage(5, "[Expedition] " + player.getName() + " has left the instance.");
eim.unregisterPlayer(player);
}
@@ -147,8 +152,7 @@ function playerRevive(eim, player) {
eim.unregisterPlayer(player);
eim.dropMessage(5, "[Expedition] Either the leader has quit the expedition or there is no longer the minimum number of members required to continue it.");
end(eim);
- }
- else {
+ } else {
eim.dropMessage(5, "[Expedition] " + player.getName() + " has left the instance.");
eim.unregisterPlayer(player);
}
@@ -159,16 +163,15 @@ function playerDisconnected(eim, player) {
eim.unregisterPlayer(player);
eim.dropMessage(5, "[Expedition] Either the leader has quit the expedition or there is no longer the minimum number of members required to continue it.");
end(eim);
- }
- else {
+ } else {
eim.dropMessage(5, "[Expedition] " + player.getName() + " has left the instance.");
eim.unregisterPlayer(player);
}
}
-function leftParty (eim, player) {}
+function leftParty(eim, player) {}
-function disbandParty (eim) {}
+function disbandParty(eim) {}
function monsterValue(eim, mobId) {
return 1;
@@ -209,14 +212,14 @@ function isHorntail(mob) {
}
function monsterKilled(mob, eim) {
- if(isHorntail(mob)) {
+ if (isHorntail(mob)) {
eim.setIntProperty("defeatedBoss", 1);
eim.showClearEffect(mob.getMap().getId());
eim.clearPQ();
-
+
eim.dispatchRaiseQuestMobCount(8810018, 240060200);
mob.getMap().broadcastHorntailVictory();
- } else if(isHorntailHead(mob)) {
+ } else if (isHorntailHead(mob)) {
var killed = eim.getIntProperty("defeatedHead");
eim.setIntProperty("defeatedHead", killed + 1);
eim.showClearEffect(mob.getMap().getId());
diff --git a/scripts/event/HorntailPQ.js b/scripts/event/HorntailPQ.js
index fc194b60b8..fc20bf40bd 100644
--- a/scripts/event/HorntailPQ.js
+++ b/scripts/event/HorntailPQ.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Horntail PQ
-*/
+ */
var isPq = true;
var minPlayers = 6, maxPlayers = 6;
@@ -39,95 +39,105 @@ var eventTime = 25; // 25 minutes
const maxLobbies = 1;
function init() {
- setEventRequirements();
+ setEventRequirements();
}
function getMaxLobbies() {
- return maxLobbies;
+ return maxLobbies;
}
function setEventRequirements() {
- var reqStr = "";
-
- reqStr += "\r\n Number of players: ";
- if(maxPlayers - minPlayers >= 1) reqStr += minPlayers + " ~ " + maxPlayers;
- else reqStr += minPlayers;
-
- reqStr += "\r\n Level range: ";
- if(maxLevel - minLevel >= 1) reqStr += minLevel + " ~ " + maxLevel;
- else reqStr += minLevel;
-
- reqStr += "\r\n Time limit: ";
- reqStr += eventTime + " minutes";
-
- em.setProperty("party", reqStr);
+ var reqStr = "";
+
+ reqStr += "\r\n Number of players: ";
+ if (maxPlayers - minPlayers >= 1) {
+ reqStr += minPlayers + " ~ " + maxPlayers;
+ } else {
+ reqStr += minPlayers;
+ }
+
+ reqStr += "\r\n Level range: ";
+ if (maxLevel - minLevel >= 1) {
+ reqStr += minLevel + " ~ " + maxLevel;
+ } else {
+ reqStr += minLevel;
+ }
+
+ reqStr += "\r\n Time limit: ";
+ reqStr += eventTime + " minutes";
+
+ em.setProperty("party", reqStr);
}
function setEventExclusives(eim) {
- var itemSet = [4001087, 4001088, 4001089, 4001090, 4001091, 4001092, 4001093];
- eim.setExclusiveItems(itemSet);
+ var itemSet = [4001087, 4001088, 4001089, 4001090, 4001091, 4001092, 4001093];
+ eim.setExclusiveItems(itemSet);
}
function setEventRewards(eim) {
- var itemSet, itemQty, evLevel, expStages;
+ var itemSet, itemQty, evLevel, expStages;
- evLevel = 1; //Rewards at clear PQ
- itemSet = [];
- itemQty = [];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- expStages = []; //bonus exp given on CLEAR stage signal
- eim.setEventClearStageExp(expStages);
+ evLevel = 1; //Rewards at clear PQ
+ itemSet = [];
+ itemQty = [];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ expStages = []; //bonus exp given on CLEAR stage signal
+ eim.setEventClearStageExp(expStages);
}
function getEligibleParty(party) { //selects, from the given party, the team that is allowed to attempt this event
- var eligible = [];
- var hasLeader = false;
-
- if(party.size() > 0) {
- var partyList = party.toArray();
+ var eligible = [];
+ var hasLeader = false;
- for(var i = 0; i < party.size(); i++) {
- var ch = partyList[i];
+ if (party.size() > 0) {
+ var partyList = party.toArray();
- if(ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
- if(ch.isLeader()) hasLeader = true;
- eligible.push(ch);
- }
+ for (var i = 0; i < party.size(); i++) {
+ var ch = partyList[i];
+
+ if (ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
+ if (ch.isLeader()) {
+ hasLeader = true;
}
+ eligible.push(ch);
+ }
}
-
- if(!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) eligible = [];
- return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
+ }
+
+ if (!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) {
+ eligible = [];
+ }
+ return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
}
function setup(level, lobbyid) {
- var eim = em.newInstance("PreHorntail" + lobbyid);
- eim.setProperty("level", level);
-
- eim.getInstanceMap(240050000).resetPQ(level);
- eim.getInstanceMap(240050100).resetPQ(level);
- eim.getInstanceMap(240050101).resetPQ(level);
- eim.getInstanceMap(240050102).resetPQ(level);
- eim.getInstanceMap(240050103).resetPQ(level);
- eim.getInstanceMap(240050104).resetPQ(level);
- eim.getInstanceMap(240050105).resetPQ(level);
- eim.getInstanceMap(240050200).resetPQ(level);
- eim.getInstanceMap(240050300).resetPQ(level);
- eim.getInstanceMap(240050310).resetPQ(level);
-
- eim.getInstanceMap(240050101).getReactorByName("passKey1").setEventState(0);
- eim.getInstanceMap(240050102).getReactorByName("passKey2").setEventState(1);
- eim.getInstanceMap(240050103).getReactorByName("passKey3").setEventState(2);
- eim.getInstanceMap(240050104).getReactorByName("passKey4").setEventState(3);
-
- respawnStages(eim);
-
- eim.startEventTimer(eventTime * 60000);
- setEventRewards(eim);
- setEventExclusives(eim);
-
- return eim;
+ var eim = em.newInstance("PreHorntail" + lobbyid);
+ eim.setProperty("level", level);
+
+ eim.getInstanceMap(240050000).resetPQ(level);
+ eim.getInstanceMap(240050100).resetPQ(level);
+ eim.getInstanceMap(240050101).resetPQ(level);
+ eim.getInstanceMap(240050102).resetPQ(level);
+ eim.getInstanceMap(240050103).resetPQ(level);
+ eim.getInstanceMap(240050104).resetPQ(level);
+ eim.getInstanceMap(240050105).resetPQ(level);
+ eim.getInstanceMap(240050200).resetPQ(level);
+ eim.getInstanceMap(240050300).resetPQ(level);
+ eim.getInstanceMap(240050310).resetPQ(level);
+
+ eim.getInstanceMap(240050101).getReactorByName("passKey1").setEventState(0);
+ eim.getInstanceMap(240050102).getReactorByName("passKey2").setEventState(1);
+ eim.getInstanceMap(240050103).getReactorByName("passKey3").setEventState(2);
+ eim.getInstanceMap(240050104).getReactorByName("passKey4").setEventState(3);
+
+ respawnStages(eim);
+
+ eim.startEventTimer(eventTime * 60000);
+ setEventRewards(eim);
+ setEventExclusives(eim);
+
+ return eim;
}
function afterSetup(eim) {}
@@ -135,100 +145,100 @@ function afterSetup(eim) {}
function respawnStages(eim) {}
function playerEntry(eim, player) {
- var map = eim.getMapInstance(entryMap);
- player.changeMap(map, map.getPortal(0));
+ var map = eim.getMapInstance(entryMap);
+ player.changeMap(map, map.getPortal(0));
}
function scheduledTimeout(eim) {
- end(eim);
+ end(eim);
}
function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
- eim.unregisterPlayer(player);
- player.changeMap(exitMap, 0);
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap, 0);
}
function playerLeft(eim, player) {
- if(!eim.isEventCleared()) {
- playerExit(eim, player);
- }
+ if (!eim.isEventCleared()) {
+ playerExit(eim, player);
+ }
}
function changedMap(eim, player, mapid) {
- if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (mapid < minMapId || mapid > maxMapId) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
}
+ }
}
function changedLeader(eim, leader) {
- var mapid = leader.getMapId();
- if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
- end(eim);
- }
+ var mapid = leader.getMapId();
+ if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
+ end(eim);
+ }
}
function playerDead(eim, player) {}
function playerRevive(eim, player) { // player presses ok on the death pop up.
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function playerDisconnected(eim, player) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function leftParty(eim, player) {
- if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
- end(eim);
- }
- else
- playerLeft(eim, player);
+ if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
+ end(eim);
+ } else {
+ playerLeft(eim, player);
+ }
}
function disbandParty(eim) {
- if (!eim.isEventCleared()) {
- end(eim);
- }
+ if (!eim.isEventCleared()) {
+ end(eim);
+ }
}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function end(eim) {
- var party = eim.getPlayers();
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ var party = eim.getPlayers();
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
}
function giveRandomEventReward(eim, player) {
- eim.giveEventReward(player);
+ eim.giveEventReward(player);
}
function clearPQ(eim) {
- eim.stopEventTimer();
- eim.setEventCleared();
-
- eim.warpEventTeam(clearMap);
+ eim.stopEventTimer();
+ eim.setEventCleared();
+
+ eim.warpEventTeam(clearMap);
}
function monsterKilled(mob, eim) {}
diff --git a/scripts/event/KerningPQ.js b/scripts/event/KerningPQ.js
index 22a2ae0473..fa7ea55993 100644
--- a/scripts/event/KerningPQ.js
+++ b/scripts/event/KerningPQ.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Kerning PQ
-*/
+ */
var isPq = true;
var minPlayers = 3, maxPlayers = 4;
@@ -39,180 +39,190 @@ var eventTime = 30; // 30 minutes
const maxLobbies = 1;
function init() {
- setEventRequirements();
+ setEventRequirements();
}
function getMaxLobbies() {
- return maxLobbies;
+ return maxLobbies;
}
function setEventRequirements() {
- var reqStr = "";
-
- reqStr += "\r\n Number of players: ";
- if(maxPlayers - minPlayers >= 1) reqStr += minPlayers + " ~ " + maxPlayers;
- else reqStr += minPlayers;
-
- reqStr += "\r\n Level range: ";
- if(maxLevel - minLevel >= 1) reqStr += minLevel + " ~ " + maxLevel;
- else reqStr += minLevel;
-
- reqStr += "\r\n Time limit: ";
- reqStr += eventTime + " minutes";
-
- em.setProperty("party", reqStr);
+ var reqStr = "";
+
+ reqStr += "\r\n Number of players: ";
+ if (maxPlayers - minPlayers >= 1) {
+ reqStr += minPlayers + " ~ " + maxPlayers;
+ } else {
+ reqStr += minPlayers;
+ }
+
+ reqStr += "\r\n Level range: ";
+ if (maxLevel - minLevel >= 1) {
+ reqStr += minLevel + " ~ " + maxLevel;
+ } else {
+ reqStr += minLevel;
+ }
+
+ reqStr += "\r\n Time limit: ";
+ reqStr += eventTime + " minutes";
+
+ em.setProperty("party", reqStr);
}
function setEventExclusives(eim) {
- var itemSet = [4001007, 4001008];
- eim.setExclusiveItems(itemSet);
+ var itemSet = [4001007, 4001008];
+ eim.setExclusiveItems(itemSet);
}
function setEventRewards(eim) {
- var itemSet, itemQty, evLevel, expStages;
+ var itemSet, itemQty, evLevel, expStages;
- evLevel = 1; //Rewards at clear PQ
- itemSet = [2040505, 2040514, 2040502, 2040002, 2040602, 2040402, 2040802, 1032009, 1032004, 1032005, 1032006, 1032007, 1032010, 1032002, 1002026, 1002089, 1002090, 2000003, 2000001, 2000002, 2000006, 2022003, 2022000, 2000004, 4003000, 4010000, 4010001, 4010002, 4010003, 4010004, 4010005, 4010006, 4010007, 4020000, 4020001, 4020002, 4020003, 4020004, 4020005, 4020006, 4020007, 4020008];
- itemQty = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 80, 80, 80, 50, 5, 15, 15, 30, 15, 15, 15, 15, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 3, 3];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- expStages = [100, 200, 400, 800, 1500]; //bonus exp given on CLEAR stage signal
- eim.setEventClearStageExp(expStages);
+ evLevel = 1; //Rewards at clear PQ
+ itemSet = [2040505, 2040514, 2040502, 2040002, 2040602, 2040402, 2040802, 1032009, 1032004, 1032005, 1032006, 1032007, 1032010, 1032002, 1002026, 1002089, 1002090, 2000003, 2000001, 2000002, 2000006, 2022003, 2022000, 2000004, 4003000, 4010000, 4010001, 4010002, 4010003, 4010004, 4010005, 4010006, 4010007, 4020000, 4020001, 4020002, 4020003, 4020004, 4020005, 4020006, 4020007, 4020008];
+ itemQty = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 80, 80, 80, 50, 5, 15, 15, 30, 15, 15, 15, 15, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 3, 3];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ expStages = [100, 200, 400, 800, 1500]; //bonus exp given on CLEAR stage signal
+ eim.setEventClearStageExp(expStages);
}
function getEligibleParty(party) { //selects, from the given party, the team that is allowed to attempt this event
- var eligible = [];
- var hasLeader = false;
-
- if(party.size() > 0) {
- var partyList = party.toArray();
+ var eligible = [];
+ var hasLeader = false;
- for(var i = 0; i < party.size(); i++) {
- var ch = partyList[i];
+ if (party.size() > 0) {
+ var partyList = party.toArray();
- if(ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
- if(ch.isLeader()) hasLeader = true;
- eligible.push(ch);
- }
+ for (var i = 0; i < party.size(); i++) {
+ var ch = partyList[i];
+
+ if (ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
+ if (ch.isLeader()) {
+ hasLeader = true;
}
+ eligible.push(ch);
+ }
}
-
- if(!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) eligible = [];
- return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
+ }
+
+ if (!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) {
+ eligible = [];
+ }
+ return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
}
function setup(level, lobbyid) {
- var eim = em.newInstance("Kerning" + lobbyid);
- eim.setProperty("level", level);
-
- respawnStages(eim);
- eim.startEventTimer(eventTime * 60000);
- setEventRewards(eim);
- setEventExclusives(eim);
- return eim;
+ var eim = em.newInstance("Kerning" + lobbyid);
+ eim.setProperty("level", level);
+
+ respawnStages(eim);
+ eim.startEventTimer(eventTime * 60000);
+ setEventRewards(eim);
+ setEventExclusives(eim);
+ return eim;
}
function afterSetup(eim) {}
-function respawnStages(eim) {
- eim.getMapInstance(103000800).instanceMapRespawn();
- eim.getMapInstance(103000805).instanceMapRespawn();
- eim.schedule("respawnStages", 15 * 1000);
+function respawnStages(eim) {
+ eim.getMapInstance(103000800).instanceMapRespawn();
+ eim.getMapInstance(103000805).instanceMapRespawn();
+ eim.schedule("respawnStages", 15 * 1000);
}
function playerEntry(eim, player) {
- var map = eim.getMapInstance(entryMap);
- player.changeMap(map, map.getPortal(0));
+ var map = eim.getMapInstance(entryMap);
+ player.changeMap(map, map.getPortal(0));
}
function scheduledTimeout(eim) {
- end(eim);
+ end(eim);
}
function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
- eim.unregisterPlayer(player);
- player.changeMap(exitMap, 0);
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap, 0);
}
function playerLeft(eim, player) {
- if(!eim.isEventCleared()) {
- playerExit(eim, player);
- }
+ if (!eim.isEventCleared()) {
+ playerExit(eim, player);
+ }
}
function changedMap(eim, player, mapid) {
- if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (mapid < minMapId || mapid > maxMapId) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
}
+ }
}
function changedLeader(eim, leader) {
- var mapid = leader.getMapId();
- if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
- end(eim);
- }
+ var mapid = leader.getMapId();
+ if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
+ end(eim);
+ }
}
function playerDead(eim, player) {}
function playerRevive(eim, player) { // player presses ok on the death pop up.
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function playerDisconnected(eim, player) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function leftParty(eim, player) {
- if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
- end(eim);
- }
- else
- playerLeft(eim, player);
+ if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
+ end(eim);
+ } else {
+ playerLeft(eim, player);
+ }
}
function disbandParty(eim) {
- if (!eim.isEventCleared()) {
- end(eim);
- }
+ if (!eim.isEventCleared()) {
+ end(eim);
+ }
}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function end(eim) {
- var party = eim.getPlayers();
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ var party = eim.getPlayers();
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
}
function giveRandomEventReward(eim, player) {
- eim.giveEventReward(player);
+ eim.giveEventReward(player);
}
function clearPQ(eim) {
- eim.stopEventTimer();
- eim.setEventCleared();
+ eim.stopEventTimer();
+ eim.setEventCleared();
}
function monsterKilled(mob, eim) {}
diff --git a/scripts/event/KerningTrain.js b/scripts/event/KerningTrain.js
index 4146384fb8..1cd1d61b35 100644
--- a/scripts/event/KerningTrain.js
+++ b/scripts/event/KerningTrain.js
@@ -1,6 +1,6 @@
-var returnTo = new Array(103000100, 103000310);
-var rideTo = new Array(103000310, 103000100);
-var trainRide = new Array(103000301, 103000302);
+var returnTo = [103000100, 103000310];
+var rideTo = [103000310, 103000100];
+var trainRide = [103000301, 103000302];
var myRide;
var returnMap;
var exitMap;
@@ -15,51 +15,51 @@ function init() {
}
function setup(level, lobbyid) {
- var eim = em.newInstance("KerningTrain_" + lobbyid);
- return eim;
+ var eim = em.newInstance("KerningTrain_" + lobbyid);
+ return eim;
}
function afterSetup(eim) {}
function playerEntry(eim, player) {
- if (player.getMapId() == returnTo[0]) {
- myRide = 0;
- } else {
- myRide = 1;
- }
-
- exitMap = eim.getEm().getChannelServer().getMapFactory().getMap(rideTo[myRide]);
- returnMap = eim.getMapFactory().getMap(returnTo[myRide]);
- onRide = eim.getMapFactory().getMap(trainRide[myRide]);
- player.changeMap(onRide, onRide.getPortal(0));
+ if (player.getMapId() == returnTo[0]) {
+ myRide = 0;
+ } else {
+ myRide = 1;
+ }
- const PacketCreator = Java.type('tools.PacketCreator');
- player.sendPacket(PacketCreator.getClock(rideTime / 1000));
- player.sendPacket(PacketCreator.earnTitleMessage("The next stop is at Kerning " + (myRide == 0 ? "Square" : "Subway") + " Station. The exit is to your left."));
- eim.schedule("timeOut", rideTime);
+ exitMap = eim.getEm().getChannelServer().getMapFactory().getMap(rideTo[myRide]);
+ returnMap = eim.getMapFactory().getMap(returnTo[myRide]);
+ onRide = eim.getMapFactory().getMap(trainRide[myRide]);
+ player.changeMap(onRide, onRide.getPortal(0));
+
+ const PacketCreator = Java.type('tools.PacketCreator');
+ player.sendPacket(PacketCreator.getClock(rideTime / 1000));
+ player.sendPacket(PacketCreator.earnTitleMessage("The next stop is at Kerning " + (myRide == 0 ? "Square" : "Subway") + " Station. The exit is to your left."));
+ eim.schedule("timeOut", rideTime);
}
function timeOut(eim) {
- end(eim);
+ end(eim);
}
function playerUnregistered(eim, player) {}
function playerExit(eim, player, success) {
- eim.unregisterPlayer(player);
- player.changeMap(success ? exitMap.getId() : returnMap.getId(), 0);
+ eim.unregisterPlayer(player);
+ player.changeMap(success ? exitMap.getId() : returnMap.getId(), 0);
}
function end(eim) {
- var party = eim.getPlayers();
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i), true);
- }
- eim.dispose();
+ var party = eim.getPlayers();
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i), true);
+ }
+ eim.dispose();
}
function playerDisconnected(eim, player) {
- playerExit(eim, player, false);
+ playerExit(eim, player, false);
}
function cancelSchedule() {}
diff --git a/scripts/event/KingPepeAndYetis.js b/scripts/event/KingPepeAndYetis.js
index b072271e8f..f69baf732b 100644
--- a/scripts/event/KingPepeAndYetis.js
+++ b/scripts/event/KingPepeAndYetis.js
@@ -4,87 +4,88 @@ var eventTimer = 1000 * 60 * timeLimit;
var exitMap = 106021400;
var eventMap = 106021500;
-function init(){}
+function init() {}
-function setup(difficulty, lobbyId){
- var eim = em.newInstance("KingPepe_" +lobbyId);
- eim.getInstanceMap(eventMap).resetFully();
- eim.getInstanceMap(eventMap).allowSummonState(false);
-
- eim.startEventTimer(eventTimer);
- return eim;
+function setup(difficulty, lobbyId) {
+ var eim = em.newInstance("KingPepe_" + lobbyId);
+ eim.getInstanceMap(eventMap).resetFully();
+ eim.getInstanceMap(eventMap).allowSummonState(false);
+
+ eim.startEventTimer(eventTimer);
+ return eim;
}
-function afterSetup(eim){}
+function afterSetup(eim) {}
-function playerEntry(eim, player){
- var yetiMap = eim.getMapInstance(eventMap);
- player.changeMap(yetiMap, yetiMap.getPortal(1));
+function playerEntry(eim, player) {
+ var yetiMap = eim.getMapInstance(eventMap);
+ player.changeMap(yetiMap, yetiMap.getPortal(1));
}
-function scheduledTimeout(eim){
- var party = eim.getPlayers();
+function scheduledTimeout(eim) {
+ var party = eim.getPlayers();
- for(var i = 0; i < party.size(); i++)
- playerExit(eim, party.get(i));
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
- eim.dispose();
+ eim.dispose();
}
-function playerDead(eim, player){}
+function playerDead(eim, player) {}
-function playerDisconnected(eim, player){
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+function playerDisconnected(eim, player) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
-function monsterValue(eim, mobId){
- return -1;
+function monsterValue(eim, mobId) {
+ return -1;
}
function end(eim) {
- var party = eim.getPlayers();
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ var party = eim.getPlayers();
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
}
-function leftParty(eim, player){}
+function leftParty(eim, player) {}
-function disbandParty(eim){}
+function disbandParty(eim) {}
-function playerUnregistered(eim, player){}
+function playerUnregistered(eim, player) {}
-function playerExit(eim, player){
- eim.unregisterPlayer(player);
- player.changeMap(exitMap, 2);
+function playerExit(eim, player) {
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap, 2);
}
function changedMap(eim, chr, mapid) {
- if (mapid != eventMap) {
- if (eim.isEventTeamLackingNow(true, minPlayers, chr)) {
- eim.unregisterPlayer(chr);
- end(eim);
- }
- else
- eim.unregisterPlayer(chr);
+ if (mapid != eventMap) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, chr)) {
+ eim.unregisterPlayer(chr);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(chr);
}
+ }
}
-function cancelSchedule(){}
+function cancelSchedule() {}
-function dispose(){}
+function dispose() {}
-function clearPQ(eim){}
+function clearPQ(eim) {}
-function monsterKilled(mob, eim){}
+function monsterKilled(mob, eim) {}
-function allMonstersDead(eim){}
+function allMonstersDead(eim) {}
// ---------- FILLER FUNCTIONS ----------
diff --git a/scripts/event/LatanicaBattle.js b/scripts/event/LatanicaBattle.js
index 12f8471f2b..881ae84069 100644
--- a/scripts/event/LatanicaBattle.js
+++ b/scripts/event/LatanicaBattle.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Vs Latanica
-*/
+ */
var isPq = true;
var minPlayers = 1, maxPlayers = 6;
@@ -39,80 +39,90 @@ var eventTime = 10; // 10 minutes
const maxLobbies = 1;
function init() {
- setEventRequirements();
+ setEventRequirements();
}
function getMaxLobbies() {
- return maxLobbies;
+ return maxLobbies;
}
function setEventRequirements() {
- var reqStr = "";
-
- reqStr += "\r\n Number of players: ";
- if(maxPlayers - minPlayers >= 1) reqStr += minPlayers + " ~ " + maxPlayers;
- else reqStr += minPlayers;
-
- reqStr += "\r\n Level range: ";
- if(maxLevel - minLevel >= 1) reqStr += minLevel + " ~ " + maxLevel;
- else reqStr += minLevel;
-
- reqStr += "\r\n Time limit: ";
- reqStr += eventTime + " minutes";
-
- em.setProperty("party", reqStr);
+ var reqStr = "";
+
+ reqStr += "\r\n Number of players: ";
+ if (maxPlayers - minPlayers >= 1) {
+ reqStr += minPlayers + " ~ " + maxPlayers;
+ } else {
+ reqStr += minPlayers;
+ }
+
+ reqStr += "\r\n Level range: ";
+ if (maxLevel - minLevel >= 1) {
+ reqStr += minLevel + " ~ " + maxLevel;
+ } else {
+ reqStr += minLevel;
+ }
+
+ reqStr += "\r\n Time limit: ";
+ reqStr += eventTime + " minutes";
+
+ em.setProperty("party", reqStr);
}
function setEventExclusives(eim) {
- var itemSet = [];
- eim.setExclusiveItems(itemSet);
+ var itemSet = [];
+ eim.setExclusiveItems(itemSet);
}
function setEventRewards(eim) {
- var itemSet, itemQty, evLevel, expStages;
+ var itemSet, itemQty, evLevel, expStages;
- evLevel = 1; //Rewards at clear PQ
- itemSet = [];
- itemQty = [];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- expStages = []; //bonus exp given on CLEAR stage signal
- eim.setEventClearStageExp(expStages);
+ evLevel = 1; //Rewards at clear PQ
+ itemSet = [];
+ itemQty = [];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ expStages = []; //bonus exp given on CLEAR stage signal
+ eim.setEventClearStageExp(expStages);
}
function getEligibleParty(party) { //selects, from the given party, the team that is allowed to attempt this event
- var eligible = [];
- var hasLeader = false;
-
- if(party.size() > 0) {
- var partyList = party.toArray();
+ var eligible = [];
+ var hasLeader = false;
- for(var i = 0; i < party.size(); i++) {
- var ch = partyList[i];
+ if (party.size() > 0) {
+ var partyList = party.toArray();
- if(ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
- if(ch.isLeader()) hasLeader = true;
- eligible.push(ch);
- }
+ for (var i = 0; i < party.size(); i++) {
+ var ch = partyList[i];
+
+ if (ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
+ if (ch.isLeader()) {
+ hasLeader = true;
}
+ eligible.push(ch);
+ }
}
-
- if(!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) eligible = [];
- return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
+ }
+
+ if (!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) {
+ eligible = [];
+ }
+ return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
}
function setup(level, lobbyid) {
- var eim = em.newInstance("Latanica" + lobbyid);
- eim.setProperty("level", level);
- eim.setProperty("boss", "0");
-
- eim.getInstanceMap(541010100).resetPQ(level);
-
- respawnStages(eim);
- eim.startEventTimer(eventTime * 60000);
- setEventRewards(eim);
- setEventExclusives(eim);
- return eim;
+ var eim = em.newInstance("Latanica" + lobbyid);
+ eim.setProperty("level", level);
+ eim.setProperty("boss", "0");
+
+ eim.getInstanceMap(541010100).resetPQ(level);
+
+ respawnStages(eim);
+ eim.startEventTimer(eventTime * 60000);
+ setEventRewards(eim);
+ setEventExclusives(eim);
+ return eim;
}
function afterSetup(eim) {}
@@ -120,111 +130,111 @@ function afterSetup(eim) {}
function respawnStages(eim) {}
function playerEntry(eim, player) {
- var map = eim.getMapInstance(entryMap);
- player.changeMap(map, map.getPortal(0));
+ var map = eim.getMapInstance(entryMap);
+ player.changeMap(map, map.getPortal(0));
}
function scheduledTimeout(eim) {
- end(eim);
+ end(eim);
}
function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
- eim.unregisterPlayer(player);
- player.changeMap(exitMap, 0);
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap, 0);
}
function playerLeft(eim, player) {
- if(!eim.isEventCleared()) {
- playerExit(eim, player);
- }
+ if (!eim.isEventCleared()) {
+ playerExit(eim, player);
+ }
}
function changedMap(eim, player, mapid) {
- if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (mapid < minMapId || mapid > maxMapId) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
}
+ }
}
function changedLeader(eim, leader) {
- var mapid = leader.getMapId();
- if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
- end(eim);
- }
+ var mapid = leader.getMapId();
+ if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
+ end(eim);
+ }
}
function playerDead(eim, player) {}
function playerRevive(eim, player) { // player presses ok on the death pop up.
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function playerDisconnected(eim, player) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function leftParty(eim, player) {
- if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
- end(eim);
- }
- else
- playerLeft(eim, player);
+ if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
+ end(eim);
+ } else {
+ playerLeft(eim, player);
+ }
}
function disbandParty(eim) {
- if (!eim.isEventCleared()) {
- end(eim);
- }
+ if (!eim.isEventCleared()) {
+ end(eim);
+ }
}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function end(eim) {
- var party = eim.getPlayers();
-
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ var party = eim.getPlayers();
+
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
}
function giveRandomEventReward(eim, player) {
- eim.giveEventReward(player);
+ eim.giveEventReward(player);
}
function clearPQ(eim) {
- eim.stopEventTimer();
- eim.setEventCleared();
+ eim.stopEventTimer();
+ eim.setEventCleared();
}
function isLatanica(mob) {
- var mobid = mob.getId();
- return mobid == 9420513;
+ var mobid = mob.getId();
+ return mobid == 9420513;
}
function monsterKilled(mob, eim) {
- if(isLatanica(mob)) {
- eim.showClearEffect();
- eim.clearPQ();
- }
+ if (isLatanica(mob)) {
+ eim.showClearEffect();
+ eim.clearPQ();
+ }
}
function allMonstersDead(eim) {}
diff --git a/scripts/event/LudiMazePQ.js b/scripts/event/LudiMazePQ.js
index c7db87e9f6..31e7683962 100644
--- a/scripts/event/LudiMazePQ.js
+++ b/scripts/event/LudiMazePQ.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Ludibrium Maze PQ
-*/
+ */
var isPq = true;
var minPlayers = 3, maxPlayers = 6;
@@ -39,82 +39,92 @@ var eventTime = 15; // 15 minutes
const maxLobbies = 1;
function init() {
- setEventRequirements();
+ setEventRequirements();
}
function getMaxLobbies() {
- return maxLobbies;
+ return maxLobbies;
}
function setEventRequirements() {
- var reqStr = "";
-
- reqStr += "\r\n Number of players: ";
- if(maxPlayers - minPlayers >= 1) reqStr += minPlayers + " ~ " + maxPlayers;
- else reqStr += minPlayers;
-
- reqStr += "\r\n Level range: ";
- if(maxLevel - minLevel >= 1) reqStr += minLevel + " ~ " + maxLevel;
- else reqStr += minLevel;
-
- reqStr += "\r\n Time limit: ";
- reqStr += eventTime + " minutes";
-
- em.setProperty("party", reqStr);
+ var reqStr = "";
+
+ reqStr += "\r\n Number of players: ";
+ if (maxPlayers - minPlayers >= 1) {
+ reqStr += minPlayers + " ~ " + maxPlayers;
+ } else {
+ reqStr += minPlayers;
+ }
+
+ reqStr += "\r\n Level range: ";
+ if (maxLevel - minLevel >= 1) {
+ reqStr += minLevel + " ~ " + maxLevel;
+ } else {
+ reqStr += minLevel;
+ }
+
+ reqStr += "\r\n Time limit: ";
+ reqStr += eventTime + " minutes";
+
+ em.setProperty("party", reqStr);
}
function setEventExclusives(eim) {
- var itemSet = [4001106];
- eim.setExclusiveItems(itemSet);
+ var itemSet = [4001106];
+ eim.setExclusiveItems(itemSet);
}
function setEventRewards(eim) {
- var itemSet, itemQty, evLevel, expStages;
+ var itemSet, itemQty, evLevel, expStages;
- evLevel = 1; //Rewards at clear PQ
- itemSet = [1442017, 1322025, 1032013, 1302016, 1072263, 1032043, 2000005, 2000004, 2001001, 2001002, 2020008, 2020010, 2030008, 2030010, 2030009, 2022000, 2001000, 2022019, 2020007, 2020006, 2020009, 2000006, 2040601, 2040605, 2040602, 2041027, 2041028, 2041004, 2041029, 2041017, 2041020, 2040008, 2040001, 2040009, 2040002, 2040504, 2040511, 2040505, 2040501, 2040904, 2040901, 2040905, 2040902, 2040404, 2040401, 2040405, 2040402];
- itemQty = [1, 1, 1, 1, 1, 1, 1, 5, 5, 5, 20, 20, 20, 20, 20, 50, 50, 50, 100, 100, 100, 100, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- expStages = []; //bonus exp given on CLEAR stage signal
- eim.setEventClearStageExp(expStages);
+ evLevel = 1; //Rewards at clear PQ
+ itemSet = [1442017, 1322025, 1032013, 1302016, 1072263, 1032043, 2000005, 2000004, 2001001, 2001002, 2020008, 2020010, 2030008, 2030010, 2030009, 2022000, 2001000, 2022019, 2020007, 2020006, 2020009, 2000006, 2040601, 2040605, 2040602, 2041027, 2041028, 2041004, 2041029, 2041017, 2041020, 2040008, 2040001, 2040009, 2040002, 2040504, 2040511, 2040505, 2040501, 2040904, 2040901, 2040905, 2040902, 2040404, 2040401, 2040405, 2040402];
+ itemQty = [1, 1, 1, 1, 1, 1, 1, 5, 5, 5, 20, 20, 20, 20, 20, 50, 50, 50, 100, 100, 100, 100, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ expStages = []; //bonus exp given on CLEAR stage signal
+ eim.setEventClearStageExp(expStages);
}
function getEligibleParty(party) { //selects, from the given party, the team that is allowed to attempt this event
- var eligible = [];
- var hasLeader = false;
-
- if(party.size() > 0) {
- var partyList = party.toArray();
+ var eligible = [];
+ var hasLeader = false;
- for(var i = 0; i < party.size(); i++) {
- var ch = partyList[i];
+ if (party.size() > 0) {
+ var partyList = party.toArray();
- if(ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
- if(ch.isLeader()) hasLeader = true;
- eligible.push(ch);
- }
+ for (var i = 0; i < party.size(); i++) {
+ var ch = partyList[i];
+
+ if (ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
+ if (ch.isLeader()) {
+ hasLeader = true;
}
+ eligible.push(ch);
+ }
}
-
- if(!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) eligible = [];
- return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
+ }
+
+ if (!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) {
+ eligible = [];
+ }
+ return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
}
function setup(level, lobbyid) {
- var eim = em.newInstance("LudiMaze" + lobbyid);
- eim.setProperty("level", level);
-
- for(var i = 809050000; i <= 809050016; i++) {
- eim.getInstanceMap(i).resetPQ(level);
- eim.getInstanceMap(i).shuffleReactors();
- }
-
- respawnStages(eim);
- eim.startEventTimer(eventTime * 60000);
- setEventRewards(eim);
- setEventExclusives(eim);
- return eim;
+ var eim = em.newInstance("LudiMaze" + lobbyid);
+ eim.setProperty("level", level);
+
+ for (var i = 809050000; i <= 809050016; i++) {
+ eim.getInstanceMap(i).resetPQ(level);
+ eim.getInstanceMap(i).shuffleReactors();
+ }
+
+ respawnStages(eim);
+ eim.startEventTimer(eventTime * 60000);
+ setEventRewards(eim);
+ setEventExclusives(eim);
+ return eim;
}
function afterSetup(eim) {}
@@ -122,102 +132,102 @@ function afterSetup(eim) {}
function respawnStages(eim) {}
function playerEntry(eim, player) {
- var rand = Math.floor(Math.random() * 15);
-
- var map = eim.getMapInstance(entryMap + rand);
- player.changeMap(map, map.getPortal(0));
+ var rand = Math.floor(Math.random() * 15);
+
+ var map = eim.getMapInstance(entryMap + rand);
+ player.changeMap(map, map.getPortal(0));
}
function scheduledTimeout(eim) {
- end(eim);
+ end(eim);
}
function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
- eim.unregisterPlayer(player);
- player.changeMap(exitMap, 0);
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap, 0);
}
function playerLeft(eim, player) {
- if(!eim.isEventCleared()) {
- playerExit(eim, player);
- }
+ if (!eim.isEventCleared()) {
+ playerExit(eim, player);
+ }
}
function changedMap(eim, player, mapid) {
- if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (mapid < minMapId || mapid > maxMapId) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
}
+ }
}
function changedLeader(eim, leader) {
- var mapid = leader.getMapId();
- if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
- end(eim);
- }
+ var mapid = leader.getMapId();
+ if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
+ end(eim);
+ }
}
function playerDead(eim, player) {}
function playerRevive(eim, player) { // player presses ok on the death pop up.
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function playerDisconnected(eim, player) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function leftParty(eim, player) {
- if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
- end(eim);
- }
- else
- playerLeft(eim, player);
+ if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
+ end(eim);
+ } else {
+ playerLeft(eim, player);
+ }
}
function disbandParty(eim) {
- if (!eim.isEventCleared()) {
- end(eim);
- }
+ if (!eim.isEventCleared()) {
+ end(eim);
+ }
}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function end(eim) {
- var party = eim.getPlayers();
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ var party = eim.getPlayers();
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
}
function giveRandomEventReward(eim, player) {
- eim.giveEventReward(player);
+ eim.giveEventReward(player);
}
function clearPQ(eim) {
- eim.stopEventTimer();
- eim.setEventCleared();
-
- eim.warpEventTeam(809050016);
+ eim.stopEventTimer();
+ eim.setEventCleared();
+
+ eim.warpEventTeam(809050016);
}
function monsterKilled(mob, eim) {}
diff --git a/scripts/event/LudiPQ.js b/scripts/event/LudiPQ.js
index 540ae3e889..5b19c97605 100644
--- a/scripts/event/LudiPQ.js
+++ b/scripts/event/LudiPQ.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Ludibrium PQ
-*/
+ */
var isPq = true;
var minPlayers = 5, maxPlayers = 6;
@@ -39,112 +39,122 @@ var eventTime = 45; // 45 minutes
const maxLobbies = 1;
function init() {
- setEventRequirements();
+ setEventRequirements();
}
function getMaxLobbies() {
- return maxLobbies;
+ return maxLobbies;
}
function setEventRequirements() {
- var reqStr = "";
-
- reqStr += "\r\n Number of players: ";
- if(maxPlayers - minPlayers >= 1) reqStr += minPlayers + " ~ " + maxPlayers;
- else reqStr += minPlayers;
-
- reqStr += "\r\n Level range: ";
- if(maxLevel - minLevel >= 1) reqStr += minLevel + " ~ " + maxLevel;
- else reqStr += minLevel;
-
- reqStr += "\r\n Time limit: ";
- reqStr += eventTime + " minutes";
-
- em.setProperty("party", reqStr);
+ var reqStr = "";
+
+ reqStr += "\r\n Number of players: ";
+ if (maxPlayers - minPlayers >= 1) {
+ reqStr += minPlayers + " ~ " + maxPlayers;
+ } else {
+ reqStr += minPlayers;
+ }
+
+ reqStr += "\r\n Level range: ";
+ if (maxLevel - minLevel >= 1) {
+ reqStr += minLevel + " ~ " + maxLevel;
+ } else {
+ reqStr += minLevel;
+ }
+
+ reqStr += "\r\n Time limit: ";
+ reqStr += eventTime + " minutes";
+
+ em.setProperty("party", reqStr);
}
function setEventExclusives(eim) {
- var itemSet = [4001022, 4001023];
- eim.setExclusiveItems(itemSet);
+ var itemSet = [4001022, 4001023];
+ eim.setExclusiveItems(itemSet);
}
function setEventRewards(eim) {
- var itemSet, itemQty, evLevel, expStages;
+ var itemSet, itemQty, evLevel, expStages;
- evLevel = 1; //Rewards at clear PQ
- itemSet = [2040602, 2040802, 2040002, 2040402, 2040505, 2040502, 2040601, 2044501, 2044701, 2044601, 2041019, 2041016, 2041022, 2041013, 2041007, 2043301, 2040301, 2040801, 2040001, 2040004, 2040504, 2040501, 2040513, 2043101, 2044201, 2044401, 2040701, 2044301, 2043801, 2040401, 2043701, 2040803, 2000003, 2000002, 2000004, 2000006, 2000005, 2022000, 2001001, 2001002, 2022003, 2001000, 2020014, 2020015, 4003000, 1102003, 1102004, 1102000, 1102002, 1102001, 1102011, 1102012, 1102013, 1102014, 1032011, 1032012, 1032013, 1032002, 1032008, 1032011, 2070011, 4010003, 4010000, 4010006, 4010002, 4010005, 4010004, 4010001, 4020001, 4020002, 4020008, 4020007, 4020003, 4020000, 4020004, 4020005, 4020006];
- itemQty = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 85, 85, 10, 60, 2, 20, 15, 15, 20, 15, 10, 5, 35, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 10, 10, 6, 10, 10, 10, 10, 10, 10, 4, 4, 10, 10, 10, 10, 10];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- expStages = [210, 2520, 2940, 3360, 3770, 0, 4620, 5040, 5950]; //bonus exp given on CLEAR stage signal
- eim.setEventClearStageExp(expStages);
+ evLevel = 1; //Rewards at clear PQ
+ itemSet = [2040602, 2040802, 2040002, 2040402, 2040505, 2040502, 2040601, 2044501, 2044701, 2044601, 2041019, 2041016, 2041022, 2041013, 2041007, 2043301, 2040301, 2040801, 2040001, 2040004, 2040504, 2040501, 2040513, 2043101, 2044201, 2044401, 2040701, 2044301, 2043801, 2040401, 2043701, 2040803, 2000003, 2000002, 2000004, 2000006, 2000005, 2022000, 2001001, 2001002, 2022003, 2001000, 2020014, 2020015, 4003000, 1102003, 1102004, 1102000, 1102002, 1102001, 1102011, 1102012, 1102013, 1102014, 1032011, 1032012, 1032013, 1032002, 1032008, 1032011, 2070011, 4010003, 4010000, 4010006, 4010002, 4010005, 4010004, 4010001, 4020001, 4020002, 4020008, 4020007, 4020003, 4020000, 4020004, 4020005, 4020006];
+ itemQty = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 85, 85, 10, 60, 2, 20, 15, 15, 20, 15, 10, 5, 35, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 10, 10, 6, 10, 10, 10, 10, 10, 10, 4, 4, 10, 10, 10, 10, 10];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ expStages = [210, 2520, 2940, 3360, 3770, 0, 4620, 5040, 5950]; //bonus exp given on CLEAR stage signal
+ eim.setEventClearStageExp(expStages);
}
function getEligibleParty(party) { //selects, from the given party, the team that is allowed to attempt this event
- var eligible = [];
- var hasLeader = false;
-
- if(party.size() > 0) {
- var partyList = party.toArray();
+ var eligible = [];
+ var hasLeader = false;
- for(var i = 0; i < party.size(); i++) {
- var ch = partyList[i];
+ if (party.size() > 0) {
+ var partyList = party.toArray();
- if(ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
- if(ch.isLeader()) hasLeader = true;
- eligible.push(ch);
- }
+ for (var i = 0; i < party.size(); i++) {
+ var ch = partyList[i];
+
+ if (ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
+ if (ch.isLeader()) {
+ hasLeader = true;
}
+ eligible.push(ch);
+ }
}
-
- if(!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) eligible = [];
- return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
+ }
+
+ if (!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) {
+ eligible = [];
+ }
+ return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
}
function setup(level, lobbyid) {
- var eim = em.newInstance("Ludi" + lobbyid);
- eim.setProperty("level", level);
-
- eim.setProperty("statusStg1", -1);
- eim.setProperty("statusStg2", -1);
- eim.setProperty("statusStg3", -1);
- eim.setProperty("statusStg4", -1);
- eim.setProperty("statusStg5", -1);
- eim.setProperty("statusStg6", -1);
- eim.setProperty("statusStg7", -1);
- eim.setProperty("statusStg8", -1);
- eim.setProperty("statusStg9", -1);
-
- eim.getInstanceMap(922010100).resetPQ(level);
- eim.getInstanceMap(922010200).resetPQ(level);
- eim.getInstanceMap(922010201).resetPQ(level);
- eim.getInstanceMap(922010300).resetPQ(level);
- eim.getInstanceMap(922010400).resetPQ(level);
- eim.getInstanceMap(922010401).resetPQ(level);
- eim.getInstanceMap(922010402).resetPQ(level);
- eim.getInstanceMap(922010403).resetPQ(level);
- eim.getInstanceMap(922010404).resetPQ(level);
- eim.getInstanceMap(922010405).resetPQ(level);
- eim.getInstanceMap(922010500).resetPQ(level);
- eim.getInstanceMap(922010500).resetPQ(level);
- eim.getInstanceMap(922010501).resetPQ(level);
- eim.getInstanceMap(922010502).resetPQ(level);
- eim.getInstanceMap(922010503).resetPQ(level);
- eim.getInstanceMap(922010504).resetPQ(level);
- eim.getInstanceMap(922010505).resetPQ(level);
- eim.getInstanceMap(922010506).resetPQ(level);
- eim.getInstanceMap(922010600).resetPQ(level);
- eim.getInstanceMap(922010700).resetPQ(level);
- eim.getInstanceMap(922010800).resetPQ(level);
- eim.getInstanceMap(922010900).resetPQ(level);
- eim.getInstanceMap(922011000).resetPQ(level);
- eim.getInstanceMap(922011100).resetPQ(level);
-
- respawnStages(eim);
- eim.startEventTimer(eventTime * 60000);
- setEventRewards(eim);
- setEventExclusives(eim);
- return eim;
+ var eim = em.newInstance("Ludi" + lobbyid);
+ eim.setProperty("level", level);
+
+ eim.setProperty("statusStg1", -1);
+ eim.setProperty("statusStg2", -1);
+ eim.setProperty("statusStg3", -1);
+ eim.setProperty("statusStg4", -1);
+ eim.setProperty("statusStg5", -1);
+ eim.setProperty("statusStg6", -1);
+ eim.setProperty("statusStg7", -1);
+ eim.setProperty("statusStg8", -1);
+ eim.setProperty("statusStg9", -1);
+
+ eim.getInstanceMap(922010100).resetPQ(level);
+ eim.getInstanceMap(922010200).resetPQ(level);
+ eim.getInstanceMap(922010201).resetPQ(level);
+ eim.getInstanceMap(922010300).resetPQ(level);
+ eim.getInstanceMap(922010400).resetPQ(level);
+ eim.getInstanceMap(922010401).resetPQ(level);
+ eim.getInstanceMap(922010402).resetPQ(level);
+ eim.getInstanceMap(922010403).resetPQ(level);
+ eim.getInstanceMap(922010404).resetPQ(level);
+ eim.getInstanceMap(922010405).resetPQ(level);
+ eim.getInstanceMap(922010500).resetPQ(level);
+ eim.getInstanceMap(922010500).resetPQ(level);
+ eim.getInstanceMap(922010501).resetPQ(level);
+ eim.getInstanceMap(922010502).resetPQ(level);
+ eim.getInstanceMap(922010503).resetPQ(level);
+ eim.getInstanceMap(922010504).resetPQ(level);
+ eim.getInstanceMap(922010505).resetPQ(level);
+ eim.getInstanceMap(922010506).resetPQ(level);
+ eim.getInstanceMap(922010600).resetPQ(level);
+ eim.getInstanceMap(922010700).resetPQ(level);
+ eim.getInstanceMap(922010800).resetPQ(level);
+ eim.getInstanceMap(922010900).resetPQ(level);
+ eim.getInstanceMap(922011000).resetPQ(level);
+ eim.getInstanceMap(922011100).resetPQ(level);
+
+ respawnStages(eim);
+ eim.startEventTimer(eventTime * 60000);
+ setEventRewards(eim);
+ setEventExclusives(eim);
+ return eim;
}
function afterSetup(eim) {}
@@ -152,107 +162,106 @@ function afterSetup(eim) {}
function respawnStages(eim) {}
function playerEntry(eim, player) {
- var map = eim.getMapInstance(entryMap);
- player.changeMap(map, map.getPortal(0));
+ var map = eim.getMapInstance(entryMap);
+ player.changeMap(map, map.getPortal(0));
}
function scheduledTimeout(eim) {
- if(eim.getProperty("9stageclear") != null) {
- var curStage = 922011000, toStage = 922011100;
- eim.warpEventTeam(curStage, toStage);
- }
- else {
- end(eim);
- }
+ if (eim.getProperty("9stageclear") != null) {
+ var curStage = 922011000, toStage = 922011100;
+ eim.warpEventTeam(curStage, toStage);
+ } else {
+ end(eim);
+ }
}
function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
- eim.unregisterPlayer(player);
- player.changeMap(exitMap, 0);
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap, 0);
}
function playerLeft(eim, player) {
- if(!eim.isEventCleared()) {
- playerExit(eim, player);
- }
+ if (!eim.isEventCleared()) {
+ playerExit(eim, player);
+ }
}
function changedMap(eim, player, mapid) {
- if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (mapid < minMapId || mapid > maxMapId) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
}
+ }
}
function changedLeader(eim, leader) {
- var mapid = leader.getMapId();
- if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
- end(eim);
- }
+ var mapid = leader.getMapId();
+ if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
+ end(eim);
+ }
}
function playerDead(eim, player) {}
function playerRevive(eim, player) { // player presses ok on the death pop up.
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function playerDisconnected(eim, player) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function leftParty(eim, player) {
- if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
- end(eim);
- }
- else
- playerLeft(eim, player);
+ if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
+ end(eim);
+ } else {
+ playerLeft(eim, player);
+ }
}
function disbandParty(eim) {
- if (!eim.isEventCleared()) {
- end(eim);
- }
+ if (!eim.isEventCleared()) {
+ end(eim);
+ }
}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function end(eim) {
- var party = eim.getPlayers();
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ var party = eim.getPlayers();
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
}
function giveRandomEventReward(eim, player) {
- eim.giveEventReward(player);
+ eim.giveEventReward(player);
}
function clearPQ(eim) {
- eim.stopEventTimer();
- eim.setEventCleared();
-
- eim.startEventTimer(1 * 60000);
- eim.warpEventTeam(922011000);
+ eim.stopEventTimer();
+ eim.setEventCleared();
+
+ eim.startEventTimer(1 * 60000);
+ eim.warpEventTeam(922011000);
}
function monsterKilled(mob, eim) {}
diff --git a/scripts/event/MK_PrimeMinister.js b/scripts/event/MK_PrimeMinister.js
index b086aacec1..7440ef8f79 100644
--- a/scripts/event/MK_PrimeMinister.js
+++ b/scripts/event/MK_PrimeMinister.js
@@ -11,159 +11,164 @@ var maxMapId = 106021600;
var mobId = 3300008; //Prime Minister
-function init(){}
+function init() {}
function getEligibleParty(party) { //selects, from the given party, the team that is allowed to attempt this event
- var eligible = [];
- var hasLeader = false;
-
- if(party.size() > 0) {
- var partyList = party.toArray();
+ var eligible = [];
+ var hasLeader = false;
- for(var i = 0; i < party.size(); i++) {
- var ch = partyList[i];
+ if (party.size() > 0) {
+ var partyList = party.toArray();
- if(ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
- if(ch.isLeader()) hasLeader = true;
- eligible.push(ch);
- }
+ for (var i = 0; i < party.size(); i++) {
+ var ch = partyList[i];
+
+ if (ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
+ if (ch.isLeader()) {
+ hasLeader = true;
}
+ eligible.push(ch);
+ }
}
-
- if(!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) eligible = [];
- return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
+ }
+
+ if (!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) {
+ eligible = [];
+ }
+ return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
}
-function setup(difficulty, lobbyId){
- var eim = em.newInstance("MK_PrimeMinister_" +lobbyId);
- respawn(eim);
-
- return eim;
+function setup(difficulty, lobbyId) {
+ var eim = em.newInstance("MK_PrimeMinister_" + lobbyId);
+ respawn(eim);
+
+ return eim;
}
-function afterSetup(eim){}
+function afterSetup(eim) {}
function primeMinisterCheck(eim) {
- var map = eim.getMapInstance(entryMap);
-
- var pIter = map.getAllPlayers().iterator();
- while (pIter.hasNext()) {
- var player = pIter.next();
- if (player.getQuestStatus(2333) == 1 && player.getAbstractPlayerInteraction().getQuestProgressInt(2333, mobId) == 0) {
- return true;
- }
+ var map = eim.getMapInstance(entryMap);
+
+ var pIter = map.getAllPlayers().iterator();
+ while (pIter.hasNext()) {
+ var player = pIter.next();
+ if (player.getQuestStatus(2333) == 1 && player.getAbstractPlayerInteraction().getQuestProgressInt(2333, mobId) == 0) {
+ return true;
}
+ }
- return false;
+ return false;
}
-function respawn(eim){
- if (primeMinisterCheck(eim)) {
- eim.startEventTimer(eventTime);
+function respawn(eim) {
+ if (primeMinisterCheck(eim)) {
+ eim.startEventTimer(eventTime);
- var weddinghall = eim.getMapInstance(entryMap);
- weddinghall.getPortal(1).setPortalState(false);
- const LifeFactory = Java.type('server.life.LifeFactory');
- const Point = Java.type('java.awt.Point');
- weddinghall.spawnMonsterOnGroundBelow(LifeFactory.getMonster(mobId), new Point(292, 143));
- } else {
- eim.schedule("respawn", 10000);
- }
+ var weddinghall = eim.getMapInstance(entryMap);
+ weddinghall.getPortal(1).setPortalState(false);
+ const LifeFactory = Java.type('server.life.LifeFactory');
+ const Point = Java.type('java.awt.Point');
+ weddinghall.spawnMonsterOnGroundBelow(LifeFactory.getMonster(mobId), new Point(292, 143));
+ } else {
+ eim.schedule("respawn", 10000);
+ }
}
-function playerEntry(eim, player){
- var weddinghall = eim.getMapInstance(entryMap);
- player.changeMap(weddinghall, weddinghall.getPortal(1));
+function playerEntry(eim, player) {
+ var weddinghall = eim.getMapInstance(entryMap);
+ player.changeMap(weddinghall, weddinghall.getPortal(1));
}
-function scheduledTimeout(eim){
- var party = eim.getPlayers();
+function scheduledTimeout(eim) {
+ var party = eim.getPlayers();
- for(var i = 0; i < party.size(); i++)
- playerExit(eim, party.get(i));
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
- eim.dispose();
+ eim.dispose();
}
function playerRevive(eim, player) { // player presses ok on the death pop up.
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
-function playerDead(eim, player){}
+function playerDead(eim, player) {}
-function playerDisconnected(eim, player){
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+function playerDisconnected(eim, player) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
-function monsterValue(eim, mobId){
- return -1;
+function monsterValue(eim, mobId) {
+ return -1;
}
function end(eim) {
- var party = eim.getPlayers();
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ var party = eim.getPlayers();
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
}
-function leftParty(eim, player){}
+function leftParty(eim, player) {}
-function disbandParty(eim){}
+function disbandParty(eim) {}
-function playerUnregistered(eim, player){}
+function playerUnregistered(eim, player) {}
-function playerExit(eim, player){
- eim.unregisterPlayer(player);
- player.changeMap(exitMap, 2);
+function playerExit(eim, player) {
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap, 2);
}
function changedMap(eim, player, mapid) {
- if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (mapid < minMapId || mapid > maxMapId) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
}
+ }
}
-function removePlayer(eim, player){
- eim.unregisterPlayer(player);
- player.getMap().removePlayer(player);
- player.setMap(entryMap);
+function removePlayer(eim, player) {
+ eim.unregisterPlayer(player);
+ player.getMap().removePlayer(player);
+ player.setMap(entryMap);
}
-function cancelSchedule(){}
+function cancelSchedule() {}
-function dispose(){}
+function dispose() {}
-function clearPQ(eim){
- eim.stopEventTimer();
- eim.setEventCleared();
+function clearPQ(eim) {
+ eim.stopEventTimer();
+ eim.setEventCleared();
}
-function monsterKilled(mob, eim){
- if (mob.getId() == mobId) {
- eim.getMapInstance(entryMap).getPortal(1).setPortalState(true);
+function monsterKilled(mob, eim) {
+ if (mob.getId() == mobId) {
+ eim.getMapInstance(entryMap).getPortal(1).setPortalState(true);
- eim.showClearEffect();
- eim.clearPQ();
- }
+ eim.showClearEffect();
+ eim.clearPQ();
+ }
}
-function allMonstersDead(eim){}
+function allMonstersDead(eim) {}
// ---------- FILLER FUNCTIONS ----------
diff --git a/scripts/event/MK_PrimeMinister2.js b/scripts/event/MK_PrimeMinister2.js
index 3e3a13f748..dd8b23dd70 100644
--- a/scripts/event/MK_PrimeMinister2.js
+++ b/scripts/event/MK_PrimeMinister2.js
@@ -11,150 +11,155 @@ var maxMapId = 106021601;
var mobId = 3300008; //Prime Minister
-function init(){}
+function init() {}
function getEligibleParty(party) { //selects, from the given party, the team that is allowed to attempt this event
- var eligible = [];
- var hasLeader = false;
-
- if(party.size() > 0) {
- var partyList = party.toArray();
+ var eligible = [];
+ var hasLeader = false;
- for(var i = 0; i < party.size(); i++) {
- var ch = partyList[i];
+ if (party.size() > 0) {
+ var partyList = party.toArray();
- if(ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
- if(ch.isLeader()) hasLeader = true;
- eligible.push(ch);
- }
+ for (var i = 0; i < party.size(); i++) {
+ var ch = partyList[i];
+
+ if (ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
+ if (ch.isLeader()) {
+ hasLeader = true;
}
+ eligible.push(ch);
+ }
}
-
- if(!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) eligible = [];
- return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
+ }
+
+ if (!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) {
+ eligible = [];
+ }
+ return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
}
-function setup(difficulty, lobbyId){
- var eim = em.newInstance("MK_PrimeMinister2_" +lobbyId);
- respawn(eim);
-
- return eim;
+function setup(difficulty, lobbyId) {
+ var eim = em.newInstance("MK_PrimeMinister2_" + lobbyId);
+ respawn(eim);
+
+ return eim;
}
-function afterSetup(eim){}
+function afterSetup(eim) {}
function primeMinisterCheck(eim) {
- var map = eim.getMapInstance(entryMap);
- return !map.getAllPlayers().isEmpty();
+ var map = eim.getMapInstance(entryMap);
+ return !map.getAllPlayers().isEmpty();
}
-function respawn(eim){
- if (primeMinisterCheck(eim)) {
- eim.startEventTimer(eventTime);
+function respawn(eim) {
+ if (primeMinisterCheck(eim)) {
+ eim.startEventTimer(eventTime);
- var weddinghall = eim.getMapInstance(entryMap);
- weddinghall.getPortal(1).setPortalState(false);
- const LifeFactory = Java.type('server.life.LifeFactory');
- const Point = Java.type('java.awt.Point');
- weddinghall.spawnMonsterOnGroundBelow(LifeFactory.getMonster(mobId), new Point(292, 143));
- } else {
- eim.schedule("respawn", 10000);
- }
+ var weddinghall = eim.getMapInstance(entryMap);
+ weddinghall.getPortal(1).setPortalState(false);
+ const LifeFactory = Java.type('server.life.LifeFactory');
+ const Point = Java.type('java.awt.Point');
+ weddinghall.spawnMonsterOnGroundBelow(LifeFactory.getMonster(mobId), new Point(292, 143));
+ } else {
+ eim.schedule("respawn", 10000);
+ }
}
-function playerEntry(eim, player){
- var weddinghall = eim.getMapInstance(entryMap);
- player.changeMap(weddinghall, weddinghall.getPortal(1));
+function playerEntry(eim, player) {
+ var weddinghall = eim.getMapInstance(entryMap);
+ player.changeMap(weddinghall, weddinghall.getPortal(1));
}
-function scheduledTimeout(eim){
- var party = eim.getPlayers();
+function scheduledTimeout(eim) {
+ var party = eim.getPlayers();
- for(var i = 0; i < party.size(); i++)
- playerExit(eim, party.get(i));
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
- eim.dispose();
+ eim.dispose();
}
function playerRevive(eim, player) { // player presses ok on the death pop up.
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
-function playerDead(eim, player){}
+function playerDead(eim, player) {}
-function playerDisconnected(eim, player){
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+function playerDisconnected(eim, player) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
-function monsterValue(eim, mobId){
- return -1;
+function monsterValue(eim, mobId) {
+ return -1;
}
function end(eim) {
- var party = eim.getPlayers();
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ var party = eim.getPlayers();
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
}
-function leftParty(eim, player){}
+function leftParty(eim, player) {}
-function disbandParty(eim){}
+function disbandParty(eim) {}
-function playerUnregistered(eim, player){}
+function playerUnregistered(eim, player) {}
-function playerExit(eim, player){
- eim.unregisterPlayer(player);
- player.changeMap(exitMap, 2);
+function playerExit(eim, player) {
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap, 2);
}
function changedMap(eim, chr, mapid) {
- if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (mapid < minMapId || mapid > maxMapId) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
}
+ }
}
-function removePlayer(eim, player){
- eim.unregisterPlayer(player);
- player.getMap().removePlayer(player);
- player.setMap(entryMap);
+function removePlayer(eim, player) {
+ eim.unregisterPlayer(player);
+ player.getMap().removePlayer(player);
+ player.setMap(entryMap);
}
-function cancelSchedule(){}
+function cancelSchedule() {}
-function dispose(){}
+function dispose() {}
-function clearPQ(eim){
- eim.stopEventTimer();
- eim.setEventCleared();
+function clearPQ(eim) {
+ eim.stopEventTimer();
+ eim.setEventCleared();
}
-function monsterKilled(mob, eim){
- if (mob.getId() == mobId) {
- eim.getMapInstance(entryMap).getPortal(1).setPortalState(true);
+function monsterKilled(mob, eim) {
+ if (mob.getId() == mobId) {
+ eim.getMapInstance(entryMap).getPortal(1).setPortalState(true);
- eim.showClearEffect();
- eim.clearPQ();
- }
+ eim.showClearEffect();
+ eim.clearPQ();
+ }
}
-function allMonstersDead(eim){}
+function allMonstersDead(eim) {}
// ---------- FILLER FUNCTIONS ----------
diff --git a/scripts/event/MagatiaPQ_A.js b/scripts/event/MagatiaPQ_A.js
index 1759126853..7720d0d918 100644
--- a/scripts/event/MagatiaPQ_A.js
+++ b/scripts/event/MagatiaPQ_A.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Magatia PQ (Alcadno)
-*/
+ */
var isPq = true;
var minPlayers = 4, maxPlayers = 4;
@@ -39,121 +39,131 @@ var eventTime = 45; // 45 minutes
const maxLobbies = 1;
function init() {
- setEventRequirements();
+ setEventRequirements();
}
function getMaxLobbies() {
- return maxLobbies;
+ return maxLobbies;
}
function setEventRequirements() {
- var reqStr = "";
-
- reqStr += "\r\n Number of players: ";
- if(maxPlayers - minPlayers >= 1) reqStr += minPlayers + " ~ " + maxPlayers;
- else reqStr += minPlayers;
-
- reqStr += "\r\n Level range: ";
- if(maxLevel - minLevel >= 1) reqStr += minLevel + " ~ " + maxLevel;
- else reqStr += minLevel;
-
- reqStr += "\r\n Time limit: ";
- reqStr += eventTime + " minutes";
-
- em.setProperty("party", reqStr);
+ var reqStr = "";
+
+ reqStr += "\r\n Number of players: ";
+ if (maxPlayers - minPlayers >= 1) {
+ reqStr += minPlayers + " ~ " + maxPlayers;
+ } else {
+ reqStr += minPlayers;
+ }
+
+ reqStr += "\r\n Level range: ";
+ if (maxLevel - minLevel >= 1) {
+ reqStr += minLevel + " ~ " + maxLevel;
+ } else {
+ reqStr += minLevel;
+ }
+
+ reqStr += "\r\n Time limit: ";
+ reqStr += eventTime + " minutes";
+
+ em.setProperty("party", reqStr);
}
function setEventExclusives(eim) {
- var itemSet = [4001130, 4001131, 4001132, 4001133, 4001134, 4001135];
- eim.setExclusiveItems(itemSet);
+ var itemSet = [4001130, 4001131, 4001132, 4001133, 4001134, 4001135];
+ eim.setExclusiveItems(itemSet);
}
function setEventRewards(eim) {
- var itemSet, itemQty, evLevel, expStages;
+ var itemSet, itemQty, evLevel, expStages;
- evLevel = 1; //Rewards at clear PQ
- itemSet = [2000003, 2000002, 2000004, 2000005, 2022003, 1032016, 1032015, 1032014, 2041212, 2041020, 2040502, 2041016, 2044701, 2040301, 2043201, 2040501, 2040704, 2044001, 2043701, 2040803, 1102026, 1102028, 1102029];
- itemQty = [100, 100, 20, 10, 50, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- expStages = [0, 10000, 20000, 0, 20000, 20000, 0, 0]; //bonus exp given on CLEAR stage signal
- eim.setEventClearStageExp(expStages);
+ evLevel = 1; //Rewards at clear PQ
+ itemSet = [2000003, 2000002, 2000004, 2000005, 2022003, 1032016, 1032015, 1032014, 2041212, 2041020, 2040502, 2041016, 2044701, 2040301, 2043201, 2040501, 2040704, 2044001, 2043701, 2040803, 1102026, 1102028, 1102029];
+ itemQty = [100, 100, 20, 10, 50, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ expStages = [0, 10000, 20000, 0, 20000, 20000, 0, 0]; //bonus exp given on CLEAR stage signal
+ eim.setEventClearStageExp(expStages);
}
function getEligibleParty(party) { //selects, from the given party, the team that is allowed to attempt this event
- var eligible = [];
- var hasLeader = false;
-
- if(party.size() > 0) {
- var partyList = party.toArray();
+ var eligible = [];
+ var hasLeader = false;
- for(var i = 0; i < party.size(); i++) {
- var ch = partyList[i];
+ if (party.size() > 0) {
+ var partyList = party.toArray();
- if(ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
- if(ch.isLeader()) hasLeader = true;
- eligible.push(ch);
- }
+ for (var i = 0; i < party.size(); i++) {
+ var ch = partyList[i];
+
+ if (ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
+ if (ch.isLeader()) {
+ hasLeader = true;
}
+ eligible.push(ch);
+ }
}
-
- if(!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) eligible = [];
- return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
+ }
+
+ if (!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) {
+ eligible = [];
+ }
+ return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
}
function setup(level, lobbyid) {
- var eim = em.newInstance("MagatiaA" + lobbyid);
- eim.setProperty("level", level);
-
- eim.setIntProperty("isAlcadno", 1);
-
- eim.setIntProperty("escortFail", 0);
- eim.setIntProperty("yuleteTimeout", 0);
- eim.setIntProperty("yuleteTalked", 0);
- eim.setIntProperty("yuletePassed", 0);
- eim.setIntProperty("npcShocked", 0);
- eim.setIntProperty("normalClear", 0);
-
- eim.setIntProperty("statusStg1", 0);
- eim.setIntProperty("statusStg2", 0);
- eim.setIntProperty("statusStg3", 0);
- eim.setIntProperty("statusStg4", 0);
- eim.setIntProperty("statusStg5", 0);
- eim.setIntProperty("statusStg6", 0);
- eim.setIntProperty("statusStg7", 0);
-
- eim.getInstanceMap(926110000).resetPQ(level);
- eim.getInstanceMap(926110001).resetPQ(level);
- eim.getInstanceMap(926110100).resetPQ(level);
- eim.getInstanceMap(926110200).resetPQ(level);
- eim.getInstanceMap(926110201).resetPQ(level);
- eim.getInstanceMap(926110202).resetPQ(level);
- eim.getInstanceMap(926110203).resetPQ(level);
- eim.getInstanceMap(926110300).resetPQ(level);
- eim.getInstanceMap(926110301).resetPQ(level);
- eim.getInstanceMap(926110302).resetPQ(level);
- eim.getInstanceMap(926110303).resetPQ(level);
- eim.getInstanceMap(926110304).resetPQ(level);
- eim.getInstanceMap(926110400).resetPQ(level);
- eim.getInstanceMap(926110401).resetPQ(level);
- eim.getInstanceMap(926110500).resetPQ(level);
- eim.getInstanceMap(926110600).resetPQ(level);
- eim.getInstanceMap(926110700).resetPQ(level);
-
- eim.getInstanceMap(926110201).shuffleReactors(2518000, 2612004);
- eim.getInstanceMap(926110202).shuffleReactors(2518000, 2612004);
+ var eim = em.newInstance("MagatiaA" + lobbyid);
+ eim.setProperty("level", level);
- const Point = Java.type('java.awt.Point');
- eim.spawnNpc(2112010, new Point(252, 243), eim.getInstanceMap(926110203));
- eim.spawnNpc(2112010, new Point(200, 100), eim.getInstanceMap(926110401));
- eim.spawnNpc(2112011, new Point(200, 100), eim.getInstanceMap(926110500));
- eim.spawnNpc(2112018, new Point(200, 100), eim.getInstanceMap(926110600));
-
- respawnStages(eim);
- eim.startEventTimer(eventTime * 60000);
- setEventRewards(eim);
- setEventExclusives(eim);
- return eim;
+ eim.setIntProperty("isAlcadno", 1);
+
+ eim.setIntProperty("escortFail", 0);
+ eim.setIntProperty("yuleteTimeout", 0);
+ eim.setIntProperty("yuleteTalked", 0);
+ eim.setIntProperty("yuletePassed", 0);
+ eim.setIntProperty("npcShocked", 0);
+ eim.setIntProperty("normalClear", 0);
+
+ eim.setIntProperty("statusStg1", 0);
+ eim.setIntProperty("statusStg2", 0);
+ eim.setIntProperty("statusStg3", 0);
+ eim.setIntProperty("statusStg4", 0);
+ eim.setIntProperty("statusStg5", 0);
+ eim.setIntProperty("statusStg6", 0);
+ eim.setIntProperty("statusStg7", 0);
+
+ eim.getInstanceMap(926110000).resetPQ(level);
+ eim.getInstanceMap(926110001).resetPQ(level);
+ eim.getInstanceMap(926110100).resetPQ(level);
+ eim.getInstanceMap(926110200).resetPQ(level);
+ eim.getInstanceMap(926110201).resetPQ(level);
+ eim.getInstanceMap(926110202).resetPQ(level);
+ eim.getInstanceMap(926110203).resetPQ(level);
+ eim.getInstanceMap(926110300).resetPQ(level);
+ eim.getInstanceMap(926110301).resetPQ(level);
+ eim.getInstanceMap(926110302).resetPQ(level);
+ eim.getInstanceMap(926110303).resetPQ(level);
+ eim.getInstanceMap(926110304).resetPQ(level);
+ eim.getInstanceMap(926110400).resetPQ(level);
+ eim.getInstanceMap(926110401).resetPQ(level);
+ eim.getInstanceMap(926110500).resetPQ(level);
+ eim.getInstanceMap(926110600).resetPQ(level);
+ eim.getInstanceMap(926110700).resetPQ(level);
+
+ eim.getInstanceMap(926110201).shuffleReactors(2518000, 2612004);
+ eim.getInstanceMap(926110202).shuffleReactors(2518000, 2612004);
+
+ const Point = Java.type('java.awt.Point');
+ eim.spawnNpc(2112010, new Point(252, 243), eim.getInstanceMap(926110203));
+ eim.spawnNpc(2112010, new Point(200, 100), eim.getInstanceMap(926110401));
+ eim.spawnNpc(2112011, new Point(200, 100), eim.getInstanceMap(926110500));
+ eim.spawnNpc(2112018, new Point(200, 100), eim.getInstanceMap(926110600));
+
+ respawnStages(eim);
+ eim.startEventTimer(eventTime * 60000);
+ setEventRewards(eim);
+ setEventExclusives(eim);
+ return eim;
}
function shuffle(array) {
@@ -176,274 +186,273 @@ function shuffle(array) {
}
function generateStg6Combo(eim) { // thanks Chloek3, seth1 for stating generated sequences are supposed to be linked
- var matrix = [];
-
+ var matrix = [];
+
+ for (var i = 0; i < 4; i++) {
+ matrix.push([]);
+ }
+
+ for (var j = 0; j < 10; j++) {
+ var array = [0, 1, 2, 3];
+ array = shuffle(array);
+
for (var i = 0; i < 4; i++) {
- matrix.push([]);
+ matrix[i].push(array[i]);
}
-
+ }
+
+ for (var i = 0; i < 4; i++) {
+ var comb = "";
for (var j = 0; j < 10; j++) {
- var array = [0, 1, 2, 3];
- array = shuffle(array);
-
- for (var i = 0; i < 4; i++) {
- matrix[i].push(array[i]);
- }
- }
-
- for (var i = 0; i < 4; i++) {
- var comb = "";
- for(var j = 0; j < 10; j++) {
- var r = matrix[i][j];
- comb += r.toString();
- }
-
- eim.setProperty("stage6_comb" + (i + 1), comb);
+ var r = matrix[i][j];
+ comb += r.toString();
}
+
+ eim.setProperty("stage6_comb" + (i + 1), comb);
+ }
}
function afterSetup(eim) {
- eim.setIntProperty("escortFail", 0); // refresh friendly status
-
- var books = [-1, -1, -1, -1, -1, 0, 0, 0, 0, 0, 0, 0, -1, -1, -1, -1, -1, 1, 1, 1, 1, 1, 1, 1, 2, 3];
- shuffle(books);
-
- eim.setIntProperty("stg1_b0", books[0]);
- eim.setIntProperty("stg1_b1", books[1]);
- eim.setIntProperty("stg1_b2", books[2]);
- eim.setIntProperty("stg1_b3", books[3]);
- eim.setIntProperty("stg1_b4", books[4]);
- eim.setIntProperty("stg1_b5", books[5]);
- eim.setIntProperty("stg1_b6", books[6]);
- eim.setIntProperty("stg1_b7", books[7]);
- eim.setIntProperty("stg1_b8", books[8]);
- eim.setIntProperty("stg1_b9", books[9]);
- eim.setIntProperty("stg1_b10", books[10]);
- eim.setIntProperty("stg1_b11", books[11]);
- eim.setIntProperty("stg1_b12", books[12]);
- eim.setIntProperty("stg1_b13", books[13]);
- eim.setIntProperty("stg1_b14", books[14]);
- eim.setIntProperty("stg1_b15", books[15]);
- eim.setIntProperty("stg1_b16", books[16]);
- eim.setIntProperty("stg1_b17", books[17]);
- eim.setIntProperty("stg1_b18", books[18]);
- eim.setIntProperty("stg1_b19", books[19]);
- eim.setIntProperty("stg1_b20", books[20]);
- eim.setIntProperty("stg1_b21", books[21]);
- eim.setIntProperty("stg1_b22", books[22]);
- eim.setIntProperty("stg1_b23", books[23]);
- eim.setIntProperty("stg1_b24", books[24]);
- eim.setIntProperty("stg1_b25", books[25]);
+ eim.setIntProperty("escortFail", 0); // refresh friendly status
+
+ var books = [-1, -1, -1, -1, -1, 0, 0, 0, 0, 0, 0, 0, -1, -1, -1, -1, -1, 1, 1, 1, 1, 1, 1, 1, 2, 3];
+ shuffle(books);
+
+ eim.setIntProperty("stg1_b0", books[0]);
+ eim.setIntProperty("stg1_b1", books[1]);
+ eim.setIntProperty("stg1_b2", books[2]);
+ eim.setIntProperty("stg1_b3", books[3]);
+ eim.setIntProperty("stg1_b4", books[4]);
+ eim.setIntProperty("stg1_b5", books[5]);
+ eim.setIntProperty("stg1_b6", books[6]);
+ eim.setIntProperty("stg1_b7", books[7]);
+ eim.setIntProperty("stg1_b8", books[8]);
+ eim.setIntProperty("stg1_b9", books[9]);
+ eim.setIntProperty("stg1_b10", books[10]);
+ eim.setIntProperty("stg1_b11", books[11]);
+ eim.setIntProperty("stg1_b12", books[12]);
+ eim.setIntProperty("stg1_b13", books[13]);
+ eim.setIntProperty("stg1_b14", books[14]);
+ eim.setIntProperty("stg1_b15", books[15]);
+ eim.setIntProperty("stg1_b16", books[16]);
+ eim.setIntProperty("stg1_b17", books[17]);
+ eim.setIntProperty("stg1_b18", books[18]);
+ eim.setIntProperty("stg1_b19", books[19]);
+ eim.setIntProperty("stg1_b20", books[20]);
+ eim.setIntProperty("stg1_b21", books[21]);
+ eim.setIntProperty("stg1_b22", books[22]);
+ eim.setIntProperty("stg1_b23", books[23]);
+ eim.setIntProperty("stg1_b24", books[24]);
+ eim.setIntProperty("stg1_b25", books[25]);
}
-function respawnStages(eim) {
- eim.getMapInstance(926110100).instanceMapRespawn();
- eim.getMapInstance(926110200).instanceMapRespawn();
-
- if(!eim.isEventCleared()) {
- var mapobj = eim.getMapInstance(926110401);
- var mobcount = mapobj.countMonster(9300150);
- var mobobj;
- const LifeFactory = Java.type('server.life.LifeFactory');
- const Point = Java.type('java.awt.Point');
- if(mobcount == 0) {
- mobobj = LifeFactory.getMonster(9300150);
- mapobj.spawnMonsterOnGroundBelow(mobobj, new Point(-278, -126));
+function respawnStages(eim) {
+ eim.getMapInstance(926110100).instanceMapRespawn();
+ eim.getMapInstance(926110200).instanceMapRespawn();
- mobobj = LifeFactory.getMonster(9300150);
- mapobj.spawnMonsterOnGroundBelow(mobobj, new Point(-542, -126));
- } else if(mobcount == 1) {
- mobobj = LifeFactory.getMonster(9300150);
- mapobj.spawnMonsterOnGroundBelow(mobobj, new Point(-542, -126));
- }
+ if (!eim.isEventCleared()) {
+ var mapobj = eim.getMapInstance(926110401);
+ var mobcount = mapobj.countMonster(9300150);
+ var mobobj;
+ const LifeFactory = Java.type('server.life.LifeFactory');
+ const Point = Java.type('java.awt.Point');
+ if (mobcount == 0) {
+ mobobj = LifeFactory.getMonster(9300150);
+ mapobj.spawnMonsterOnGroundBelow(mobobj, new Point(-278, -126));
+
+ mobobj = LifeFactory.getMonster(9300150);
+ mapobj.spawnMonsterOnGroundBelow(mobobj, new Point(-542, -126));
+ } else if (mobcount == 1) {
+ mobobj = LifeFactory.getMonster(9300150);
+ mapobj.spawnMonsterOnGroundBelow(mobobj, new Point(-542, -126));
}
-
- eim.schedule("respawnStages", 15 * 1000);
+ }
+
+ eim.schedule("respawnStages", 15 * 1000);
}
function playerEntry(eim, player) {
- var map = eim.getMapInstance(entryMap);
- player.changeMap(map, map.getPortal(0));
+ var map = eim.getMapInstance(entryMap);
+ player.changeMap(map, map.getPortal(0));
}
function scheduledTimeout(eim) {
- end(eim);
+ end(eim);
}
function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
- eim.unregisterPlayer(player);
- player.changeMap(exitMap, 0);
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap, 0);
}
function playerLeft(eim, player) {
- if(!eim.isEventCleared()) {
- playerExit(eim, player);
- }
+ if (!eim.isEventCleared()) {
+ playerExit(eim, player);
+ }
}
function changedMap(eim, player, mapid) {
- if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
-
- } else if(mapid == 926110203 && eim.getIntProperty("yuleteTimeout") == 0) {
- eim.setIntProperty("yuleteTimeout", 1);
- eim.schedule("yuleteAction", 10 * 1000);
+ if (mapid < minMapId || mapid > maxMapId) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
}
+
+ } else if (mapid == 926110203 && eim.getIntProperty("yuleteTimeout") == 0) {
+ eim.setIntProperty("yuleteTimeout", 1);
+ eim.schedule("yuleteAction", 10 * 1000);
+ }
}
function yuleteAction(eim) {
- if(eim.getIntProperty("yuleteTalked") == 1) {
- eim.setIntProperty("yuletePassed", 1);
-
- eim.dropMessage(5, "Yulete: Ugh, you guys disgust me. All I desired was to make this nation the greatest alchemy powerhouse of the entire world. If they won't accept this, I will make it true by myself, at any costs!!!");
- } else {
- eim.dropMessage(5, "Yulete: Hahaha... Did you really think I was going to be so disprepared knowing that the Magatia societies' dogs would be coming in my pursuit after my actions? Fools!");
- }
- eim.setIntProperty("yuleteTalked", -1);
-
- var mapobj = eim.getMapInstance(926110203);
- var mob1 = 9300143, mob2 = 9300144;
-
- mapobj.destroyNPC(2112010);
+ if (eim.getIntProperty("yuleteTalked") == 1) {
+ eim.setIntProperty("yuletePassed", 1);
- const LifeFactory = Java.type('server.life.LifeFactory');
- const Point = Java.type('java.awt.Point');
- var mobobj1, mobobj2;
- for(var i = 0; i < 5; i++) {
- mobobj1 = LifeFactory.getMonster(mob1);
- mobobj2 = LifeFactory.getMonster(mob2);
-
- mapobj.spawnMonsterOnGroundBelow(mobobj1, new Point(-455, 135));
- mapobj.spawnMonsterOnGroundBelow(mobobj2, new Point(-455, 135));
- }
-
+ eim.dropMessage(5, "Yulete: Ugh, you guys disgust me. All I desired was to make this nation the greatest alchemy powerhouse of the entire world. If they won't accept this, I will make it true by myself, at any costs!!!");
+ } else {
+ eim.dropMessage(5, "Yulete: Hahaha... Did you really think I was going to be so disprepared knowing that the Magatia societies' dogs would be coming in my pursuit after my actions? Fools!");
+ }
+ eim.setIntProperty("yuleteTalked", -1);
- for(var i = 0; i < 5; i++) {
- mobobj1 = LifeFactory.getMonster(mob1);
- mobobj2 = LifeFactory.getMonster(mob2);
-
- mapobj.spawnMonsterOnGroundBelow(mobobj1, new Point(0, 135));
- mapobj.spawnMonsterOnGroundBelow(mobobj2, new Point(0, 135));
- }
-
-
- for(var i = 0; i < 5; i++) {
- mobobj1 = LifeFactory.getMonster(mob1);
- mobobj2 = LifeFactory.getMonster(mob2);
-
- mapobj.spawnMonsterOnGroundBelow(mobobj1, new Point(360, 135));
- mapobj.spawnMonsterOnGroundBelow(mobobj2, new Point(360, 135));
- }
+ var mapobj = eim.getMapInstance(926110203);
+ var mob1 = 9300143, mob2 = 9300144;
+
+ mapobj.destroyNPC(2112010);
+
+ const LifeFactory = Java.type('server.life.LifeFactory');
+ const Point = Java.type('java.awt.Point');
+ var mobobj1, mobobj2;
+ for (var i = 0; i < 5; i++) {
+ mobobj1 = LifeFactory.getMonster(mob1);
+ mobobj2 = LifeFactory.getMonster(mob2);
+
+ mapobj.spawnMonsterOnGroundBelow(mobobj1, new Point(-455, 135));
+ mapobj.spawnMonsterOnGroundBelow(mobobj2, new Point(-455, 135));
+ }
+
+
+ for (var i = 0; i < 5; i++) {
+ mobobj1 = LifeFactory.getMonster(mob1);
+ mobobj2 = LifeFactory.getMonster(mob2);
+
+ mapobj.spawnMonsterOnGroundBelow(mobobj1, new Point(0, 135));
+ mapobj.spawnMonsterOnGroundBelow(mobobj2, new Point(0, 135));
+ }
+
+
+ for (var i = 0; i < 5; i++) {
+ mobobj1 = LifeFactory.getMonster(mob1);
+ mobobj2 = LifeFactory.getMonster(mob2);
+
+ mapobj.spawnMonsterOnGroundBelow(mobobj1, new Point(360, 135));
+ mapobj.spawnMonsterOnGroundBelow(mobobj2, new Point(360, 135));
+ }
}
function changedLeader(eim, leader) {
- var mapid = leader.getMapId();
- if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
- end(eim);
- }
+ var mapid = leader.getMapId();
+ if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
+ end(eim);
+ }
}
function playerDead(eim, player) {}
function playerRevive(eim, player) { // player presses ok on the death pop up.
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function playerDisconnected(eim, player) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function leftParty(eim, player) {
- if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
- end(eim);
- }
- else
- playerLeft(eim, player);
+ if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
+ end(eim);
+ } else {
+ playerLeft(eim, player);
+ }
}
function disbandParty(eim) {
- if (!eim.isEventCleared()) {
- end(eim);
- }
+ if (!eim.isEventCleared()) {
+ end(eim);
+ }
}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function end(eim) {
- var party = eim.getPlayers();
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ var party = eim.getPlayers();
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
}
function giveRandomEventReward(eim, player) {
- eim.giveEventReward(player);
+ eim.giveEventReward(player);
}
function clearPQ(eim) {
- eim.stopEventTimer();
- eim.setEventCleared();
+ eim.stopEventTimer();
+ eim.setEventCleared();
}
function monsterKilled(mob, eim) {
- var map = mob.getMap();
-
- if(map.getId() == 926110001 && eim.getIntProperty("statusStg1") == 1) {
- if(map.countMonsters() == 0) {
- eim.showClearEffect();
- eim.giveEventPlayersStageReward(2);
- eim.setIntProperty("statusStg2", 1);
- }
- }
- else if(map.getId() == 926110203 && eim.getIntProperty("statusStg1") == 1) {
- if(map.countMonsters() == 0) {
- eim.showClearEffect();
- eim.giveEventPlayersStageReward(5);
-
- generateStg6Combo(eim);
- map.getReactorByName("jnr6_out").forceHitReactor(1);
- }
- } else if(mob.getId() == 9300151 || mob.getId() == 9300152) {
- eim.showClearEffect();
- eim.giveEventPlayersStageReward(7);
+ var map = mob.getMap();
- eim.spawnNpc(2112005, new java.awt.Point(-370, -150), map);
-
- var gain = (eim.getIntProperty("escortFail") == 1) ? 90000 : ((mob.getId() == 9300139) ? 105000 : 140000);
- eim.giveEventPlayersExp(gain);
-
- map.killAllMonstersNotFriendly();
-
- if(mob.getId() == 9300139) {
- eim.setIntProperty("normalClear", 1);
- }
-
- eim.clearPQ();
+ if (map.getId() == 926110001 && eim.getIntProperty("statusStg1") == 1) {
+ if (map.countMonsters() == 0) {
+ eim.showClearEffect();
+ eim.giveEventPlayersStageReward(2);
+ eim.setIntProperty("statusStg2", 1);
}
+ } else if (map.getId() == 926110203 && eim.getIntProperty("statusStg1") == 1) {
+ if (map.countMonsters() == 0) {
+ eim.showClearEffect();
+ eim.giveEventPlayersStageReward(5);
+
+ generateStg6Combo(eim);
+ map.getReactorByName("jnr6_out").forceHitReactor(1);
+ }
+ } else if (mob.getId() == 9300151 || mob.getId() == 9300152) {
+ eim.showClearEffect();
+ eim.giveEventPlayersStageReward(7);
+
+ eim.spawnNpc(2112005, new java.awt.Point(-370, -150), map);
+
+ var gain = (eim.getIntProperty("escortFail") == 1) ? 90000 : ((mob.getId() == 9300139) ? 105000 : 140000);
+ eim.giveEventPlayersExp(gain);
+
+ map.killAllMonstersNotFriendly();
+
+ if (mob.getId() == 9300139) {
+ eim.setIntProperty("normalClear", 1);
+ }
+
+ eim.clearPQ();
+ }
}
function friendlyKilled(mob, eim) {
- eim.setIntProperty("escortFail", 1);
+ eim.setIntProperty("escortFail", 1);
}
function allMonstersDead(eim) {}
diff --git a/scripts/event/MagatiaPQ_Z.js b/scripts/event/MagatiaPQ_Z.js
index 38c8134b9c..877fb4d9df 100644
--- a/scripts/event/MagatiaPQ_Z.js
+++ b/scripts/event/MagatiaPQ_Z.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Magatia PQ (Zenumist)
-*/
+ */
var isPq = true;
var minPlayers = 4, maxPlayers = 4;
@@ -39,121 +39,131 @@ var eventTime = 45; // 45 minutes
const maxLobbies = 1;
function init() {
- setEventRequirements();
+ setEventRequirements();
}
function getMaxLobbies() {
- return maxLobbies;
+ return maxLobbies;
}
function setEventRequirements() {
- var reqStr = "";
-
- reqStr += "\r\n Number of players: ";
- if(maxPlayers - minPlayers >= 1) reqStr += minPlayers + " ~ " + maxPlayers;
- else reqStr += minPlayers;
-
- reqStr += "\r\n Level range: ";
- if(maxLevel - minLevel >= 1) reqStr += minLevel + " ~ " + maxLevel;
- else reqStr += minLevel;
-
- reqStr += "\r\n Time limit: ";
- reqStr += eventTime + " minutes";
-
- em.setProperty("party", reqStr);
+ var reqStr = "";
+
+ reqStr += "\r\n Number of players: ";
+ if (maxPlayers - minPlayers >= 1) {
+ reqStr += minPlayers + " ~ " + maxPlayers;
+ } else {
+ reqStr += minPlayers;
+ }
+
+ reqStr += "\r\n Level range: ";
+ if (maxLevel - minLevel >= 1) {
+ reqStr += minLevel + " ~ " + maxLevel;
+ } else {
+ reqStr += minLevel;
+ }
+
+ reqStr += "\r\n Time limit: ";
+ reqStr += eventTime + " minutes";
+
+ em.setProperty("party", reqStr);
}
function setEventExclusives(eim) {
- var itemSet = [4001130, 4001131, 4001132, 4001133, 4001134, 4001135];
- eim.setExclusiveItems(itemSet);
+ var itemSet = [4001130, 4001131, 4001132, 4001133, 4001134, 4001135];
+ eim.setExclusiveItems(itemSet);
}
function setEventRewards(eim) {
- var itemSet, itemQty, evLevel, expStages;
+ var itemSet, itemQty, evLevel, expStages;
- evLevel = 1; //Rewards at clear PQ
- itemSet = [2000003, 2000002, 2000004, 2000005, 2022003, 1032016, 1032015, 1032014, 2041212, 2041020, 2040502, 2041016, 2044701, 2040301, 2043201, 2040501, 2040704, 2044001, 2043701, 2040803, 1102026, 1102028, 1102029];
- itemQty = [100, 100, 20, 10, 50, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- expStages = [0, 10000, 20000, 0, 20000, 20000, 0, 0]; //bonus exp given on CLEAR stage signal
- eim.setEventClearStageExp(expStages);
+ evLevel = 1; //Rewards at clear PQ
+ itemSet = [2000003, 2000002, 2000004, 2000005, 2022003, 1032016, 1032015, 1032014, 2041212, 2041020, 2040502, 2041016, 2044701, 2040301, 2043201, 2040501, 2040704, 2044001, 2043701, 2040803, 1102026, 1102028, 1102029];
+ itemQty = [100, 100, 20, 10, 50, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ expStages = [0, 10000, 20000, 0, 20000, 20000, 0, 0]; //bonus exp given on CLEAR stage signal
+ eim.setEventClearStageExp(expStages);
}
function getEligibleParty(party) { //selects, from the given party, the team that is allowed to attempt this event
- var eligible = [];
- var hasLeader = false;
-
- if(party.size() > 0) {
- var partyList = party.toArray();
+ var eligible = [];
+ var hasLeader = false;
- for(var i = 0; i < party.size(); i++) {
- var ch = partyList[i];
+ if (party.size() > 0) {
+ var partyList = party.toArray();
- if(ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
- if(ch.isLeader()) hasLeader = true;
- eligible.push(ch);
- }
+ for (var i = 0; i < party.size(); i++) {
+ var ch = partyList[i];
+
+ if (ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
+ if (ch.isLeader()) {
+ hasLeader = true;
}
+ eligible.push(ch);
+ }
}
-
- if(!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) eligible = [];
- return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
+ }
+
+ if (!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) {
+ eligible = [];
+ }
+ return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
}
function setup(level, lobbyid) {
- var eim = em.newInstance("MagatiaZ" + lobbyid);
- eim.setProperty("level", level);
-
- eim.setIntProperty("isAlcadno", 0);
-
- eim.setIntProperty("escortFail", 0);
- eim.setIntProperty("yuleteTimeout", 0);
- eim.setIntProperty("yuleteTalked", 0);
- eim.setIntProperty("yuletePassed", 0);
- eim.setIntProperty("npcShocked", 0);
- eim.setIntProperty("normalClear", 0);
-
- eim.setIntProperty("statusStg1", 0);
- eim.setIntProperty("statusStg2", 0);
- eim.setIntProperty("statusStg3", 0);
- eim.setIntProperty("statusStg4", 0);
- eim.setIntProperty("statusStg5", 0);
- eim.setIntProperty("statusStg6", 0);
- eim.setIntProperty("statusStg7", 0);
-
- eim.getInstanceMap(926100000).resetPQ(level);
- eim.getInstanceMap(926100001).resetPQ(level);
- eim.getInstanceMap(926100100).resetPQ(level);
- eim.getInstanceMap(926100200).resetPQ(level);
- eim.getInstanceMap(926100201).resetPQ(level);
- eim.getInstanceMap(926100202).resetPQ(level);
- eim.getInstanceMap(926100203).resetPQ(level);
- eim.getInstanceMap(926100300).resetPQ(level);
- eim.getInstanceMap(926100301).resetPQ(level);
- eim.getInstanceMap(926100302).resetPQ(level);
- eim.getInstanceMap(926100303).resetPQ(level);
- eim.getInstanceMap(926100304).resetPQ(level);
- eim.getInstanceMap(926100400).resetPQ(level);
- eim.getInstanceMap(926100401).resetPQ(level);
- eim.getInstanceMap(926100500).resetPQ(level);
- eim.getInstanceMap(926100600).resetPQ(level);
- eim.getInstanceMap(926100700).resetPQ(level);
-
- eim.getInstanceMap(926100201).shuffleReactors(2518000, 2612004);
- eim.getInstanceMap(926100202).shuffleReactors(2518000, 2612004);
+ var eim = em.newInstance("MagatiaZ" + lobbyid);
+ eim.setProperty("level", level);
- const Point = Java.type('java.awt.Point');
- eim.spawnNpc(2112000, new Point(252, 243), eim.getInstanceMap(926100203));
- eim.spawnNpc(2112000, new Point(200, 100), eim.getInstanceMap(926100401));
- eim.spawnNpc(2112001, new Point(200, 100), eim.getInstanceMap(926100500));
- eim.spawnNpc(2112018, new Point(200, 100), eim.getInstanceMap(926100600));
-
- respawnStages(eim);
- eim.startEventTimer(eventTime * 60000);
- setEventRewards(eim);
- setEventExclusives(eim);
- return eim;
+ eim.setIntProperty("isAlcadno", 0);
+
+ eim.setIntProperty("escortFail", 0);
+ eim.setIntProperty("yuleteTimeout", 0);
+ eim.setIntProperty("yuleteTalked", 0);
+ eim.setIntProperty("yuletePassed", 0);
+ eim.setIntProperty("npcShocked", 0);
+ eim.setIntProperty("normalClear", 0);
+
+ eim.setIntProperty("statusStg1", 0);
+ eim.setIntProperty("statusStg2", 0);
+ eim.setIntProperty("statusStg3", 0);
+ eim.setIntProperty("statusStg4", 0);
+ eim.setIntProperty("statusStg5", 0);
+ eim.setIntProperty("statusStg6", 0);
+ eim.setIntProperty("statusStg7", 0);
+
+ eim.getInstanceMap(926100000).resetPQ(level);
+ eim.getInstanceMap(926100001).resetPQ(level);
+ eim.getInstanceMap(926100100).resetPQ(level);
+ eim.getInstanceMap(926100200).resetPQ(level);
+ eim.getInstanceMap(926100201).resetPQ(level);
+ eim.getInstanceMap(926100202).resetPQ(level);
+ eim.getInstanceMap(926100203).resetPQ(level);
+ eim.getInstanceMap(926100300).resetPQ(level);
+ eim.getInstanceMap(926100301).resetPQ(level);
+ eim.getInstanceMap(926100302).resetPQ(level);
+ eim.getInstanceMap(926100303).resetPQ(level);
+ eim.getInstanceMap(926100304).resetPQ(level);
+ eim.getInstanceMap(926100400).resetPQ(level);
+ eim.getInstanceMap(926100401).resetPQ(level);
+ eim.getInstanceMap(926100500).resetPQ(level);
+ eim.getInstanceMap(926100600).resetPQ(level);
+ eim.getInstanceMap(926100700).resetPQ(level);
+
+ eim.getInstanceMap(926100201).shuffleReactors(2518000, 2612004);
+ eim.getInstanceMap(926100202).shuffleReactors(2518000, 2612004);
+
+ const Point = Java.type('java.awt.Point');
+ eim.spawnNpc(2112000, new Point(252, 243), eim.getInstanceMap(926100203));
+ eim.spawnNpc(2112000, new Point(200, 100), eim.getInstanceMap(926100401));
+ eim.spawnNpc(2112001, new Point(200, 100), eim.getInstanceMap(926100500));
+ eim.spawnNpc(2112018, new Point(200, 100), eim.getInstanceMap(926100600));
+
+ respawnStages(eim);
+ eim.startEventTimer(eventTime * 60000);
+ setEventRewards(eim);
+ setEventExclusives(eim);
+ return eim;
}
function shuffle(array) {
@@ -176,274 +186,273 @@ function shuffle(array) {
}
function generateStg6Combo(eim) {
- var matrix = [];
-
+ var matrix = [];
+
+ for (var i = 0; i < 4; i++) {
+ matrix.push([]);
+ }
+
+ for (var j = 0; j < 10; j++) {
+ var array = [0, 1, 2, 3];
+ array = shuffle(array);
+
for (var i = 0; i < 4; i++) {
- matrix.push([]);
+ matrix[i].push(array[i]);
}
-
+ }
+
+ for (var i = 0; i < 4; i++) {
+ var comb = "";
for (var j = 0; j < 10; j++) {
- var array = [0, 1, 2, 3];
- array = shuffle(array);
-
- for (var i = 0; i < 4; i++) {
- matrix[i].push(array[i]);
- }
- }
-
- for (var i = 0; i < 4; i++) {
- var comb = "";
- for(var j = 0; j < 10; j++) {
- var r = matrix[i][j];
- comb += r.toString();
- }
-
- eim.setProperty("stage6_comb" + (i + 1), comb);
+ var r = matrix[i][j];
+ comb += r.toString();
}
+
+ eim.setProperty("stage6_comb" + (i + 1), comb);
+ }
}
function afterSetup(eim) {
- eim.setIntProperty("escortFail", 0); // refresh friendly status
-
- var books = [-1, -1, -1, -1, -1, 0, 0, 0, 0, 0, 0, 0, -1, -1, -1, -1, -1, 1, 1, 1, 1, 1, 1, 1, 2, 3];
- shuffle(books);
-
- eim.setIntProperty("stg1_b0", books[0]);
- eim.setIntProperty("stg1_b1", books[1]);
- eim.setIntProperty("stg1_b2", books[2]);
- eim.setIntProperty("stg1_b3", books[3]);
- eim.setIntProperty("stg1_b4", books[4]);
- eim.setIntProperty("stg1_b5", books[5]);
- eim.setIntProperty("stg1_b6", books[6]);
- eim.setIntProperty("stg1_b7", books[7]);
- eim.setIntProperty("stg1_b8", books[8]);
- eim.setIntProperty("stg1_b9", books[9]);
- eim.setIntProperty("stg1_b10", books[10]);
- eim.setIntProperty("stg1_b11", books[11]);
- eim.setIntProperty("stg1_b12", books[12]);
- eim.setIntProperty("stg1_b13", books[13]);
- eim.setIntProperty("stg1_b14", books[14]);
- eim.setIntProperty("stg1_b15", books[15]);
- eim.setIntProperty("stg1_b16", books[16]);
- eim.setIntProperty("stg1_b17", books[17]);
- eim.setIntProperty("stg1_b18", books[18]);
- eim.setIntProperty("stg1_b19", books[19]);
- eim.setIntProperty("stg1_b20", books[20]);
- eim.setIntProperty("stg1_b21", books[21]);
- eim.setIntProperty("stg1_b22", books[22]);
- eim.setIntProperty("stg1_b23", books[23]);
- eim.setIntProperty("stg1_b24", books[24]);
- eim.setIntProperty("stg1_b25", books[25]);
+ eim.setIntProperty("escortFail", 0); // refresh friendly status
+
+ var books = [-1, -1, -1, -1, -1, 0, 0, 0, 0, 0, 0, 0, -1, -1, -1, -1, -1, 1, 1, 1, 1, 1, 1, 1, 2, 3];
+ shuffle(books);
+
+ eim.setIntProperty("stg1_b0", books[0]);
+ eim.setIntProperty("stg1_b1", books[1]);
+ eim.setIntProperty("stg1_b2", books[2]);
+ eim.setIntProperty("stg1_b3", books[3]);
+ eim.setIntProperty("stg1_b4", books[4]);
+ eim.setIntProperty("stg1_b5", books[5]);
+ eim.setIntProperty("stg1_b6", books[6]);
+ eim.setIntProperty("stg1_b7", books[7]);
+ eim.setIntProperty("stg1_b8", books[8]);
+ eim.setIntProperty("stg1_b9", books[9]);
+ eim.setIntProperty("stg1_b10", books[10]);
+ eim.setIntProperty("stg1_b11", books[11]);
+ eim.setIntProperty("stg1_b12", books[12]);
+ eim.setIntProperty("stg1_b13", books[13]);
+ eim.setIntProperty("stg1_b14", books[14]);
+ eim.setIntProperty("stg1_b15", books[15]);
+ eim.setIntProperty("stg1_b16", books[16]);
+ eim.setIntProperty("stg1_b17", books[17]);
+ eim.setIntProperty("stg1_b18", books[18]);
+ eim.setIntProperty("stg1_b19", books[19]);
+ eim.setIntProperty("stg1_b20", books[20]);
+ eim.setIntProperty("stg1_b21", books[21]);
+ eim.setIntProperty("stg1_b22", books[22]);
+ eim.setIntProperty("stg1_b23", books[23]);
+ eim.setIntProperty("stg1_b24", books[24]);
+ eim.setIntProperty("stg1_b25", books[25]);
}
-function respawnStages(eim) {
- eim.getMapInstance(926100100).instanceMapRespawn();
- eim.getMapInstance(926100200).instanceMapRespawn();
-
- if(!eim.isEventCleared()) {
- var mapobj = eim.getMapInstance(926100401);
- var mobcount = mapobj.countMonster(9300150);
- var mobobj;
- const LifeFactory = Java.type('server.life.LifeFactory');
- const Point = Java.type('java.awt.Point');
- if(mobcount == 0) {
- mobobj = LifeFactory.getMonster(9300150);
- mapobj.spawnMonsterOnGroundBelow(mobobj, new Point(-278, -126));
+function respawnStages(eim) {
+ eim.getMapInstance(926100100).instanceMapRespawn();
+ eim.getMapInstance(926100200).instanceMapRespawn();
- mobobj = LifeFactory.getMonster(9300150);
- mapobj.spawnMonsterOnGroundBelow(mobobj, new Point(-542, -126));
- } else if(mobcount == 1) {
- mobobj = LifeFactory.getMonster(9300150);
- mapobj.spawnMonsterOnGroundBelow(mobobj, new Point(-542, -126));
- }
+ if (!eim.isEventCleared()) {
+ var mapobj = eim.getMapInstance(926100401);
+ var mobcount = mapobj.countMonster(9300150);
+ var mobobj;
+ const LifeFactory = Java.type('server.life.LifeFactory');
+ const Point = Java.type('java.awt.Point');
+ if (mobcount == 0) {
+ mobobj = LifeFactory.getMonster(9300150);
+ mapobj.spawnMonsterOnGroundBelow(mobobj, new Point(-278, -126));
+
+ mobobj = LifeFactory.getMonster(9300150);
+ mapobj.spawnMonsterOnGroundBelow(mobobj, new Point(-542, -126));
+ } else if (mobcount == 1) {
+ mobobj = LifeFactory.getMonster(9300150);
+ mapobj.spawnMonsterOnGroundBelow(mobobj, new Point(-542, -126));
}
-
- eim.schedule("respawnStages", 15 * 1000);
+ }
+
+ eim.schedule("respawnStages", 15 * 1000);
}
function playerEntry(eim, player) {
- var map = eim.getMapInstance(entryMap);
- player.changeMap(map, map.getPortal(0));
+ var map = eim.getMapInstance(entryMap);
+ player.changeMap(map, map.getPortal(0));
}
function scheduledTimeout(eim) {
- end(eim);
+ end(eim);
}
function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
- eim.unregisterPlayer(player);
- player.changeMap(exitMap, 0);
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap, 0);
}
function playerLeft(eim, player) {
- if(!eim.isEventCleared()) {
- playerExit(eim, player);
- }
+ if (!eim.isEventCleared()) {
+ playerExit(eim, player);
+ }
}
function changedMap(eim, player, mapid) {
- if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
-
- } else if(mapid == 926100203 && eim.getIntProperty("yuleteTimeout") == 0) {
- eim.setIntProperty("yuleteTimeout", 1);
- eim.schedule("yuleteAction", 10 * 1000);
+ if (mapid < minMapId || mapid > maxMapId) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
}
+
+ } else if (mapid == 926100203 && eim.getIntProperty("yuleteTimeout") == 0) {
+ eim.setIntProperty("yuleteTimeout", 1);
+ eim.schedule("yuleteAction", 10 * 1000);
+ }
}
function yuleteAction(eim) {
- if(eim.getIntProperty("yuleteTalked") == 1) {
- eim.setIntProperty("yuletePassed", 1);
-
- eim.dropMessage(5, "Yulete: Ugh, you guys disgust me. All I desired was to make this nation the greatest alchemy powerhouse of the entire world. If they won't accept this, I will make it true by myself, at any costs!!!");
- } else {
- eim.dropMessage(5, "Yulete: Hahaha... Did you really think I was going to be so disprepared knowing that the Magatia societies' dogs would be coming in my pursuit after my actions? Fools!");
- }
- eim.setIntProperty("yuleteTalked", -1);
-
- var mapobj = eim.getMapInstance(926100203);
- var mob1 = 9300143, mob2 = 9300144;
-
- mapobj.destroyNPC(2112000);
+ if (eim.getIntProperty("yuleteTalked") == 1) {
+ eim.setIntProperty("yuletePassed", 1);
- const LifeFactory = Java.type('server.life.LifeFactory');
- const Point = Java.type('java.awt.Point');
- var mobobj1, mobobj2;
- for(var i = 0; i < 5; i++) {
- mobobj1 = LifeFactory.getMonster(mob1);
- mobobj2 = LifeFactory.getMonster(mob2);
-
- mapobj.spawnMonsterOnGroundBelow(mobobj1, new Point(-455, 135));
- mapobj.spawnMonsterOnGroundBelow(mobobj2, new Point(-455, 135));
- }
-
+ eim.dropMessage(5, "Yulete: Ugh, you guys disgust me. All I desired was to make this nation the greatest alchemy powerhouse of the entire world. If they won't accept this, I will make it true by myself, at any costs!!!");
+ } else {
+ eim.dropMessage(5, "Yulete: Hahaha... Did you really think I was going to be so disprepared knowing that the Magatia societies' dogs would be coming in my pursuit after my actions? Fools!");
+ }
+ eim.setIntProperty("yuleteTalked", -1);
- for(var i = 0; i < 5; i++) {
- mobobj1 = LifeFactory.getMonster(mob1);
- mobobj2 = LifeFactory.getMonster(mob2);
-
- mapobj.spawnMonsterOnGroundBelow(mobobj1, new Point(0, 135));
- mapobj.spawnMonsterOnGroundBelow(mobobj2, new Point(0, 135));
- }
-
-
- for(var i = 0; i < 5; i++) {
- mobobj1 = LifeFactory.getMonster(mob1);
- mobobj2 = LifeFactory.getMonster(mob2);
-
- mapobj.spawnMonsterOnGroundBelow(mobobj1, new Point(360, 135));
- mapobj.spawnMonsterOnGroundBelow(mobobj2, new Point(360, 135));
- }
+ var mapobj = eim.getMapInstance(926100203);
+ var mob1 = 9300143, mob2 = 9300144;
+
+ mapobj.destroyNPC(2112000);
+
+ const LifeFactory = Java.type('server.life.LifeFactory');
+ const Point = Java.type('java.awt.Point');
+ var mobobj1, mobobj2;
+ for (var i = 0; i < 5; i++) {
+ mobobj1 = LifeFactory.getMonster(mob1);
+ mobobj2 = LifeFactory.getMonster(mob2);
+
+ mapobj.spawnMonsterOnGroundBelow(mobobj1, new Point(-455, 135));
+ mapobj.spawnMonsterOnGroundBelow(mobobj2, new Point(-455, 135));
+ }
+
+
+ for (var i = 0; i < 5; i++) {
+ mobobj1 = LifeFactory.getMonster(mob1);
+ mobobj2 = LifeFactory.getMonster(mob2);
+
+ mapobj.spawnMonsterOnGroundBelow(mobobj1, new Point(0, 135));
+ mapobj.spawnMonsterOnGroundBelow(mobobj2, new Point(0, 135));
+ }
+
+
+ for (var i = 0; i < 5; i++) {
+ mobobj1 = LifeFactory.getMonster(mob1);
+ mobobj2 = LifeFactory.getMonster(mob2);
+
+ mapobj.spawnMonsterOnGroundBelow(mobobj1, new Point(360, 135));
+ mapobj.spawnMonsterOnGroundBelow(mobobj2, new Point(360, 135));
+ }
}
function changedLeader(eim, leader) {
- var mapid = leader.getMapId();
- if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
- end(eim);
- }
+ var mapid = leader.getMapId();
+ if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
+ end(eim);
+ }
}
function playerDead(eim, player) {}
function playerRevive(eim, player) { // player presses ok on the death pop up.
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function playerDisconnected(eim, player) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function leftParty(eim, player) {
- if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
- end(eim);
- }
- else
- playerLeft(eim, player);
+ if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
+ end(eim);
+ } else {
+ playerLeft(eim, player);
+ }
}
function disbandParty(eim) {
- if (!eim.isEventCleared()) {
- end(eim);
- }
+ if (!eim.isEventCleared()) {
+ end(eim);
+ }
}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function end(eim) {
- var party = eim.getPlayers();
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ var party = eim.getPlayers();
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
}
function giveRandomEventReward(eim, player) {
- eim.giveEventReward(player);
+ eim.giveEventReward(player);
}
function clearPQ(eim) {
- eim.stopEventTimer();
- eim.setEventCleared();
+ eim.stopEventTimer();
+ eim.setEventCleared();
}
function monsterKilled(mob, eim) {
- var map = mob.getMap();
-
- if(map.getId() == 926100001 && eim.getIntProperty("statusStg1") == 1) {
- if(map.countMonsters() == 0) {
- eim.showClearEffect();
- eim.giveEventPlayersStageReward(2);
- eim.setIntProperty("statusStg2", 1);
- }
- }
- else if(map.getId() == 926100203 && eim.getIntProperty("statusStg1") == 1) {
- if(map.countMonsters() == 0) {
- eim.showClearEffect();
- eim.giveEventPlayersStageReward(5);
-
- generateStg6Combo(eim);
- map.getReactorByName("rnj6_out").forceHitReactor(1);
- }
- } else if(mob.getId() == 9300139 || mob.getId() == 9300140) {
- eim.showClearEffect();
- eim.giveEventPlayersStageReward(7);
+ var map = mob.getMap();
- eim.spawnNpc(2112006, new java.awt.Point(-370, -150), map);
-
- var gain = (eim.getIntProperty("escortFail") == 1) ? 90000 : ((mob.getId() == 9300139) ? 105000 : 140000);
- eim.giveEventPlayersExp(gain);
-
- map.killAllMonstersNotFriendly();
-
- if(mob.getId() == 9300139) {
- eim.setIntProperty("normalClear", 1);
- }
-
- eim.clearPQ();
+ if (map.getId() == 926100001 && eim.getIntProperty("statusStg1") == 1) {
+ if (map.countMonsters() == 0) {
+ eim.showClearEffect();
+ eim.giveEventPlayersStageReward(2);
+ eim.setIntProperty("statusStg2", 1);
}
+ } else if (map.getId() == 926100203 && eim.getIntProperty("statusStg1") == 1) {
+ if (map.countMonsters() == 0) {
+ eim.showClearEffect();
+ eim.giveEventPlayersStageReward(5);
+
+ generateStg6Combo(eim);
+ map.getReactorByName("rnj6_out").forceHitReactor(1);
+ }
+ } else if (mob.getId() == 9300139 || mob.getId() == 9300140) {
+ eim.showClearEffect();
+ eim.giveEventPlayersStageReward(7);
+
+ eim.spawnNpc(2112006, new java.awt.Point(-370, -150), map);
+
+ var gain = (eim.getIntProperty("escortFail") == 1) ? 90000 : ((mob.getId() == 9300139) ? 105000 : 140000);
+ eim.giveEventPlayersExp(gain);
+
+ map.killAllMonstersNotFriendly();
+
+ if (mob.getId() == 9300139) {
+ eim.setIntProperty("normalClear", 1);
+ }
+
+ eim.clearPQ();
+ }
}
function friendlyKilled(mob, eim) {
- eim.setIntProperty("escortFail", 1);
+ eim.setIntProperty("escortFail", 1);
}
function allMonstersDead(eim) {}
diff --git a/scripts/event/MahaBattle.js b/scripts/event/MahaBattle.js
index da67bdef82..4f4028d840 100644
--- a/scripts/event/MahaBattle.js
+++ b/scripts/event/MahaBattle.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Vs Uncontrollable Maha
-*/
+ */
var entryMap = 914020000;
var exitMap = 140000000;
@@ -38,17 +38,17 @@ const maxLobbies = 7;
function init() {}
function setup(level, lobbyid) {
- var eim = em.newInstance("Maha" + lobbyid);
- eim.setProperty("level", level);
- eim.setProperty("boss", "0");
-
- var mapObj = eim.getInstanceMap(entryMap);
- mapObj.resetPQ(level);
- mapObj.instanceMapForceRespawn();
-
- respawnStages(eim);
- eim.startEventTimer(eventTime * 60000);
- return eim;
+ var eim = em.newInstance("Maha" + lobbyid);
+ eim.setProperty("level", level);
+ eim.setProperty("boss", "0");
+
+ var mapObj = eim.getInstanceMap(entryMap);
+ mapObj.resetPQ(level);
+ mapObj.instanceMapForceRespawn();
+
+ respawnStages(eim);
+ eim.startEventTimer(eventTime * 60000);
+ return eim;
}
function afterSetup(eim) {}
@@ -56,36 +56,36 @@ function afterSetup(eim) {}
function respawnStages(eim) {}
function playerEntry(eim, player) {
- var map = eim.getMapInstance(entryMap);
- player.changeMap(map, map.getPortal(0));
+ var map = eim.getMapInstance(entryMap);
+ player.changeMap(map, map.getPortal(0));
}
function scheduledTimeout(eim) {
- end(eim);
+ end(eim);
}
function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
- eim.unregisterPlayer(player);
- player.changeMap(exitMap, 0);
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap, 0);
}
function playerLeft(eim, player) {
- if(!eim.isEventCleared()) {
- playerExit(eim, player);
- }
+ if (!eim.isEventCleared()) {
+ playerExit(eim, player);
+ }
}
function changedMap(eim, player, mapid) {
- if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (mapid < minMapId || mapid > maxMapId) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
}
+ }
}
function changedLeader(eim, leader) {}
@@ -93,21 +93,21 @@ function changedLeader(eim, leader) {}
function playerDead(eim, player) {}
function playerRevive(eim, player) { // player presses ok on the death pop up.
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function playerDisconnected(eim, player) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function leftParty(eim, player) {}
@@ -115,36 +115,36 @@ function leftParty(eim, player) {}
function disbandParty(eim) {}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function end(eim) {
- var party = eim.getPlayers();
-
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ var party = eim.getPlayers();
+
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
}
function giveRandomEventReward(eim, player) {
- eim.giveEventReward(player);
+ eim.giveEventReward(player);
}
function clearPQ(eim) {
- eim.stopEventTimer();
- eim.setEventCleared();
+ eim.stopEventTimer();
+ eim.setEventCleared();
}
function isMaha(mob) {
- var mobid = mob.getId();
- return mobid == 9001014;
+ var mobid = mob.getId();
+ return mobid == 9001014;
}
function monsterKilled(mob, eim) {
- if(isMaha(mob)) {
- eim.clearPQ();
- }
+ if (isMaha(mob)) {
+ eim.clearPQ();
+ }
}
function allMonstersDead(eim) {}
diff --git a/scripts/event/NineSpirit.js b/scripts/event/NineSpirit.js
index 2b47f24e13..8d71b685ce 100644
--- a/scripts/event/NineSpirit.js
+++ b/scripts/event/NineSpirit.js
@@ -7,97 +7,99 @@ var eventMap = 240040611;
var minMapId = 240040611;
var maxMapId = 240040611;
-function init(){}
+function init() {}
-function setup(difficulty, lobbyId){
- var eim = em.newInstance("NineSpirit_" +lobbyId);
- eim.getInstanceMap(eventMap).resetFully();
- eim.getInstanceMap(eventMap).allowSummonState(false);
- respawn(eim);
- eim.startEventTimer(eventTimer);
- return eim;
+function setup(difficulty, lobbyId) {
+ var eim = em.newInstance("NineSpirit_" + lobbyId);
+ eim.getInstanceMap(eventMap).resetFully();
+ eim.getInstanceMap(eventMap).allowSummonState(false);
+ respawn(eim);
+ eim.startEventTimer(eventTimer);
+ return eim;
}
-function afterSetup(eim){}
+function afterSetup(eim) {}
-function respawn(eim){}
+function respawn(eim) {}
-function playerEntry(eim, player){
- var nest = eim.getMapInstance(eventMap);
- if (!player.haveItem(4001094)) {
- eim.spawnNpc(2081008, nest.getReactorById(2406000).getPosition(), nest);
+function playerEntry(eim, player) {
+ var nest = eim.getMapInstance(eventMap);
+ if (!player.haveItem(4001094)) {
+ eim.spawnNpc(2081008, nest.getReactorById(2406000).getPosition(), nest);
+ }
+
+ player.changeMap(nest, 1);
+}
+
+function scheduledTimeout(eim) {
+ var party = eim.getPlayers();
+
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+
+ eim.dispose();
+}
+
+function playerRevive(eim, player) {
+ player.respawn(eim, exitMap);
+ return false;
+}
+
+function playerDead(eim, player) {}
+
+function playerDisconnected(eim, player) {
+ var party = eim.getPlayers();
+
+ for (var i = 0; i < party.size(); i++) {
+ if (party.get(i).equals(player)) {
+ removePlayer(eim, player);
+ } else {
+ playerExit(eim, party.get(i));
}
-
- player.changeMap(nest, 1);
+ }
+ eim.dispose();
}
-function scheduledTimeout(eim){
- var party = eim.getPlayers();
-
- for(var i = 0; i < party.size(); i++)
- playerExit(eim, party.get(i));
-
- eim.dispose();
+function monsterValue(eim, mobId) {
+ return -1;
}
-function playerRevive(eim, player){
- player.respawn(eim, exitMap);
- return false;
+function leftParty(eim, player) {}
+
+function disbandParty(eim) {}
+
+function playerUnregistered(eim, player) {}
+
+function playerExit(eim, player) {
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap);
}
-function playerDead(eim, player){}
-
-function playerDisconnected(eim, player){
- var party = eim.getPlayers();
-
- for(var i = 0; i < party.size(); i++){
- if(party.get(i).equals(player))
- removePlayer(eim, player);
- else
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+function changedMap(eim, chr, mapid) {
+ if (mapid < minMapId || mapid > maxMapId) {
+ removePlayer(eim, chr);
+ eim.stopEventTimer();
+ eim.setEventCleared();
+ eim.dispose();
+ }
}
-function monsterValue(eim, mobId){
- return -1;
+function removePlayer(eim, player) {
+ eim.unregisterPlayer(player);
+ player.getMap().removePlayer(player);
+ player.setMap(exitMap);
}
-function leftParty(eim, player){}
+function cancelSchedule() {}
-function disbandParty(eim){}
+function dispose() {}
-function playerUnregistered(eim, player){}
+function clearPQ(eim) {}
-function playerExit(eim, player){
- eim.unregisterPlayer(player);
- player.changeMap(exitMap);
-}
+function monsterKilled(mob, eim) {}
-function changedMap(eim, chr, mapid){
- if(mapid < minMapId || mapid > maxMapId){
- removePlayer(eim, chr);
- eim.stopEventTimer();
- eim.setEventCleared();
- eim.dispose();
- }
-}
-
-function removePlayer(eim, player){
- eim.unregisterPlayer(player);
- player.getMap().removePlayer(player);
- player.setMap(exitMap);
-}
-
-function cancelSchedule(){}
-
-function dispose(){}
-
-function clearPQ(eim){}
-
-function monsterKilled(mob, eim){}
-
-function allMonstersDead(eim){}
+function allMonstersDead(eim) {}
// ---------- FILLER FUNCTIONS ----------
diff --git a/scripts/event/OrbisPQ.js b/scripts/event/OrbisPQ.js
index 6078289d95..0aa9827a30 100644
--- a/scripts/event/OrbisPQ.js
+++ b/scripts/event/OrbisPQ.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Orbis PQ
-*/
+ */
var isPq = true;
var minPlayers = 5, maxPlayers = 6;
@@ -39,248 +39,257 @@ var eventTime = 45; // 45 minutes
const maxLobbies = 1;
function init() {
- setEventRequirements();
+ setEventRequirements();
}
function getMaxLobbies() {
- return maxLobbies;
+ return maxLobbies;
}
function setEventRequirements() {
- var reqStr = "";
-
- reqStr += "\r\n Number of players: ";
- if(maxPlayers - minPlayers >= 1) reqStr += minPlayers + " ~ " + maxPlayers;
- else reqStr += minPlayers;
-
- reqStr += "\r\n Level range: ";
- if(maxLevel - minLevel >= 1) reqStr += minLevel + " ~ " + maxLevel;
- else reqStr += minLevel;
-
- reqStr += "\r\n Time limit: ";
- reqStr += eventTime + " minutes";
-
- em.setProperty("party", reqStr);
+ var reqStr = "";
+
+ reqStr += "\r\n Number of players: ";
+ if (maxPlayers - minPlayers >= 1) {
+ reqStr += minPlayers + " ~ " + maxPlayers;
+ } else {
+ reqStr += minPlayers;
+ }
+
+ reqStr += "\r\n Level range: ";
+ if (maxLevel - minLevel >= 1) {
+ reqStr += minLevel + " ~ " + maxLevel;
+ } else {
+ reqStr += minLevel;
+ }
+
+ reqStr += "\r\n Time limit: ";
+ reqStr += eventTime + " minutes";
+
+ em.setProperty("party", reqStr);
}
function setEventExclusives(eim) {
- var itemSet = [4001044, 4001045, 4001046, 4001047, 4001048, 4001049, 4001050, 4001051, 4001052, 4001053, 4001054, 4001055, 4001056, 4001057, 4001058, 4001059, 4001060, 4001061, 4001062, 4001063];
- eim.setExclusiveItems(itemSet);
+ var itemSet = [4001044, 4001045, 4001046, 4001047, 4001048, 4001049, 4001050, 4001051, 4001052, 4001053, 4001054, 4001055, 4001056, 4001057, 4001058, 4001059, 4001060, 4001061, 4001062, 4001063];
+ eim.setExclusiveItems(itemSet);
}
function setEventRewards(eim) {
- var itemSet, itemQty, evLevel, expStages;
+ var itemSet, itemQty, evLevel, expStages;
- evLevel = 1; //Rewards at clear PQ
- itemSet = [2040602, 2040802, 2040002, 2040402, 2040505, 2040502, 2040601, 2044501, 2044701, 2044601, 2041019, 2041016, 2041022, 2041013, 2041007, 2043301, 2040301, 2040801, 2040001, 2040004, 2040504, 2040501, 2040513, 2043101, 2044201, 2044401, 2040701, 2044301, 2043801, 2040401, 2043701, 2040803, 2000003, 2000002, 2000004, 2000006, 2000005, 2022000, 2001001, 2001002, 2022003, 2001000, 2020014, 2020015, 4003000, 1102015, 1102016, 1102017, 1102018, 1102021, 1102022, 1102023, 1102024, 1102084, 1102085, 1102086, 1032019, 1032020, 1032021, 1032014, 2070011, 4010003, 4010000, 4010006, 4010002, 4010005, 4010004, 4010001, 4020001, 4020002, 4020008, 4020007, 4020003, 4020000, 4020004, 4020005, 4020006, 2210000, 2210001, 2210002, 2070006, 2070005, 2070007, 2070004, 2061003, 2060003, 2060004, 2061004, 2100000, 2100001, 2100002, 2100003, 2100004, 2100005];
- itemQty = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 100, 100, 15, 80, 5, 25, 20, 20, 25, 20, 15, 10, 45, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 15, 15, 10, 15, 15, 15, 15, 15, 15, 10, 10, 15, 15, 15, 15, 15, 5, 5, 5, 1, 1, 1, 1, 2000, 2000, 2000, 2000, 1, 1, 1, 1, 1, 1];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- expStages = []; //bonus exp given on CLEAR stage signal
- eim.setEventClearStageExp(expStages);
+ evLevel = 1; //Rewards at clear PQ
+ itemSet = [2040602, 2040802, 2040002, 2040402, 2040505, 2040502, 2040601, 2044501, 2044701, 2044601, 2041019, 2041016, 2041022, 2041013, 2041007, 2043301, 2040301, 2040801, 2040001, 2040004, 2040504, 2040501, 2040513, 2043101, 2044201, 2044401, 2040701, 2044301, 2043801, 2040401, 2043701, 2040803, 2000003, 2000002, 2000004, 2000006, 2000005, 2022000, 2001001, 2001002, 2022003, 2001000, 2020014, 2020015, 4003000, 1102015, 1102016, 1102017, 1102018, 1102021, 1102022, 1102023, 1102024, 1102084, 1102085, 1102086, 1032019, 1032020, 1032021, 1032014, 2070011, 4010003, 4010000, 4010006, 4010002, 4010005, 4010004, 4010001, 4020001, 4020002, 4020008, 4020007, 4020003, 4020000, 4020004, 4020005, 4020006, 2210000, 2210001, 2210002, 2070006, 2070005, 2070007, 2070004, 2061003, 2060003, 2060004, 2061004, 2100000, 2100001, 2100002, 2100003, 2100004, 2100005];
+ itemQty = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 100, 100, 15, 80, 5, 25, 20, 20, 25, 20, 15, 10, 45, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 15, 15, 10, 15, 15, 15, 15, 15, 15, 10, 10, 15, 15, 15, 15, 15, 5, 5, 5, 1, 1, 1, 1, 2000, 2000, 2000, 2000, 1, 1, 1, 1, 1, 1];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ expStages = []; //bonus exp given on CLEAR stage signal
+ eim.setEventClearStageExp(expStages);
}
function getEligibleParty(party) { //selects, from the given party, the team that is allowed to attempt this event
- var eligible = [];
- var hasLeader = false;
-
- if(party.size() > 0) {
- var partyList = party.toArray();
+ var eligible = [];
+ var hasLeader = false;
- for(var i = 0; i < party.size(); i++) {
- var ch = partyList[i];
+ if (party.size() > 0) {
+ var partyList = party.toArray();
- if(ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
- if(ch.isLeader()) hasLeader = true;
- eligible.push(ch);
- }
+ for (var i = 0; i < party.size(); i++) {
+ var ch = partyList[i];
+
+ if (ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
+ if (ch.isLeader()) {
+ hasLeader = true;
}
+ eligible.push(ch);
+ }
}
-
- if(!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) eligible = [];
- return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
+ }
+
+ if (!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) {
+ eligible = [];
+ }
+ return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
}
function setup(level, lobbyid) {
- var eim = em.newInstance("Orbis" + lobbyid);
- eim.setProperty("level", level);
-
- eim.setProperty("statusStg0", -1);
- eim.setProperty("statusStg1", -1);
- eim.setProperty("statusStg2", -1);
- eim.setProperty("statusStg3", -1);
- eim.setProperty("statusStg4", -1);
- eim.setProperty("statusStg5", -1);
- eim.setProperty("statusStg6", -1);
- eim.setProperty("statusStg7", -1);
- eim.setProperty("statusStg8", -1);
- eim.setProperty("statusStg2_c", 0);
- eim.setProperty("statusStg7_c", 0);
- eim.setProperty("statusStgBonus", 0);
-
-
- eim.getInstanceMap(920010000).resetPQ(level);
- eim.getInstanceMap(920010100).resetPQ(level);
- eim.getInstanceMap(920010200).resetPQ(level);
- eim.getInstanceMap(920010300).resetPQ(level);
- eim.getInstanceMap(920010400).resetPQ(level);
- eim.getInstanceMap(920010500).resetPQ(level);
- eim.getInstanceMap(920010600).resetPQ(level);
- eim.getInstanceMap(920010601).resetPQ(level);
- eim.getInstanceMap(920010602).resetPQ(level);
- eim.getInstanceMap(920010603).resetPQ(level);
- eim.getInstanceMap(920010604).resetPQ(level);
- eim.getInstanceMap(920010700).resetPQ(level);
- eim.getInstanceMap(920010800).resetPQ(level);
- eim.getInstanceMap(920010900).resetPQ(level);
- eim.getInstanceMap(920010910).resetPQ(level);
- eim.getInstanceMap(920010911).resetPQ(level);
- eim.getInstanceMap(920010912).resetPQ(level);
- eim.getInstanceMap(920010920).resetPQ(level);
- eim.getInstanceMap(920010921).resetPQ(level);
- eim.getInstanceMap(920010922).resetPQ(level);
- eim.getInstanceMap(920010930).resetPQ(level);
- eim.getInstanceMap(920010931).resetPQ(level);
- eim.getInstanceMap(920010932).resetPQ(level);
- eim.getInstanceMap(920011000).resetPQ(level);
- eim.getInstanceMap(920011100).resetPQ(level);
- eim.getInstanceMap(920011200).resetPQ(level);
- eim.getInstanceMap(920011300).resetPQ(level);
-
- respawnStages(eim);
-
- var d = new Date();
- eim.getInstanceMap(920010400).getReactorByName("music").setEventState(d.getDay());
-
- eim.startEventTimer(eventTime * 60000);
- setEventRewards(eim);
- setEventExclusives(eim);
-
- return eim;
+ var eim = em.newInstance("Orbis" + lobbyid);
+ eim.setProperty("level", level);
+
+ eim.setProperty("statusStg0", -1);
+ eim.setProperty("statusStg1", -1);
+ eim.setProperty("statusStg2", -1);
+ eim.setProperty("statusStg3", -1);
+ eim.setProperty("statusStg4", -1);
+ eim.setProperty("statusStg5", -1);
+ eim.setProperty("statusStg6", -1);
+ eim.setProperty("statusStg7", -1);
+ eim.setProperty("statusStg8", -1);
+ eim.setProperty("statusStg2_c", 0);
+ eim.setProperty("statusStg7_c", 0);
+ eim.setProperty("statusStgBonus", 0);
+
+
+ eim.getInstanceMap(920010000).resetPQ(level);
+ eim.getInstanceMap(920010100).resetPQ(level);
+ eim.getInstanceMap(920010200).resetPQ(level);
+ eim.getInstanceMap(920010300).resetPQ(level);
+ eim.getInstanceMap(920010400).resetPQ(level);
+ eim.getInstanceMap(920010500).resetPQ(level);
+ eim.getInstanceMap(920010600).resetPQ(level);
+ eim.getInstanceMap(920010601).resetPQ(level);
+ eim.getInstanceMap(920010602).resetPQ(level);
+ eim.getInstanceMap(920010603).resetPQ(level);
+ eim.getInstanceMap(920010604).resetPQ(level);
+ eim.getInstanceMap(920010700).resetPQ(level);
+ eim.getInstanceMap(920010800).resetPQ(level);
+ eim.getInstanceMap(920010900).resetPQ(level);
+ eim.getInstanceMap(920010910).resetPQ(level);
+ eim.getInstanceMap(920010911).resetPQ(level);
+ eim.getInstanceMap(920010912).resetPQ(level);
+ eim.getInstanceMap(920010920).resetPQ(level);
+ eim.getInstanceMap(920010921).resetPQ(level);
+ eim.getInstanceMap(920010922).resetPQ(level);
+ eim.getInstanceMap(920010930).resetPQ(level);
+ eim.getInstanceMap(920010931).resetPQ(level);
+ eim.getInstanceMap(920010932).resetPQ(level);
+ eim.getInstanceMap(920011000).resetPQ(level);
+ eim.getInstanceMap(920011100).resetPQ(level);
+ eim.getInstanceMap(920011200).resetPQ(level);
+ eim.getInstanceMap(920011300).resetPQ(level);
+
+ respawnStages(eim);
+
+ var d = new Date();
+ eim.getInstanceMap(920010400).getReactorByName("music").setEventState(d.getDay());
+
+ eim.startEventTimer(eventTime * 60000);
+ setEventRewards(eim);
+ setEventExclusives(eim);
+
+ return eim;
}
function isTeamAllJobs(eim) {
- var eventJobs = eim.getEventPlayersJobs();
- var rangeJobs = parseInt('111110', 2);
-
- return ((eventJobs & rangeJobs) == rangeJobs);
+ var eventJobs = eim.getEventPlayersJobs();
+ var rangeJobs = parseInt('111110', 2);
+
+ return ((eventJobs & rangeJobs) == rangeJobs);
}
function afterSetup(eim) {
- if(isTeamAllJobs(eim)) {
- var rnd = Math.floor(Math.random() * 4);
- eim.applyEventPlayersItemBuff(2022090 + rnd);
- }
+ if (isTeamAllJobs(eim)) {
+ var rnd = Math.floor(Math.random() * 4);
+ eim.applyEventPlayersItemBuff(2022090 + rnd);
+ }
}
function respawnStages(eim) {}
function playerEntry(eim, player) {
- var map = eim.getMapInstance(entryMap);
- player.changeMap(map, map.getPortal(0));
-
- var texttt = "Hi, my name is Eak, the Chamberlain of the Goddess. Don't be alarmed; you won't be able to see me right now. Back when the Goddess turned into a block of stone, I simultaneously lost my own power. If you gather up the power of the Magic Cloud of Orbis, however, then I'll be able to recover my body and re-transform back to my original self. Please collect #b20#k Magic Clouds and bring them back to me. Right now, you'll only see me as a tiny, flickering light.";
- player.getAbstractPlayerInteraction().npcTalk(2013001, texttt);
+ var map = eim.getMapInstance(entryMap);
+ player.changeMap(map, map.getPortal(0));
+
+ var texttt = "Hi, my name is Eak, the Chamberlain of the Goddess. Don't be alarmed; you won't be able to see me right now. Back when the Goddess turned into a block of stone, I simultaneously lost my own power. If you gather up the power of the Magic Cloud of Orbis, however, then I'll be able to recover my body and re-transform back to my original self. Please collect #b20#k Magic Clouds and bring them back to me. Right now, you'll only see me as a tiny, flickering light.";
+ player.getAbstractPlayerInteraction().npcTalk(2013001, texttt);
}
function scheduledTimeout(eim) {
- if(eim.getIntProperty("statusStg8") == 1) {
- eim.warpEventTeam(920011300);
- }
- else {
- end(eim);
- }
+ if (eim.getIntProperty("statusStg8") == 1) {
+ eim.warpEventTeam(920011300);
+ } else {
+ end(eim);
+ }
}
function playerUnregistered(eim, player) {
- player.cancelEffect(2022090);
- player.cancelEffect(2022091);
- player.cancelEffect(2022092);
- player.cancelEffect(2022093);
+ player.cancelEffect(2022090);
+ player.cancelEffect(2022091);
+ player.cancelEffect(2022092);
+ player.cancelEffect(2022093);
}
function playerExit(eim, player) {
- eim.unregisterPlayer(player);
- player.changeMap(exitMap, 0);
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap, 0);
}
function playerLeft(eim, player) {
- if(!eim.isEventCleared()) {
- playerExit(eim, player);
- }
+ if (!eim.isEventCleared()) {
+ playerExit(eim, player);
+ }
}
function changedMap(eim, player, mapid) {
- if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (mapid < minMapId || mapid > maxMapId) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
}
+ }
}
function changedLeader(eim, leader) {
- var mapid = leader.getMapId();
- if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
- end(eim);
- }
+ var mapid = leader.getMapId();
+ if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
+ end(eim);
+ }
}
function playerDead(eim, player) {}
function playerRevive(eim, player) { // player presses ok on the death pop up.
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function playerDisconnected(eim, player) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function leftParty(eim, player) {
- if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
- end(eim);
- }
- else
- playerLeft(eim, player);
+ if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
+ end(eim);
+ } else {
+ playerLeft(eim, player);
+ }
}
function disbandParty(eim) {
- if (!eim.isEventCleared()) {
- end(eim);
- }
+ if (!eim.isEventCleared()) {
+ end(eim);
+ }
}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function end(eim) {
- var party = eim.getPlayers();
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ var party = eim.getPlayers();
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
}
function giveRandomEventReward(eim, player) {
- eim.giveEventReward(player);
+ eim.giveEventReward(player);
}
function clearPQ(eim) {
- eim.stopEventTimer();
- eim.setEventCleared();
+ eim.stopEventTimer();
+ eim.setEventCleared();
}
function monsterKilled(mob, eim) {}
diff --git a/scripts/event/PapulatusBattle.js b/scripts/event/PapulatusBattle.js
index 7144c2d5cb..ed92c33911 100644
--- a/scripts/event/PapulatusBattle.js
+++ b/scripts/event/PapulatusBattle.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Vs Papulatus
-*/
+ */
var isPq = true;
var minPlayers = 1, maxPlayers = 6;
@@ -39,119 +39,129 @@ var eventTime = 45; // 45 minutes
const maxLobbies = 1;
function init() {
- setEventRequirements();
+ setEventRequirements();
}
function getMaxLobbies() {
- return maxLobbies;
+ return maxLobbies;
}
function setEventRequirements() {
- var reqStr = "";
-
- reqStr += "\r\n Number of players: ";
- if(maxPlayers - minPlayers >= 1) reqStr += minPlayers + " ~ " + maxPlayers;
- else reqStr += minPlayers;
-
- reqStr += "\r\n Level range: ";
- if(maxLevel - minLevel >= 1) reqStr += minLevel + " ~ " + maxLevel;
- else reqStr += minLevel;
-
- reqStr += "\r\n Time limit: ";
- reqStr += eventTime + " minutes";
-
- em.setProperty("party", reqStr);
+ var reqStr = "";
+
+ reqStr += "\r\n Number of players: ";
+ if (maxPlayers - minPlayers >= 1) {
+ reqStr += minPlayers + " ~ " + maxPlayers;
+ } else {
+ reqStr += minPlayers;
+ }
+
+ reqStr += "\r\n Level range: ";
+ if (maxLevel - minLevel >= 1) {
+ reqStr += minLevel + " ~ " + maxLevel;
+ } else {
+ reqStr += minLevel;
+ }
+
+ reqStr += "\r\n Time limit: ";
+ reqStr += eventTime + " minutes";
+
+ em.setProperty("party", reqStr);
}
function setEventExclusives(eim) {
- var itemSet = [];
- eim.setExclusiveItems(itemSet);
+ var itemSet = [];
+ eim.setExclusiveItems(itemSet);
}
function setEventRewards(eim) {
- var itemSet, itemQty, evLevel, expStages;
+ var itemSet, itemQty, evLevel, expStages;
- evLevel = 1; //Rewards at clear PQ
- itemSet = [];
- itemQty = [];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- expStages = []; //bonus exp given on CLEAR stage signal
- eim.setEventClearStageExp(expStages);
+ evLevel = 1; //Rewards at clear PQ
+ itemSet = [];
+ itemQty = [];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ expStages = []; //bonus exp given on CLEAR stage signal
+ eim.setEventClearStageExp(expStages);
}
function getEligibleParty(party) { //selects, from the given party, the team that is allowed to attempt this event
- var eligible = [];
- var hasLeader = false;
-
- if(party.size() > 0) {
- var partyList = party.toArray();
+ var eligible = [];
+ var hasLeader = false;
- for(var i = 0; i < party.size(); i++) {
- var ch = partyList[i];
+ if (party.size() > 0) {
+ var partyList = party.toArray();
- if(ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
- if(ch.isLeader()) hasLeader = true;
- eligible.push(ch);
- }
+ for (var i = 0; i < party.size(); i++) {
+ var ch = partyList[i];
+
+ if (ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
+ if (ch.isLeader()) {
+ hasLeader = true;
}
+ eligible.push(ch);
+ }
}
-
- if(!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) eligible = [];
- return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
+ }
+
+ if (!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) {
+ eligible = [];
+ }
+ return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
}
function setup(level, lobbyid) {
- var eim = em.newInstance("Papulatus" + lobbyid);
- eim.setProperty("level", level);
- eim.setProperty("boss", "0");
-
- eim.getInstanceMap(220080001).resetPQ(level);
-
- respawnStages(eim);
- eim.startEventTimer(eventTime * 60000);
- setEventRewards(eim);
- setEventExclusives(eim);
- return eim;
+ var eim = em.newInstance("Papulatus" + lobbyid);
+ eim.setProperty("level", level);
+ eim.setProperty("boss", "0");
+
+ eim.getInstanceMap(220080001).resetPQ(level);
+
+ respawnStages(eim);
+ eim.startEventTimer(eventTime * 60000);
+ setEventRewards(eim);
+ setEventExclusives(eim);
+ return eim;
}
function afterSetup(eim) {
- updateGateState(1);
+ updateGateState(1);
}
function respawnStages(eim) {}
function playerEntry(eim, player) {
- var map = eim.getMapInstance(entryMap);
- player.changeMap(map, map.getPortal(0));
+ var map = eim.getMapInstance(entryMap);
+ player.changeMap(map, map.getPortal(0));
}
function scheduledTimeout(eim) {
- end(eim);
+ end(eim);
}
function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
- eim.unregisterPlayer(player);
- player.changeMap(exitMap, 0);
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap, 0);
}
function playerLeft(eim, player) {
- if(!eim.isEventCleared()) {
- playerExit(eim, player);
- }
+ if (!eim.isEventCleared()) {
+ playerExit(eim, player);
+ }
}
function changedMap(eim, player, mapid) {
- if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isExpeditionTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (mapid < minMapId || mapid > maxMapId) {
+ if (eim.isExpeditionTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
}
+ }
}
function changedLeader(eim, leader) {}
@@ -159,21 +169,21 @@ function changedLeader(eim, leader) {}
function playerDead(eim, player) {}
function playerRevive(eim, player) { // player presses ok on the death pop up.
- if (eim.isExpeditionTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isExpeditionTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function playerDisconnected(eim, player) {
- if (eim.isExpeditionTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isExpeditionTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function leftParty(eim, player) {}
@@ -181,38 +191,38 @@ function leftParty(eim, player) {}
function disbandParty(eim) {}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function end(eim) {
- var party = eim.getPlayers();
-
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ var party = eim.getPlayers();
+
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
}
function giveRandomEventReward(eim, player) {
- eim.giveEventReward(player);
+ eim.giveEventReward(player);
}
function clearPQ(eim) {
- eim.stopEventTimer();
- eim.setEventCleared();
- updateGateState(0);
+ eim.stopEventTimer();
+ eim.setEventCleared();
+ updateGateState(0);
}
function isPapulatus(mob) {
- var mobid = mob.getId();
- return mobid == 8500002;
+ var mobid = mob.getId();
+ return mobid == 8500002;
}
function monsterKilled(mob, eim) {
- if(isPapulatus(mob)) {
- eim.showClearEffect();
- eim.clearPQ();
- }
+ if (isPapulatus(mob)) {
+ eim.showClearEffect();
+ eim.clearPQ();
+ }
}
function allMonstersDead(eim) {}
@@ -220,13 +230,13 @@ function allMonstersDead(eim) {}
function cancelSchedule() {}
function updateGateState(newState) { // thanks Conrad for noticing missing gate update
- em.getChannelServer().getMapFactory().getMap(220080000).getReactorById(2208001).forceHitReactor(newState);
- em.getChannelServer().getMapFactory().getMap(220080000).getReactorById(2208002).forceHitReactor(newState);
- em.getChannelServer().getMapFactory().getMap(220080000).getReactorById(2208003).forceHitReactor(newState);
+ em.getChannelServer().getMapFactory().getMap(220080000).getReactorById(2208001).forceHitReactor(newState);
+ em.getChannelServer().getMapFactory().getMap(220080000).getReactorById(2208002).forceHitReactor(newState);
+ em.getChannelServer().getMapFactory().getMap(220080000).getReactorById(2208003).forceHitReactor(newState);
}
function dispose(eim) {
- if (!eim.isEventCleared()) {
- updateGateState(0);
- }
+ if (!eim.isEventCleared()) {
+ updateGateState(0);
+ }
}
diff --git a/scripts/event/PinkBeanBattle.js b/scripts/event/PinkBeanBattle.js
index ce8a5d1722..606ef5cb0f 100644
--- a/scripts/event/PinkBeanBattle.js
+++ b/scripts/event/PinkBeanBattle.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Pink Bean Battle
-*/
+ */
var isPq = true;
var minPlayers = 6, maxPlayers = 30;
@@ -39,7 +39,7 @@ var eventTime = 140; // 140 minutes
const maxLobbies = 1;
function init() {
- setEventRequirements();
+ setEventRequirements();
}
function getMaxLobbies() {
@@ -47,40 +47,46 @@ function getMaxLobbies() {
}
function setEventRequirements() {
- var reqStr = "";
-
- reqStr += "\r\n Number of players: ";
- if(maxPlayers - minPlayers >= 1) reqStr += minPlayers + " ~ " + maxPlayers;
- else reqStr += minPlayers;
-
- reqStr += "\r\n Level range: ";
- if(maxLevel - minLevel >= 1) reqStr += minLevel + " ~ " + maxLevel;
- else reqStr += minLevel;
-
- reqStr += "\r\n Time limit: ";
- reqStr += eventTime + " minutes";
-
- em.setProperty("party", reqStr);
+ var reqStr = "";
+
+ reqStr += "\r\n Number of players: ";
+ if (maxPlayers - minPlayers >= 1) {
+ reqStr += minPlayers + " ~ " + maxPlayers;
+ } else {
+ reqStr += minPlayers;
+ }
+
+ reqStr += "\r\n Level range: ";
+ if (maxLevel - minLevel >= 1) {
+ reqStr += minLevel + " ~ " + maxLevel;
+ } else {
+ reqStr += minLevel;
+ }
+
+ reqStr += "\r\n Time limit: ";
+ reqStr += eventTime + " minutes";
+
+ em.setProperty("party", reqStr);
}
function setEventExclusives(eim) {
- var itemSet = [];
- eim.setExclusiveItems(itemSet);
+ var itemSet = [];
+ eim.setExclusiveItems(itemSet);
}
function setEventRewards(eim) {
- var itemSet, itemQty, evLevel, expStages, mesoStages;
+ var itemSet, itemQty, evLevel, expStages, mesoStages;
- evLevel = 1; //Rewards at clear PQ
- itemSet = [];
- itemQty = [];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- expStages = []; //bonus exp given on CLEAR stage signal
- eim.setEventClearStageExp(expStages);
-
- mesoStages = []; //bonus meso given on CLEAR stage signal
- eim.setEventClearStageMeso(mesoStages);
+ evLevel = 1; //Rewards at clear PQ
+ itemSet = [];
+ itemQty = [];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ expStages = []; //bonus exp given on CLEAR stage signal
+ eim.setEventClearStageExp(expStages);
+
+ mesoStages = []; //bonus meso given on CLEAR stage signal
+ eim.setEventClearStageMeso(mesoStages);
}
function afterSetup(eim) {
@@ -93,7 +99,7 @@ function setup(channel) {
eim.setProperty("canJoin", 1);
eim.setProperty("defeatedBoss", 0);
eim.setProperty("fallenPlayers", 0);
-
+
eim.setProperty("stage", 1);
eim.setProperty("channel", channel);
@@ -107,11 +113,11 @@ function setup(channel) {
var mob = LifeFactory.getMonster(8820000);
mob.disableDrops();
eim.getInstanceMap(270050100).spawnMonsterOnGroundBelow(mob, new Point(0, -42));
-
+
eim.startEventTimer(eventTime * 60000);
setEventRewards(eim);
setEventExclusives(eim);
-
+
return eim;
}
@@ -127,12 +133,11 @@ function scheduledTimeout(eim) {
function changedMap(eim, player, mapid) {
if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isExpeditionTeamLackingNow(true, minPlayers, player)) {
+ if (eim.isExpeditionTeamLackingNow(true, minPlayers, player)) {
eim.unregisterPlayer(player);
eim.dropMessage(5, "[Expedition] Either the leader has quit the expedition or there is no longer the minimum number of members required to continue it.");
end(eim);
- }
- else {
+ } else {
eim.dropMessage(5, "[Expedition] " + player.getName() + " has left the expedition.");
eim.unregisterPlayer(player);
}
@@ -144,15 +149,15 @@ function changedLeader(eim, leader) {}
function playerDead(eim, player) {
var count = eim.getIntProperty("fallenPlayers");
count = count + 1;
-
+
eim.setIntProperty("fallenPlayers", count);
-
- if(count == 5) {
+
+ if (count == 5) {
eim.dropMessage(5, "[Expedition] Too many players have fallen, Pink Bean is now deemed undefeatable; the expedition is over.");
end(eim);
- } else if(count == 4) {
+ } else if (count == 4) {
eim.dropMessage(5, "[Expedition] Pink Bean is growing stronger than ever, last stand mode everyone!");
- } else if(count == 3) {
+ } else if (count == 3) {
eim.dropMessage(5, "[Expedition] Casualty count is starting to get out of control. Battle with care.");
}
}
@@ -162,9 +167,9 @@ function playerRevive(eim, player) {
}
function monsterRevive(eim, mob) {
- if(isPinkBean(mob)) {
- mob.enableDrops();
- }
+ if (isPinkBean(mob)) {
+ mob.enableDrops();
+ }
}
function playerDisconnected(eim, player) {
@@ -172,16 +177,15 @@ function playerDisconnected(eim, player) {
eim.unregisterPlayer(player);
eim.dropMessage(5, "[Expedition] Either the leader has quit the expedition or there is no longer the minimum number of members required to continue it.");
end(eim);
- }
- else {
+ } else {
eim.dropMessage(5, "[Expedition] " + player.getName() + " has left the expedition.");
eim.unregisterPlayer(player);
}
}
-function leftParty (eim, player) {}
+function leftParty(eim, player) {}
-function disbandParty (eim) {}
+function disbandParty(eim) {}
function monsterValue(eim, mobId) {
return 1;
@@ -226,9 +230,9 @@ function noJrBossesLeft(map) {
}
function spawnJrBoss(mobObj, gotKilled) {
- if(gotKilled) {
+ if (gotKilled) {
spawnid = mobObj.getId() + 17;
-
+
} else {
mobObj.getMap().killMonster(mobObj.getId());
spawnid = mobObj.getId() - 17;
@@ -240,19 +244,19 @@ function spawnJrBoss(mobObj, gotKilled) {
}
function monsterKilled(mob, eim) {
- if(isPinkBean(mob)) {
+ if (isPinkBean(mob)) {
eim.setIntProperty("defeatedBoss", 1);
eim.showClearEffect(mob.getMap().getId());
mob.getMap().killAllMonsters();
eim.clearPQ();
-
+
var ch = eim.getIntProperty("channel");
mob.getMap().broadcastPinkBeanVictory(ch);
- } else if(isJrBoss(mob)) {
- if(noJrBossesLeft(mob.getMap())) {
+ } else if (isJrBoss(mob)) {
+ if (noJrBossesLeft(mob.getMap())) {
var stage = eim.getIntProperty("stage");
-
- if(stage == 5) {
+
+ if (stage == 5) {
var iid = 4001193;
const Item = Java.type('client.inventory.Item');
var itemObj = new Item(iid, 0, 1);
@@ -266,19 +270,19 @@ function monsterKilled(mob, eim) {
} else {
stage++;
eim.setIntProperty("stage", stage);
-
+
eim.dropMessage(5, "The next wave will start within 15 seconds, prepare yourselves.");
eim.schedule("startWave", 15 * 1000);
}
}
- }
+ }
}
function startWave(eim) {
var mapObj = eim.getMapInstance(270050100);
var stage = eim.getProperty("stage");
-
- for(var i = 1; i <= stage; i++) {
+
+ for (var i = 1; i <= stage; i++) {
spawnJrBoss(mapObj.getMonsterById(8820019 + (i % 5)), false);
}
}
diff --git a/scripts/event/PiratePQ.js b/scripts/event/PiratePQ.js
index e6beb4b594..1b3dbad344 100644
--- a/scripts/event/PiratePQ.js
+++ b/scripts/event/PiratePQ.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Pirate PQ
-*/
+ */
var isPq = true;
var isGrindMode = false; // stages done after breaking all boxes on maps
@@ -41,7 +41,7 @@ var eventTime = 4; // 4 minutes
const maxLobbies = 1;
function init() {
- setEventRequirements();
+ setEventRequirements();
}
function getMaxLobbies() {
@@ -49,321 +49,333 @@ function getMaxLobbies() {
}
function setEventRequirements() {
- var reqStr = "";
-
- reqStr += "\r\n Number of players: ";
- if(maxPlayers - minPlayers >= 1) reqStr += minPlayers + " ~ " + maxPlayers;
- else reqStr += minPlayers;
-
- reqStr += "\r\n Level range: ";
- if(maxLevel - minLevel >= 1) reqStr += minLevel + " ~ " + maxLevel;
- else reqStr += minLevel;
-
- reqStr += "\r\n Time limit: ";
- reqStr += eventTime + " minutes";
-
- em.setProperty("party", reqStr);
+ var reqStr = "";
+
+ reqStr += "\r\n Number of players: ";
+ if (maxPlayers - minPlayers >= 1) {
+ reqStr += minPlayers + " ~ " + maxPlayers;
+ } else {
+ reqStr += minPlayers;
+ }
+
+ reqStr += "\r\n Level range: ";
+ if (maxLevel - minLevel >= 1) {
+ reqStr += minLevel + " ~ " + maxLevel;
+ } else {
+ reqStr += minLevel;
+ }
+
+ reqStr += "\r\n Time limit: ";
+ reqStr += eventTime + " minutes";
+
+ em.setProperty("party", reqStr);
}
function setEventExclusives(eim) {
- var itemSet = [4001117, 4001120, 4001121, 4001122];
- eim.setExclusiveItems(itemSet);
+ var itemSet = [4001117, 4001120, 4001121, 4001122];
+ eim.setExclusiveItems(itemSet);
}
function setEventRewards(eim) {}
function getEligibleParty(party) { //selects, from the given party, the team that is allowed to attempt this event
- var eligible = [];
- var hasLeader = false;
-
- if(party.size() > 0) {
- var partyList = party.toArray();
+ var eligible = [];
+ var hasLeader = false;
- for(var i = 0; i < party.size(); i++) {
- var ch = partyList[i];
+ if (party.size() > 0) {
+ var partyList = party.toArray();
- if(ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
- if(ch.isLeader()) hasLeader = true;
- eligible.push(ch);
- }
+ for (var i = 0; i < party.size(); i++) {
+ var ch = partyList[i];
+
+ if (ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
+ if (ch.isLeader()) {
+ hasLeader = true;
}
+ eligible.push(ch);
+ }
}
-
- if(!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) eligible = [];
- return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
+ }
+
+ if (!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) {
+ eligible = [];
+ }
+ return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
}
function setup(level, lobbyid) {
- var eim = em.newInstance("Pirate" + lobbyid);
- eim.setProperty("level", level);
-
- eim.setProperty("stage2", "0");
- eim.setProperty("stage2a", "0");
- eim.setProperty("stage3a", "0");
- eim.setProperty("stage2b", "0");
- eim.setProperty("stage3b", "0");
- eim.setProperty("stage4", "0");
- eim.setProperty("stage5", "0");
-
- eim.setProperty("curStage", "1");
- eim.setProperty("grindMode", isGrindMode ? "1" : "0");
-
- eim.setProperty("openedChests", "0");
- eim.setProperty("openedBoxes", "0");
- eim.getInstanceMap(925100000).resetPQ(level);
- eim.getInstanceMap(925100000).shuffleReactors();
-
- eim.getInstanceMap(925100100).resetPQ(level);
- var map = eim.getInstanceMap(925100200);
- map.resetPQ(level);
- map.shuffleReactors();
- for (var i = 0; i < 5; i++) {
- var mob = em.getMonster(9300124);
- var mob2 = em.getMonster(9300125);
- var mob3 = em.getMonster(9300124);
- var mob4 = em.getMonster(9300125);
- eim.registerMonster(mob);
- eim.registerMonster(mob2);
- eim.registerMonster(mob3);
- eim.registerMonster(mob4);
- mob.changeDifficulty(level,isPq);
- mob2.changeDifficulty(level,isPq);
- mob3.changeDifficulty(level,isPq);
- mob4.changeDifficulty(level,isPq);
- map.spawnMonsterOnGroundBelow(mob, new java.awt.Point(430, 75));
- map.spawnMonsterOnGroundBelow(mob2, new java.awt.Point(1600, 75));
- map.spawnMonsterOnGroundBelow(mob3, new java.awt.Point(430, 238));
- map.spawnMonsterOnGroundBelow(mob4, new java.awt.Point(1600, 238));
- }
- map = eim.getInstanceMap(925100201);
- map.resetPQ(level);
- for (var i = 0; i < 10; i++) {
- var mob = em.getMonster(9300112);
- var mob2 = em.getMonster(9300113);
- eim.registerMonster(mob);
- eim.registerMonster(mob2);
- mob.changeDifficulty(level,isPq);
- mob2.changeDifficulty(level,isPq);
- map.spawnMonsterOnGroundBelow(mob, new java.awt.Point(0, 238));
- map.spawnMonsterOnGroundBelow(mob2, new java.awt.Point(1700, 238));
- }
- eim.getInstanceMap(925100202).resetPQ(level);
- map = eim.getInstanceMap(925100300);
- map.resetPQ(level);
- map.shuffleReactors();
- for (var i = 0; i < 5; i++) {
- var mob = em.getMonster(9300124);
- var mob2 = em.getMonster(9300125);
- var mob3 = em.getMonster(9300124);
- var mob4 = em.getMonster(9300125);
- eim.registerMonster(mob);
- eim.registerMonster(mob2);
- eim.registerMonster(mob3);
- eim.registerMonster(mob4);
- mob.changeDifficulty(level,isPq);
- mob2.changeDifficulty(level,isPq);
- mob3.changeDifficulty(level,isPq);
- mob4.changeDifficulty(level,isPq);
- map.spawnMonsterOnGroundBelow(mob, new java.awt.Point(430, 75));
- map.spawnMonsterOnGroundBelow(mob2, new java.awt.Point(1600, 75));
- map.spawnMonsterOnGroundBelow(mob3, new java.awt.Point(430, 238));
- map.spawnMonsterOnGroundBelow(mob4, new java.awt.Point(1600, 238));
- }
- map = eim.getInstanceMap(925100301);
- map.resetPQ(level);
- for (var i = 0; i < 10; i++) {
- var mob = em.getMonster(9300112);
- var mob2 = em.getMonster(9300113);
- eim.registerMonster(mob);
- eim.registerMonster(mob2);
- mob.changeDifficulty(level,isPq);
- mob2.changeDifficulty(level,isPq);
- map.spawnMonsterOnGroundBelow(mob, new java.awt.Point(0, 238));
- map.spawnMonsterOnGroundBelow(mob2, new java.awt.Point(1700, 238));
- }
- eim.getInstanceMap(925100302).resetPQ(level);
- eim.getInstanceMap(925100400).resetPQ(level);
- eim.getInstanceMap(925100500).resetPQ(level);
-
- respawnStages(eim);
-
- eim.startEventTimer(eventTime * 60000);
- setEventRewards(eim);
- setEventExclusives(eim);
- return eim;
+ var eim = em.newInstance("Pirate" + lobbyid);
+ eim.setProperty("level", level);
+
+ eim.setProperty("stage2", "0");
+ eim.setProperty("stage2a", "0");
+ eim.setProperty("stage3a", "0");
+ eim.setProperty("stage2b", "0");
+ eim.setProperty("stage3b", "0");
+ eim.setProperty("stage4", "0");
+ eim.setProperty("stage5", "0");
+
+ eim.setProperty("curStage", "1");
+ eim.setProperty("grindMode", isGrindMode ? "1" : "0");
+
+ eim.setProperty("openedChests", "0");
+ eim.setProperty("openedBoxes", "0");
+ eim.getInstanceMap(925100000).resetPQ(level);
+ eim.getInstanceMap(925100000).shuffleReactors();
+
+ eim.getInstanceMap(925100100).resetPQ(level);
+ var map = eim.getInstanceMap(925100200);
+ map.resetPQ(level);
+ map.shuffleReactors();
+ for (var i = 0; i < 5; i++) {
+ var mob = em.getMonster(9300124);
+ var mob2 = em.getMonster(9300125);
+ var mob3 = em.getMonster(9300124);
+ var mob4 = em.getMonster(9300125);
+ eim.registerMonster(mob);
+ eim.registerMonster(mob2);
+ eim.registerMonster(mob3);
+ eim.registerMonster(mob4);
+ mob.changeDifficulty(level, isPq);
+ mob2.changeDifficulty(level, isPq);
+ mob3.changeDifficulty(level, isPq);
+ mob4.changeDifficulty(level, isPq);
+ map.spawnMonsterOnGroundBelow(mob, new java.awt.Point(430, 75));
+ map.spawnMonsterOnGroundBelow(mob2, new java.awt.Point(1600, 75));
+ map.spawnMonsterOnGroundBelow(mob3, new java.awt.Point(430, 238));
+ map.spawnMonsterOnGroundBelow(mob4, new java.awt.Point(1600, 238));
+ }
+ map = eim.getInstanceMap(925100201);
+ map.resetPQ(level);
+ for (var i = 0; i < 10; i++) {
+ var mob = em.getMonster(9300112);
+ var mob2 = em.getMonster(9300113);
+ eim.registerMonster(mob);
+ eim.registerMonster(mob2);
+ mob.changeDifficulty(level, isPq);
+ mob2.changeDifficulty(level, isPq);
+ map.spawnMonsterOnGroundBelow(mob, new java.awt.Point(0, 238));
+ map.spawnMonsterOnGroundBelow(mob2, new java.awt.Point(1700, 238));
+ }
+ eim.getInstanceMap(925100202).resetPQ(level);
+ map = eim.getInstanceMap(925100300);
+ map.resetPQ(level);
+ map.shuffleReactors();
+ for (var i = 0; i < 5; i++) {
+ var mob = em.getMonster(9300124);
+ var mob2 = em.getMonster(9300125);
+ var mob3 = em.getMonster(9300124);
+ var mob4 = em.getMonster(9300125);
+ eim.registerMonster(mob);
+ eim.registerMonster(mob2);
+ eim.registerMonster(mob3);
+ eim.registerMonster(mob4);
+ mob.changeDifficulty(level, isPq);
+ mob2.changeDifficulty(level, isPq);
+ mob3.changeDifficulty(level, isPq);
+ mob4.changeDifficulty(level, isPq);
+ map.spawnMonsterOnGroundBelow(mob, new java.awt.Point(430, 75));
+ map.spawnMonsterOnGroundBelow(mob2, new java.awt.Point(1600, 75));
+ map.spawnMonsterOnGroundBelow(mob3, new java.awt.Point(430, 238));
+ map.spawnMonsterOnGroundBelow(mob4, new java.awt.Point(1600, 238));
+ }
+ map = eim.getInstanceMap(925100301);
+ map.resetPQ(level);
+ for (var i = 0; i < 10; i++) {
+ var mob = em.getMonster(9300112);
+ var mob2 = em.getMonster(9300113);
+ eim.registerMonster(mob);
+ eim.registerMonster(mob2);
+ mob.changeDifficulty(level, isPq);
+ mob2.changeDifficulty(level, isPq);
+ map.spawnMonsterOnGroundBelow(mob, new java.awt.Point(0, 238));
+ map.spawnMonsterOnGroundBelow(mob2, new java.awt.Point(1700, 238));
+ }
+ eim.getInstanceMap(925100302).resetPQ(level);
+ eim.getInstanceMap(925100400).resetPQ(level);
+ eim.getInstanceMap(925100500).resetPQ(level);
+
+ respawnStages(eim);
+
+ eim.startEventTimer(eventTime * 60000);
+ setEventRewards(eim);
+ setEventExclusives(eim);
+ return eim;
}
function afterSetup(eim) {}
function respawnStages(eim) {
- var stg = eim.getIntProperty("stage2");
- if (stg < 3) { // thanks Chloek3, seth1, BHB for suggesting map respawn rather than waves on stg2
- eim.getMapInstance(925100100).spawnAllMonsterIdFromMapSpawnList(9300114 + stg, eim.getIntProperty("level"), true);
- }
-
- eim.getMapInstance(925100400).instanceMapRespawn();
- eim.schedule("respawnStages", 10 * 1000);
+ var stg = eim.getIntProperty("stage2");
+ if (stg < 3) { // thanks Chloek3, seth1, BHB for suggesting map respawn rather than waves on stg2
+ eim.getMapInstance(925100100).spawnAllMonsterIdFromMapSpawnList(9300114 + stg, eim.getIntProperty("level"), true);
+ }
+
+ eim.getMapInstance(925100400).instanceMapRespawn();
+ eim.schedule("respawnStages", 10 * 1000);
}
function playerEntry(eim, player) {
- var map = eim.getMapInstance(entryMap);
- player.changeMap(map, map.getPortal(0));
+ var map = eim.getMapInstance(entryMap);
+ player.changeMap(map, map.getPortal(0));
}
function scheduledTimeout(eim) {
- end(eim);
+ end(eim);
}
function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
- eim.unregisterPlayer(player);
- player.changeMap(exitMap, 0);
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap, 0);
}
function playerLeft(eim, player) {
- if(!eim.isEventCleared()) {
- playerExit(eim, player);
- }
+ if (!eim.isEventCleared()) {
+ playerExit(eim, player);
+ }
}
function changedMapInside(eim, mapid) {
- var stage = eim.getIntProperty("curStage");
-
- if(stage == 1) {
- if(mapid == 925100100) {
- eim.restartEventTimer(6 * 60 * 1000);
- eim.setIntProperty("curStage", 2);
- }
- } else if(stage == 2) {
- if(mapid == 925100200) {
- eim.restartEventTimer(6 * 60 * 1000);
- eim.setIntProperty("curStage", 3);
- }
- } else if(stage == 3) {
- if(mapid == 925100300) {
- eim.restartEventTimer(6 * 60 * 1000);
- eim.setIntProperty("curStage", 4);
- }
- } else if(stage == 4) {
- if(mapid == 925100400) {
- eim.restartEventTimer(6 * 60 * 1000);
- eim.setIntProperty("curStage", 5);
- }
- } else if(stage == 5) {
- if(mapid == 925100500) {
- eim.restartEventTimer(8 * 60 * 1000);
- eim.setIntProperty("curStage", 6);
- }
+ var stage = eim.getIntProperty("curStage");
+
+ if (stage == 1) {
+ if (mapid == 925100100) {
+ eim.restartEventTimer(6 * 60 * 1000);
+ eim.setIntProperty("curStage", 2);
}
+ } else if (stage == 2) {
+ if (mapid == 925100200) {
+ eim.restartEventTimer(6 * 60 * 1000);
+ eim.setIntProperty("curStage", 3);
+ }
+ } else if (stage == 3) {
+ if (mapid == 925100300) {
+ eim.restartEventTimer(6 * 60 * 1000);
+ eim.setIntProperty("curStage", 4);
+ }
+ } else if (stage == 4) {
+ if (mapid == 925100400) {
+ eim.restartEventTimer(6 * 60 * 1000);
+ eim.setIntProperty("curStage", 5);
+ }
+ } else if (stage == 5) {
+ if (mapid == 925100500) {
+ eim.restartEventTimer(8 * 60 * 1000);
+ eim.setIntProperty("curStage", 6);
+ }
+ }
}
function changedMap(eim, player, mapid) {
- if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (mapid < minMapId || mapid > maxMapId) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
} else {
- changedMapInside(eim, mapid);
+ eim.unregisterPlayer(player);
}
+ } else {
+ changedMapInside(eim, mapid);
+ }
}
function changedLeader(eim, leader) {
- var mapid = leader.getMapId();
- if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
- end(eim);
- }
+ var mapid = leader.getMapId();
+ if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
+ end(eim);
+ }
}
function playerDead(eim, player) {}
function playerRevive(eim, player) { // player presses ok on the death pop up.
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function playerDisconnected(eim, player) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- end(eim);
- }
- else
- playerExit(eim, player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ end(eim);
+ } else {
+ playerExit(eim, player);
+ }
}
function leftParty(eim, player) {
- if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
- end(eim);
- }
- else
- playerLeft(eim, player);
+ if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
+ end(eim);
+ } else {
+ playerLeft(eim, player);
+ }
}
function disbandParty(eim) {
- if (!eim.isEventCleared()) {
- end(eim);
- }
+ if (!eim.isEventCleared()) {
+ end(eim);
+ }
}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function end(eim) {
- var party = eim.getPlayers();
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ var party = eim.getPlayers();
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
}
function clearPQ(eim) {
- eim.stopEventTimer();
- eim.setEventCleared();
-
- var chests = parseInt(eim.getProperty("openedChests"));
- var expGain = (chests == 0 ? 28000 : (chests == 1 ? 35000 : 42000));
- eim.giveEventPlayersExp(expGain);
-
- eim.warpEventTeam(925100600);
+ eim.stopEventTimer();
+ eim.setEventCleared();
+
+ var chests = parseInt(eim.getProperty("openedChests"));
+ var expGain = (chests == 0 ? 28000 : (chests == 1 ? 35000 : 42000));
+ eim.giveEventPlayersExp(expGain);
+
+ eim.warpEventTeam(925100600);
}
function isLordPirate(mob) {
- var mobid = mob.getId();
- return (mobid == 9300105) || (mobid == 9300106) || (mobid == 9300107) || (mobid == 9300119);
+ var mobid = mob.getId();
+ return (mobid == 9300105) || (mobid == 9300106) || (mobid == 9300107) || (mobid == 9300119);
}
function passedGrindMode(map, eim) {
- if(eim.getIntProperty("grindMode") == 0) return true;
- return eim.activatedAllReactorsOnMap(map, 2511000, 2517999);
+ if (eim.getIntProperty("grindMode") == 0) {
+ return true;
+ }
+ return eim.activatedAllReactorsOnMap(map, 2511000, 2517999);
}
function monsterKilled(mob, eim) {
- var map = mob.getMap();
-
- if(isLordPirate(mob)) { // lord pirate defeated, spawn the little fella!
- map.broadcastStringMessage(5, "As Lord Pirate dies, Wu Yang is released!");
- eim.spawnNpc(2094001, new java.awt.Point(777, 140), mob.getMap());
- }
-
- if(map.countMonsters() == 0) {
- var stage = ((map.getId() % 1000) / 100) + 1;
-
- if((stage == 1 || stage == 3 || stage == 4) && passedGrindMode(map, eim)) {
- eim.showClearEffect(map.getId());
- } else if(stage == 5) {
- if(map.getReactorByName("sMob1").getState() >= 1 && map.getReactorByName("sMob2").getState() >= 1 && map.getReactorByName("sMob3").getState() >= 1 && map.getReactorByName("sMob4").getState() >= 1) {
- eim.showClearEffect(map.getId());
- }
- }
+ var map = mob.getMap();
+
+ if (isLordPirate(mob)) { // lord pirate defeated, spawn the little fella!
+ map.broadcastStringMessage(5, "As Lord Pirate dies, Wu Yang is released!");
+ eim.spawnNpc(2094001, new java.awt.Point(777, 140), mob.getMap());
+ }
+
+ if (map.countMonsters() == 0) {
+ var stage = ((map.getId() % 1000) / 100) + 1;
+
+ if ((stage == 1 || stage == 3 || stage == 4) && passedGrindMode(map, eim)) {
+ eim.showClearEffect(map.getId());
+ } else if (stage == 5) {
+ if (map.getReactorByName("sMob1").getState() >= 1 && map.getReactorByName("sMob2").getState() >= 1 && map.getReactorByName("sMob3").getState() >= 1 && map.getReactorByName("sMob4").getState() >= 1) {
+ eim.showClearEffect(map.getId());
+ }
}
+ }
}
function allMonstersDead(eim) {}
diff --git a/scripts/event/Puppeteer.js b/scripts/event/Puppeteer.js
index 0fd8898cb6..363c88f12f 100644
--- a/scripts/event/Puppeteer.js
+++ b/scripts/event/Puppeteer.js
@@ -7,93 +7,95 @@ var eventMap = 910510000;
var minMapId = 910510000;
var maxMapId = 910510000;
-function init(){}
+function init() {}
-function setup(difficulty, lobbyId){
- var eim = em.newInstance("Puppeteer_" +lobbyId);
- eim.getInstanceMap(eventMap).resetFully();
- eim.getInstanceMap(eventMap).allowSummonState(false);
- respawn(eim);
- eim.startEventTimer(eventTimer);
- return eim;
+function setup(difficulty, lobbyId) {
+ var eim = em.newInstance("Puppeteer_" + lobbyId);
+ eim.getInstanceMap(eventMap).resetFully();
+ eim.getInstanceMap(eventMap).allowSummonState(false);
+ respawn(eim);
+ eim.startEventTimer(eventTimer);
+ return eim;
}
-function afterSetup(eim){}
+function afterSetup(eim) {}
-function respawn(eim){}
+function respawn(eim) {}
-function playerEntry(eim, player){
- var cave = eim.getMapInstance(eventMap);
- player.changeMap(cave, 1);
+function playerEntry(eim, player) {
+ var cave = eim.getMapInstance(eventMap);
+ player.changeMap(cave, 1);
}
-function scheduledTimeout(eim){
- var party = eim.getPlayers();
+function scheduledTimeout(eim) {
+ var party = eim.getPlayers();
- for(var i = 0; i < party.size(); i++)
- playerExit(eim, party.get(i));
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
- eim.dispose();
+ eim.dispose();
}
-function playerRevive(eim, player){
- player.respawn(eim, exitMap);
- return false;
+function playerRevive(eim, player) {
+ player.respawn(eim, exitMap);
+ return false;
}
-function playerDead(eim, player){}
+function playerDead(eim, player) {}
-function playerDisconnected(eim, player){
- var party = eim.getPlayers();
+function playerDisconnected(eim, player) {
+ var party = eim.getPlayers();
- for(var i = 0; i < party.size(); i++){
- if(party.get(i).equals(player))
- removePlayer(eim, player);
- else
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ for (var i = 0; i < party.size(); i++) {
+ if (party.get(i).equals(player)) {
+ removePlayer(eim, player);
+ } else {
+ playerExit(eim, party.get(i));
+ }
+ }
+ eim.dispose();
}
-function monsterValue(eim, mobId){
- return -1;
+function monsterValue(eim, mobId) {
+ return -1;
}
-function leftParty(eim, player){}
+function leftParty(eim, player) {}
-function disbandParty(eim){}
+function disbandParty(eim) {}
-function playerUnregistered(eim, player){}
+function playerUnregistered(eim, player) {}
-function playerExit(eim, player){
- eim.unregisterPlayer(player);
- player.changeMap(exitMap);
+function playerExit(eim, player) {
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap);
}
-function changedMap(eim, chr, mapid){
- if(mapid < minMapId || mapid > maxMapId){
- removePlayer(eim, chr);
- eim.stopEventTimer();
- eim.setEventCleared();
- eim.dispose();
- }
+function changedMap(eim, chr, mapid) {
+ if (mapid < minMapId || mapid > maxMapId) {
+ removePlayer(eim, chr);
+ eim.stopEventTimer();
+ eim.setEventCleared();
+ eim.dispose();
+ }
}
-function removePlayer(eim, player){
- eim.unregisterPlayer(player);
- player.getMap().removePlayer(player);
- player.setMap(exitMap);
+function removePlayer(eim, player) {
+ eim.unregisterPlayer(player);
+ player.getMap().removePlayer(player);
+ player.setMap(exitMap);
}
-function cancelSchedule(){}
+function cancelSchedule() {}
-function dispose(){}
+function dispose() {}
-function clearPQ(eim){}
+function clearPQ(eim) {}
-function monsterKilled(mob, eim){}
+function monsterKilled(mob, eim) {}
-function allMonstersDead(eim){}
+function allMonstersDead(eim) {}
// ---------- FILLER FUNCTIONS ----------
diff --git a/scripts/event/RescueGaga.js b/scripts/event/RescueGaga.js
index 146d03cdc6..6661dffc87 100644
--- a/scripts/event/RescueGaga.js
+++ b/scripts/event/RescueGaga.js
@@ -1,7 +1,7 @@
/**
* @author: kevintjuh93
* @author: Ronan
-*/
+ */
var isPq = true;
var minPlayers = 1, maxPlayers = 1;
@@ -18,79 +18,89 @@ var eventTime = 3; // 3 minutes
const maxLobbies = 20;
function init() {
- setEventRequirements();
+ setEventRequirements();
}
function getMaxLobbies() {
- return maxLobbies;
+ return maxLobbies;
}
function setEventRequirements() {
- var reqStr = "";
-
- reqStr += "\r\n Number of players: ";
- if(maxPlayers - minPlayers >= 1) reqStr += minPlayers + " ~ " + maxPlayers;
- else reqStr += minPlayers;
-
- reqStr += "\r\n Level range: ";
- if(maxLevel - minLevel >= 1) reqStr += minLevel + " ~ " + maxLevel;
- else reqStr += minLevel;
-
- reqStr += "\r\n Time limit: ";
- reqStr += eventTime + " minutes";
-
- em.setProperty("party", reqStr);
+ var reqStr = "";
+
+ reqStr += "\r\n Number of players: ";
+ if (maxPlayers - minPlayers >= 1) {
+ reqStr += minPlayers + " ~ " + maxPlayers;
+ } else {
+ reqStr += minPlayers;
+ }
+
+ reqStr += "\r\n Level range: ";
+ if (maxLevel - minLevel >= 1) {
+ reqStr += minLevel + " ~ " + maxLevel;
+ } else {
+ reqStr += minLevel;
+ }
+
+ reqStr += "\r\n Time limit: ";
+ reqStr += eventTime + " minutes";
+
+ em.setProperty("party", reqStr);
}
function setEventExclusives(eim) {
- var itemSet = [];
- eim.setExclusiveItems(itemSet);
+ var itemSet = [];
+ eim.setExclusiveItems(itemSet);
}
function setEventRewards(eim) {
- var itemSet, itemQty, evLevel, expStages;
+ var itemSet, itemQty, evLevel, expStages;
- evLevel = 1; //Rewards at clear PQ
- itemSet = [];
- itemQty = [];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- expStages = []; //bonus exp given on CLEAR stage signal
- eim.setEventClearStageExp(expStages);
+ evLevel = 1; //Rewards at clear PQ
+ itemSet = [];
+ itemQty = [];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ expStages = []; //bonus exp given on CLEAR stage signal
+ eim.setEventClearStageExp(expStages);
}
function getEligibleParty(party) { //selects, from the given party, the team that is allowed to attempt this event
- var eligible = [];
- var hasLeader = false;
-
- if(party.size() > 0) {
- var partyList = party.toArray();
+ var eligible = [];
+ var hasLeader = false;
- for(var i = 0; i < party.size(); i++) {
- var ch = partyList[i];
+ if (party.size() > 0) {
+ var partyList = party.toArray();
- if(ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
- if(ch.isLeader()) hasLeader = true;
- eligible.push(ch);
- }
+ for (var i = 0; i < party.size(); i++) {
+ var ch = partyList[i];
+
+ if (ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
+ if (ch.isLeader()) {
+ hasLeader = true;
}
+ eligible.push(ch);
+ }
}
-
- if(!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) eligible = [];
- return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
+ }
+
+ if (!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) {
+ eligible = [];
+ }
+ return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
}
function setup(level, lobbyid) {
- var eim = em.newInstance("RescueGaga_" + lobbyid);
- eim.setProperty("level", level);
- eim.setProperty("stage", "0");
- eim.setProperty("falls", "0");
-
- respawnStages(eim);
- eim.startEventTimer(eventTime * 60000);
- setEventRewards(eim);
- setEventExclusives(eim);
- return eim;
+ var eim = em.newInstance("RescueGaga_" + lobbyid);
+ eim.setProperty("level", level);
+ eim.setProperty("stage", "0");
+ eim.setProperty("falls", "0");
+
+ respawnStages(eim);
+ eim.startEventTimer(eventTime * 60000);
+ setEventRewards(eim);
+ setEventExclusives(eim);
+ return eim;
}
function afterSetup(eim) {}
@@ -98,54 +108,54 @@ function afterSetup(eim) {}
function respawnStages(eim) {}
function playerEntry(eim, player) {
- var map = eim.getMapInstance(entryMap);
- player.changeMap(map, map.getPortal(0));
+ var map = eim.getMapInstance(entryMap);
+ player.changeMap(map, map.getPortal(0));
- const PacketCreator = Java.type('tools.PacketCreator');
- player.sendPacket(PacketCreator.showEffect("event/space/start"));
- player.startMapEffect("Please rescue Gaga within the time limit.", 5120027);
+ const PacketCreator = Java.type('tools.PacketCreator');
+ player.sendPacket(PacketCreator.showEffect("event/space/start"));
+ player.startMapEffect("Please rescue Gaga within the time limit.", 5120027);
}
function scheduledTimeout(eim) {
- end(eim);
+ end(eim);
}
function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
- eim.unregisterPlayer(player);
- player.changeMap(exitMap, 0);
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap, 0);
}
function changedMap(eim, player, mapid) {
- if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
-
- player.changeMap(mapid, 0);
- player.cancelEffect(2360002);
-
- end(eim);
- } else {
- eim.unregisterPlayer(player);
-
- player.changeMap(mapid, 0);
- player.cancelEffect(2360002);
- }
- } else if (mapid == maxMapId) {
- eim.clearPQ();
-
- var rgaga = player.getEvents().get("rescueGaga");
- rgaga.complete();
+ if (mapid < minMapId || mapid > maxMapId) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+
+ player.changeMap(mapid, 0);
+ player.cancelEffect(2360002);
+
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+
+ player.changeMap(mapid, 0);
+ player.cancelEffect(2360002);
}
+ } else if (mapid == maxMapId) {
+ eim.clearPQ();
+
+ var rgaga = player.getEvents().get("rescueGaga");
+ rgaga.complete();
+ }
}
function afterChangedMap(eim, player, mapid) {
- if (mapid == minMapId) {
- player.getAbstractPlayerInteraction().useItem(2360002);//HOORAY <3
- } else {
- player.cancelEffect(2360002);
- }
+ if (mapid == minMapId) {
+ player.getAbstractPlayerInteraction().useItem(2360002);//HOORAY <3
+ } else {
+ player.cancelEffect(2360002);
+ }
}
function changedLeader(eim, leader) {}
@@ -153,21 +163,21 @@ function changedLeader(eim, leader) {}
function playerDead(eim, player) {}
function playerRevive(eim, player) { // player presses ok on the death pop up.
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function playerDisconnected(eim, player) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function leftParty(eim, player) {}
@@ -175,31 +185,31 @@ function leftParty(eim, player) {}
function disbandParty(eim) {}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function end(eim) {
- var party = eim.getPlayers();
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ var party = eim.getPlayers();
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
}
function giveRandomEventReward(eim, player) {
- eim.giveEventReward(player);
+ eim.giveEventReward(player);
}
function clearPQ(eim) {
- eim.stopEventTimer();
- eim.setEventCleared();
-
- eim.schedule("spawnGrandpaBunny", 10 * 1000);
+ eim.stopEventTimer();
+ eim.setEventCleared();
+
+ eim.schedule("spawnGrandpaBunny", 10 * 1000);
}
function spawnGrandpaBunny(eim) {
- const Point = Java.type('java.awt.Point');
- eim.spawnNpc(9001105, new Point(175, -20), eim.getInstanceMap(maxMapId));
+ const Point = Java.type('java.awt.Point');
+ eim.spawnNpc(9001105, new Point(175, -20), eim.getInstanceMap(maxMapId));
}
function monsterKilled(mob, eim) {}
diff --git a/scripts/event/RockSpirit.js b/scripts/event/RockSpirit.js
index d7a8970269..7410e5f7a9 100644
--- a/scripts/event/RockSpirit.js
+++ b/scripts/event/RockSpirit.js
@@ -40,9 +40,9 @@ function setup(level, lobbyid) {
var eim = em.newInstance("RockSpirit_" + lobbyid);
eim.setProperty("level", level);
eim.setProperty("boss", "0");
-
+
respawn(eim);
- eim.startEventTimer(timer);
+ eim.startEventTimer(timer);
return eim;
}
@@ -76,9 +76,9 @@ function playerDisconnected(eim, player) {
if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
eim.unregisterPlayer(player);
end(eim);
- }
- else
+ } else {
eim.unregisterPlayer(player);
+ }
}
function changedMap(eim, player, mapid) {
@@ -86,13 +86,13 @@ function changedMap(eim, player, mapid) {
if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
eim.unregisterPlayer(player);
end(eim);
- }
- else
+ } else {
eim.unregisterPlayer(player);
+ }
}
}
-function monsterValue(eim,mobId) {
+function monsterValue(eim, mobId) {
return -1;
}
diff --git a/scripts/event/RockSpiritVIP.js b/scripts/event/RockSpiritVIP.js
index 58cf3e9b72..7593e15872 100644
--- a/scripts/event/RockSpiritVIP.js
+++ b/scripts/event/RockSpiritVIP.js
@@ -31,38 +31,38 @@ var fightTime = 30;
var timer = 1000 * 60 * fightTime;
function init() {
- exitMap = em.getChannelServer().getMapFactory().getMap(103040400);
- entryMap = em.getChannelServer().getMapFactory().getMap(103040440);
- otherMap = em.getChannelServer().getMapFactory().getMap(103040450);
+ exitMap = em.getChannelServer().getMapFactory().getMap(103040400);
+ entryMap = em.getChannelServer().getMapFactory().getMap(103040440);
+ otherMap = em.getChannelServer().getMapFactory().getMap(103040450);
}
function setup(level, lobbyid) {
var eim = em.newInstance("RockSpiritVIP_" + lobbyid);
eim.setProperty("level", level);
eim.setProperty("boss", "0");
-
+
respawn(eim);
- eim.startEventTimer(timer);
- return eim;
+ eim.startEventTimer(timer);
+ return eim;
}
function afterSetup(eim) {}
function respawn(eim) {
- var map = eim.getMapInstance(entryMap.getId());
- var map2 = eim.getMapInstance(otherMap.getId());
- map.allowSummonState(true);
- map2.allowSummonState(true);
- map.instanceMapRespawn();
- map2.instanceMapRespawn();
- eim.schedule("respawn", 10000);
+ var map = eim.getMapInstance(entryMap.getId());
+ var map2 = eim.getMapInstance(otherMap.getId());
+ map.allowSummonState(true);
+ map2.allowSummonState(true);
+ map.instanceMapRespawn();
+ map2.instanceMapRespawn();
+ eim.schedule("respawn", 10000);
}
function playerEntry(eim, player) {
- var amplifierMap = eim.getMapInstance(entryMap.getId());
- player.changeMap(amplifierMap, 1);
- eim.schedule("timeOut", timer);
+ var amplifierMap = eim.getMapInstance(entryMap.getId());
+ player.changeMap(amplifierMap, 1);
+ eim.schedule("timeOut", timer);
}
function playerRevive(eim, player) {
@@ -76,9 +76,9 @@ function playerDisconnected(eim, player) {
if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
eim.unregisterPlayer(player);
end(eim);
+ } else {
+ eim.unregisterPlayer(player);
}
- else
- eim.unregisterPlayer(player);
}
function changedMap(eim, player, mapid) {
@@ -86,13 +86,13 @@ function changedMap(eim, player, mapid) {
if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
eim.unregisterPlayer(player);
end(eim);
- }
- else
+ } else {
eim.unregisterPlayer(player);
+ }
}
}
-function monsterValue(eim,mobId) {
+function monsterValue(eim, mobId) {
return -1;
}
diff --git a/scripts/event/ScargaBattle.js b/scripts/event/ScargaBattle.js
index 13ebb023b9..4c414c5b94 100644
--- a/scripts/event/ScargaBattle.js
+++ b/scripts/event/ScargaBattle.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Scarga Battle
-*/
+ */
var isPq = true;
var minPlayers = 6, maxPlayers = 30;
@@ -39,7 +39,7 @@ var eventTime = 60; // 60 minutes for boss stg
const maxLobbies = 1;
function init() {
- setEventRequirements();
+ setEventRequirements();
}
function getMaxLobbies() {
@@ -47,40 +47,46 @@ function getMaxLobbies() {
}
function setEventRequirements() {
- var reqStr = "";
-
- reqStr += "\r\n Number of players: ";
- if(maxPlayers - minPlayers >= 1) reqStr += minPlayers + " ~ " + maxPlayers;
- else reqStr += minPlayers;
-
- reqStr += "\r\n Level range: ";
- if(maxLevel - minLevel >= 1) reqStr += minLevel + " ~ " + maxLevel;
- else reqStr += minLevel;
-
- reqStr += "\r\n Time limit: ";
- reqStr += eventTime + " minutes";
-
- em.setProperty("party", reqStr);
+ var reqStr = "";
+
+ reqStr += "\r\n Number of players: ";
+ if (maxPlayers - minPlayers >= 1) {
+ reqStr += minPlayers + " ~ " + maxPlayers;
+ } else {
+ reqStr += minPlayers;
+ }
+
+ reqStr += "\r\n Level range: ";
+ if (maxLevel - minLevel >= 1) {
+ reqStr += minLevel + " ~ " + maxLevel;
+ } else {
+ reqStr += minLevel;
+ }
+
+ reqStr += "\r\n Time limit: ";
+ reqStr += eventTime + " minutes";
+
+ em.setProperty("party", reqStr);
}
function setEventExclusives(eim) {
- var itemSet = [];
- eim.setExclusiveItems(itemSet);
+ var itemSet = [];
+ eim.setExclusiveItems(itemSet);
}
function setEventRewards(eim) {
- var itemSet, itemQty, evLevel, expStages, mesoStages;
+ var itemSet, itemQty, evLevel, expStages, mesoStages;
- evLevel = 1; //Rewards at clear PQ
- itemSet = [1102145, 1102084, 1102085, 1102086, 1102087, 1052165, 1052166, 1052167, 1402013, 1332030, 1032030, 1032070, 4003000, 4000030, 4006000, 4006001, 4005000, 4005001, 4005002, 4005003, 4005004, 2022016, 2022263, 2022264, 2022015, 2022306, 2022307, 2022306, 2022113];
- itemQty = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 50, 50, 120, 120, 4, 4, 4, 4, 2, 125, 125, 125, 30, 30, 30, 30, 30];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- expStages = []; //bonus exp given on CLEAR stage signal
- eim.setEventClearStageExp(expStages);
-
- mesoStages = []; //bonus meso given on CLEAR stage signal
- eim.setEventClearStageMeso(mesoStages);
+ evLevel = 1; //Rewards at clear PQ
+ itemSet = [1102145, 1102084, 1102085, 1102086, 1102087, 1052165, 1052166, 1052167, 1402013, 1332030, 1032030, 1032070, 4003000, 4000030, 4006000, 4006001, 4005000, 4005001, 4005002, 4005003, 4005004, 2022016, 2022263, 2022264, 2022015, 2022306, 2022307, 2022306, 2022113];
+ itemQty = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 50, 50, 120, 120, 4, 4, 4, 4, 2, 125, 125, 125, 30, 30, 30, 30, 30];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ expStages = []; //bonus exp given on CLEAR stage signal
+ eim.setEventClearStageExp(expStages);
+
+ mesoStages = []; //bonus meso given on CLEAR stage signal
+ eim.setEventClearStageMeso(mesoStages);
}
function afterSetup(eim) {}
@@ -92,11 +98,11 @@ function setup(channel) {
var level = 1;
eim.getInstanceMap(551030200).resetPQ(level);
-
+
eim.startEventTimer(eventTime * 60000);
setEventRewards(eim);
setEventExclusives(eim);
-
+
return eim;
}
@@ -112,12 +118,11 @@ function scheduledTimeout(eim) {
function changedMap(eim, player, mapid) {
if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isExpeditionTeamLackingNow(true, minPlayers, player)) {
+ if (eim.isExpeditionTeamLackingNow(true, minPlayers, player)) {
eim.unregisterPlayer(player);
eim.dropMessage(5, "[Expedition] Either the leader has quit the expedition or there is no longer the minimum number of members required to continue it.");
end(eim);
- }
- else {
+ } else {
eim.dropMessage(5, "[Expedition] " + player.getName() + " has left the instance.");
eim.unregisterPlayer(player);
}
@@ -133,8 +138,7 @@ function playerRevive(eim, player) {
eim.unregisterPlayer(player);
eim.dropMessage(5, "[Expedition] Either the leader has quit the expedition or there is no longer the minimum number of members required to continue it.");
end(eim);
- }
- else {
+ } else {
eim.dropMessage(5, "[Expedition] " + player.getName() + " has left the instance.");
eim.unregisterPlayer(player);
}
@@ -145,16 +149,15 @@ function playerDisconnected(eim, player) {
eim.unregisterPlayer(player);
eim.dropMessage(5, "[Expedition] Either the leader has quit the expedition or there is no longer the minimum number of members required to continue it.");
end(eim);
- }
- else {
+ } else {
eim.dropMessage(5, "[Expedition] " + player.getName() + " has left the instance.");
eim.unregisterPlayer(player);
}
}
-function leftParty (eim, player) {}
+function leftParty(eim, player) {}
-function disbandParty (eim) {}
+function disbandParty(eim) {}
function monsterValue(eim, mobId) {
return 1;
@@ -185,18 +188,18 @@ function clearPQ(eim) {
}
function isScarga(mob) {
- var mobid = mob.getId();
- return (mobid == 9420544) || (mobid == 9420549);
+ var mobid = mob.getId();
+ return (mobid == 9420544) || (mobid == 9420549);
}
function monsterKilled(mob, eim) {
- if(isScarga(mob)) {
+ if (isScarga(mob)) {
var killed = eim.getIntProperty("defeatedBoss");
- if(killed == 1) {
+ if (killed == 1) {
eim.showClearEffect();
eim.clearPQ();
}
-
+
eim.setIntProperty("defeatedBoss", killed + 1);
}
}
diff --git a/scripts/event/ShowaBattle.js b/scripts/event/ShowaBattle.js
index df316f8afc..f6da5842e1 100644
--- a/scripts/event/ShowaBattle.js
+++ b/scripts/event/ShowaBattle.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Showa Boss Battle
-*/
+ */
var isPq = true;
var minPlayers = 3, maxPlayers = 30;
@@ -39,7 +39,7 @@ var eventTime = 60; // 60 minutes for boss stg
const maxLobbies = 1;
function init() {
- setEventRequirements();
+ setEventRequirements();
}
function getMaxLobbies() {
@@ -47,40 +47,46 @@ function getMaxLobbies() {
}
function setEventRequirements() {
- var reqStr = "";
-
- reqStr += "\r\n Number of players: ";
- if(maxPlayers - minPlayers >= 1) reqStr += minPlayers + " ~ " + maxPlayers;
- else reqStr += minPlayers;
-
- reqStr += "\r\n Level range: ";
- if(maxLevel - minLevel >= 1) reqStr += minLevel + " ~ " + maxLevel;
- else reqStr += minLevel;
-
- reqStr += "\r\n Time limit: ";
- reqStr += eventTime + " minutes";
-
- em.setProperty("party", reqStr);
+ var reqStr = "";
+
+ reqStr += "\r\n Number of players: ";
+ if (maxPlayers - minPlayers >= 1) {
+ reqStr += minPlayers + " ~ " + maxPlayers;
+ } else {
+ reqStr += minPlayers;
+ }
+
+ reqStr += "\r\n Level range: ";
+ if (maxLevel - minLevel >= 1) {
+ reqStr += minLevel + " ~ " + maxLevel;
+ } else {
+ reqStr += minLevel;
+ }
+
+ reqStr += "\r\n Time limit: ";
+ reqStr += eventTime + " minutes";
+
+ em.setProperty("party", reqStr);
}
function setEventExclusives(eim) {
- var itemSet = [];
- eim.setExclusiveItems(itemSet);
+ var itemSet = [];
+ eim.setExclusiveItems(itemSet);
}
function setEventRewards(eim) {
- var itemSet, itemQty, evLevel, expStages, mesoStages;
+ var itemSet, itemQty, evLevel, expStages, mesoStages;
- evLevel = 1; //Rewards at clear PQ
- itemSet = [1102145, 1102084, 1102085, 1102086, 1102087, 1052165, 1052166, 1052167, 1402013, 1332030, 1032030, 1032070, 4003000, 4000030, 4006000, 4006001, 4005000, 4005001, 4005002, 4005003, 4005004, 2022016, 2022263, 2022264, 2022015, 2022306, 2022307, 2022306, 2022113];
- itemQty = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 40, 40, 100, 100, 2, 2, 2, 2, 1, 100, 100, 100, 40, 40, 40, 40, 40];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- expStages = []; //bonus exp given on CLEAR stage signal
- eim.setEventClearStageExp(expStages);
-
- mesoStages = []; //bonus meso given on CLEAR stage signal
- eim.setEventClearStageMeso(mesoStages);
+ evLevel = 1; //Rewards at clear PQ
+ itemSet = [1102145, 1102084, 1102085, 1102086, 1102087, 1052165, 1052166, 1052167, 1402013, 1332030, 1032030, 1032070, 4003000, 4000030, 4006000, 4006001, 4005000, 4005001, 4005002, 4005003, 4005004, 2022016, 2022263, 2022264, 2022015, 2022306, 2022307, 2022306, 2022113];
+ itemQty = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 40, 40, 100, 100, 2, 2, 2, 2, 1, 100, 100, 100, 40, 40, 40, 40, 40];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ expStages = []; //bonus exp given on CLEAR stage signal
+ eim.setEventClearStageExp(expStages);
+
+ mesoStages = []; //bonus meso given on CLEAR stage signal
+ eim.setEventClearStageMeso(mesoStages);
}
function afterSetup(eim) {}
@@ -92,12 +98,12 @@ function setup(channel) {
var level = 1;
eim.getInstanceMap(801040100).resetPQ(level);
-
+
respawnStages(eim);
eim.startEventTimer(eventTime * 60000);
setEventRewards(eim);
setEventExclusives(eim);
-
+
return eim;
}
@@ -119,12 +125,11 @@ function scheduledTimeout(eim) {
function changedMap(eim, player, mapid) {
if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isExpeditionTeamLackingNow(true, minPlayers, player)) {
+ if (eim.isExpeditionTeamLackingNow(true, minPlayers, player)) {
eim.unregisterPlayer(player);
eim.dropMessage(5, "[Expedition] Either the leader has quit the expedition or there is no longer the minimum number of members required to continue it.");
end(eim);
- }
- else {
+ } else {
eim.dropMessage(5, "[Expedition] " + player.getName() + " has left the instance.");
eim.unregisterPlayer(player);
}
@@ -142,8 +147,7 @@ function playerRevive(eim, player) {
eim.unregisterPlayer(player);
eim.dropMessage(5, "[Expedition] Either the leader has quit the expedition or there is no longer the minimum number of members required to continue it.");
end(eim);
- }
- else {
+ } else {
eim.dropMessage(5, "[Expedition] " + player.getName() + " has left the instance.");
eim.unregisterPlayer(player);
}
@@ -154,16 +158,15 @@ function playerDisconnected(eim, player) {
eim.unregisterPlayer(player);
eim.dropMessage(5, "[Expedition] Either the leader has quit the expedition or there is no longer the minimum number of members required to continue it.");
end(eim);
- }
- else {
+ } else {
eim.dropMessage(5, "[Expedition] " + player.getName() + " has left the instance.");
eim.unregisterPlayer(player);
}
}
-function leftParty (eim, player) {}
+function leftParty(eim, player) {}
-function disbandParty (eim) {}
+function disbandParty(eim) {}
function monsterValue(eim, mobId) {
return 1;
@@ -190,11 +193,11 @@ function giveRandomEventReward(eim, player) {
function clearPQ(eim) {
eim.getInstanceMap(801040100).killAllMonsters();
-
+
eim.stopEventTimer();
eim.setEventCleared();
-
- if(eim.getIntProperty("playerDied") == 0) {
+
+ if (eim.getIntProperty("playerDied") == 0) {
var mob = eim.getMonster(9400114);
eim.getMapInstance(801040101).spawnMonsterOnGroundBelow(mob, new java.awt.Point(500, -50));
eim.dropMessage(5, "Konpei: The Boss has been defeated with no casualties, well done! We found a suspicious machine inside, we're moving it out.");
@@ -202,11 +205,11 @@ function clearPQ(eim) {
}
function isTheBoss(mob) {
- return mob.getId() == 9400300;
+ return mob.getId() == 9400300;
}
function monsterKilled(mob, eim) {
- if(isTheBoss(mob)) {
+ if (isTheBoss(mob)) {
eim.showClearEffect();
eim.clearPQ();
}
diff --git a/scripts/event/Subway.js b/scripts/event/Subway.js
index 148d82da6e..fd250d946a 100644
--- a/scripts/event/Subway.js
+++ b/scripts/event/Subway.js
@@ -6,15 +6,15 @@ var Subway_to_NLC;
var NLC_docked;
//Time Setting is in millisecond
-var closeTime = 50 * 1000; //The time to close the gate
+var closeTime = 50 * 1000; //The time to close the gate
var beginTime = 1 * 60 * 1000; //The time to begin the ride
-var rideTime = 4 * 60 * 1000; //The time that require move to destination
+var rideTime = 4 * 60 * 1000; //The time that require move to destination
function init() {
closeTime = em.getTransportationTime(closeTime);
beginTime = em.getTransportationTime(beginTime);
- rideTime = em.getTransportationTime(rideTime);
-
+ rideTime = em.getTransportationTime(rideTime);
+
KC_Waiting = em.getChannelServer().getMapFactory().getMap(600010004);
NLC_Waiting = em.getChannelServer().getMapFactory().getMap(600010002);
Subway_to_KC = em.getChannelServer().getMapFactory().getMap(600010003);
@@ -32,7 +32,7 @@ function scheduleNew() {
}
function stopEntry() {
- em.setProperty("entry","false");
+ em.setProperty("entry", "false");
}
function takeoff() {
@@ -41,8 +41,8 @@ function takeoff() {
//sound src: https://www.soundjay.com/transportation/metro-door-close-01.mp3
KC_docked.broadcastMessage(PacketCreator.playSound("subway/whistle"));
NLC_docked.broadcastMessage(PacketCreator.playSound("subway/whistle"));
-
- em.setProperty("docked","false");
+
+ em.setProperty("docked", "false");
KC_Waiting.warpEveryone(Subway_to_NLC.getId());
NLC_Waiting.warpEveryone(Subway_to_KC.getId());
em.schedule("arrived", rideTime);
diff --git a/scripts/event/TD_Battle1.js b/scripts/event/TD_Battle1.js
index c73d9d0934..ef06ddf0b1 100644
--- a/scripts/event/TD_Battle1.js
+++ b/scripts/event/TD_Battle1.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Vs Bergamot
-*/
+ */
var isPq = true;
var minPlayers = 2, maxPlayers = 6;
@@ -41,80 +41,90 @@ var eventTime = 10; // 10 minutes
const maxLobbies = 1;
function init() {
- setEventRequirements();
+ setEventRequirements();
}
function getMaxLobbies() {
- return maxLobbies;
+ return maxLobbies;
}
function setEventRequirements() {
- var reqStr = "";
-
- reqStr += "\r\n Number of players: ";
- if(maxPlayers - minPlayers >= 1) reqStr += minPlayers + " ~ " + maxPlayers;
- else reqStr += minPlayers;
-
- reqStr += "\r\n Level range: ";
- if(maxLevel - minLevel >= 1) reqStr += minLevel + " ~ " + maxLevel;
- else reqStr += minLevel;
-
- reqStr += "\r\n Time limit: ";
- reqStr += eventTime + " minutes";
-
- em.setProperty("party", reqStr);
+ var reqStr = "";
+
+ reqStr += "\r\n Number of players: ";
+ if (maxPlayers - minPlayers >= 1) {
+ reqStr += minPlayers + " ~ " + maxPlayers;
+ } else {
+ reqStr += minPlayers;
+ }
+
+ reqStr += "\r\n Level range: ";
+ if (maxLevel - minLevel >= 1) {
+ reqStr += minLevel + " ~ " + maxLevel;
+ } else {
+ reqStr += minLevel;
+ }
+
+ reqStr += "\r\n Time limit: ";
+ reqStr += eventTime + " minutes";
+
+ em.setProperty("party", reqStr);
}
function setEventExclusives(eim) {
- var itemSet = [];
- eim.setExclusiveItems(itemSet);
+ var itemSet = [];
+ eim.setExclusiveItems(itemSet);
}
function setEventRewards(eim) {
- var itemSet, itemQty, evLevel, expStages;
+ var itemSet, itemQty, evLevel, expStages;
- evLevel = 1; //Rewards at clear PQ
- itemSet = [];
- itemQty = [];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- expStages = []; //bonus exp given on CLEAR stage signal
- eim.setEventClearStageExp(expStages);
+ evLevel = 1; //Rewards at clear PQ
+ itemSet = [];
+ itemQty = [];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ expStages = []; //bonus exp given on CLEAR stage signal
+ eim.setEventClearStageExp(expStages);
}
function getEligibleParty(party) { //selects, from the given party, the team that is allowed to attempt this event
- var eligible = [];
- var hasLeader = false;
-
- if(party.size() > 0) {
- var partyList = party.toArray();
+ var eligible = [];
+ var hasLeader = false;
- for(var i = 0; i < party.size(); i++) {
- var ch = partyList[i];
+ if (party.size() > 0) {
+ var partyList = party.toArray();
- if(ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
- if(ch.isLeader()) hasLeader = true;
- eligible.push(ch);
- }
+ for (var i = 0; i < party.size(); i++) {
+ var ch = partyList[i];
+
+ if (ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
+ if (ch.isLeader()) {
+ hasLeader = true;
}
+ eligible.push(ch);
+ }
}
-
- if(!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) eligible = [];
- return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
+ }
+
+ if (!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) {
+ eligible = [];
+ }
+ return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
}
function setup(level, lobbyid) {
- var eim = em.newInstance("TDBoss" + lobbyid);
- eim.setProperty("level", level);
- eim.setProperty("boss", "0");
-
- eim.getInstanceMap(240070203).resetPQ(level);
-
- respawnStages(eim);
- eim.startEventTimer(eventTime * 60000);
- setEventRewards(eim);
- setEventExclusives(eim);
- return eim;
+ var eim = em.newInstance("TDBoss" + lobbyid);
+ eim.setProperty("level", level);
+ eim.setProperty("boss", "0");
+
+ eim.getInstanceMap(240070203).resetPQ(level);
+
+ respawnStages(eim);
+ eim.startEventTimer(eventTime * 60000);
+ setEventRewards(eim);
+ setEventExclusives(eim);
+ return eim;
}
function afterSetup(eim) {}
@@ -122,111 +132,111 @@ function afterSetup(eim) {}
function respawnStages(eim) {}
function playerEntry(eim, player) {
- var map = eim.getMapInstance(entryMap);
- player.changeMap(map, map.getPortal(0));
+ var map = eim.getMapInstance(entryMap);
+ player.changeMap(map, map.getPortal(0));
}
function scheduledTimeout(eim) {
- end(eim);
+ end(eim);
}
function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
- eim.unregisterPlayer(player);
- player.changeMap(exitMap, 0);
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap, 0);
}
function playerLeft(eim, player) {
- if(!eim.isEventCleared()) {
- playerExit(eim, player);
- }
+ if (!eim.isEventCleared()) {
+ playerExit(eim, player);
+ }
}
function changedMap(eim, player, mapid) {
- if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (mapid < minMapId || mapid > maxMapId) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
}
+ }
}
function changedLeader(eim, leader) {
- var mapid = leader.getMapId();
- if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
- end(eim);
- }
+ var mapid = leader.getMapId();
+ if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
+ end(eim);
+ }
}
function playerDead(eim, player) {}
function playerRevive(eim, player) { // player presses ok on the death pop up.
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function playerDisconnected(eim, player) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function leftParty(eim, player) {
- if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
- end(eim);
- }
- else
- playerLeft(eim, player);
+ if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
+ end(eim);
+ } else {
+ playerLeft(eim, player);
+ }
}
function disbandParty(eim) {
- if (!eim.isEventCleared()) {
- end(eim);
- }
+ if (!eim.isEventCleared()) {
+ end(eim);
+ }
}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function end(eim) {
- var party = eim.getPlayers();
-
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ var party = eim.getPlayers();
+
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
}
function giveRandomEventReward(eim, player) {
- eim.giveEventReward(player);
+ eim.giveEventReward(player);
}
function clearPQ(eim) {
- eim.stopEventTimer();
- eim.setEventCleared();
+ eim.stopEventTimer();
+ eim.setEventCleared();
}
function isTDBoss(mob) {
- var mobid = mob.getId();
- return mobid == tdBossId;
+ var mobid = mob.getId();
+ return mobid == tdBossId;
}
function monsterKilled(mob, eim) {
- if(isTDBoss(mob)) {
- eim.showClearEffect();
- eim.clearPQ();
- }
+ if (isTDBoss(mob)) {
+ eim.showClearEffect();
+ eim.clearPQ();
+ }
}
function allMonstersDead(eim) {}
diff --git a/scripts/event/TD_Battle2.js b/scripts/event/TD_Battle2.js
index 165f274238..eeaeb70615 100644
--- a/scripts/event/TD_Battle2.js
+++ b/scripts/event/TD_Battle2.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Vs Dunas
-*/
+ */
var isPq = true;
var minPlayers = 2, maxPlayers = 6;
@@ -41,80 +41,90 @@ var eventTime = 10; // 10 minutes
const maxLobbies = 1;
function init() {
- setEventRequirements();
+ setEventRequirements();
}
function getMaxLobbies() {
- return maxLobbies;
+ return maxLobbies;
}
function setEventRequirements() {
- var reqStr = "";
-
- reqStr += "\r\n Number of players: ";
- if(maxPlayers - minPlayers >= 1) reqStr += minPlayers + " ~ " + maxPlayers;
- else reqStr += minPlayers;
-
- reqStr += "\r\n Level range: ";
- if(maxLevel - minLevel >= 1) reqStr += minLevel + " ~ " + maxLevel;
- else reqStr += minLevel;
-
- reqStr += "\r\n Time limit: ";
- reqStr += eventTime + " minutes";
-
- em.setProperty("party", reqStr);
+ var reqStr = "";
+
+ reqStr += "\r\n Number of players: ";
+ if (maxPlayers - minPlayers >= 1) {
+ reqStr += minPlayers + " ~ " + maxPlayers;
+ } else {
+ reqStr += minPlayers;
+ }
+
+ reqStr += "\r\n Level range: ";
+ if (maxLevel - minLevel >= 1) {
+ reqStr += minLevel + " ~ " + maxLevel;
+ } else {
+ reqStr += minLevel;
+ }
+
+ reqStr += "\r\n Time limit: ";
+ reqStr += eventTime + " minutes";
+
+ em.setProperty("party", reqStr);
}
function setEventExclusives(eim) {
- var itemSet = [];
- eim.setExclusiveItems(itemSet);
+ var itemSet = [];
+ eim.setExclusiveItems(itemSet);
}
function setEventRewards(eim) {
- var itemSet, itemQty, evLevel, expStages;
+ var itemSet, itemQty, evLevel, expStages;
- evLevel = 1; //Rewards at clear PQ
- itemSet = [];
- itemQty = [];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- expStages = []; //bonus exp given on CLEAR stage signal
- eim.setEventClearStageExp(expStages);
+ evLevel = 1; //Rewards at clear PQ
+ itemSet = [];
+ itemQty = [];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ expStages = []; //bonus exp given on CLEAR stage signal
+ eim.setEventClearStageExp(expStages);
}
function getEligibleParty(party) { //selects, from the given party, the team that is allowed to attempt this event
- var eligible = [];
- var hasLeader = false;
-
- if(party.size() > 0) {
- var partyList = party.toArray();
+ var eligible = [];
+ var hasLeader = false;
- for(var i = 0; i < party.size(); i++) {
- var ch = partyList[i];
+ if (party.size() > 0) {
+ var partyList = party.toArray();
- if(ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
- if(ch.isLeader()) hasLeader = true;
- eligible.push(ch);
- }
+ for (var i = 0; i < party.size(); i++) {
+ var ch = partyList[i];
+
+ if (ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
+ if (ch.isLeader()) {
+ hasLeader = true;
}
+ eligible.push(ch);
+ }
}
-
- if(!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) eligible = [];
- return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
+ }
+
+ if (!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) {
+ eligible = [];
+ }
+ return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
}
function setup(level, lobbyid) {
- var eim = em.newInstance("TDBoss" + lobbyid);
- eim.setProperty("level", level);
- eim.setProperty("boss", "0");
-
- eim.getInstanceMap(240070203).resetPQ(level);
-
- respawnStages(eim);
- eim.startEventTimer(eventTime * 60000);
- setEventRewards(eim);
- setEventExclusives(eim);
- return eim;
+ var eim = em.newInstance("TDBoss" + lobbyid);
+ eim.setProperty("level", level);
+ eim.setProperty("boss", "0");
+
+ eim.getInstanceMap(240070203).resetPQ(level);
+
+ respawnStages(eim);
+ eim.startEventTimer(eventTime * 60000);
+ setEventRewards(eim);
+ setEventExclusives(eim);
+ return eim;
}
function afterSetup(eim) {}
@@ -122,111 +132,111 @@ function afterSetup(eim) {}
function respawnStages(eim) {}
function playerEntry(eim, player) {
- var map = eim.getMapInstance(entryMap);
- player.changeMap(map, map.getPortal(0));
+ var map = eim.getMapInstance(entryMap);
+ player.changeMap(map, map.getPortal(0));
}
function scheduledTimeout(eim) {
- end(eim);
+ end(eim);
}
function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
- eim.unregisterPlayer(player);
- player.changeMap(exitMap, 0);
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap, 0);
}
function playerLeft(eim, player) {
- if(!eim.isEventCleared()) {
- playerExit(eim, player);
- }
+ if (!eim.isEventCleared()) {
+ playerExit(eim, player);
+ }
}
function changedMap(eim, player, mapid) {
- if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (mapid < minMapId || mapid > maxMapId) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
}
+ }
}
function changedLeader(eim, leader) {
- var mapid = leader.getMapId();
- if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
- end(eim);
- }
+ var mapid = leader.getMapId();
+ if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
+ end(eim);
+ }
}
function playerDead(eim, player) {}
function playerRevive(eim, player) { // player presses ok on the death pop up.
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function playerDisconnected(eim, player) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function leftParty(eim, player) {
- if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
- end(eim);
- }
- else
- playerLeft(eim, player);
+ if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
+ end(eim);
+ } else {
+ playerLeft(eim, player);
+ }
}
function disbandParty(eim) {
- if (!eim.isEventCleared()) {
- end(eim);
- }
+ if (!eim.isEventCleared()) {
+ end(eim);
+ }
}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function end(eim) {
- var party = eim.getPlayers();
-
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ var party = eim.getPlayers();
+
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
}
function giveRandomEventReward(eim, player) {
- eim.giveEventReward(player);
+ eim.giveEventReward(player);
}
function clearPQ(eim) {
- eim.stopEventTimer();
- eim.setEventCleared();
+ eim.stopEventTimer();
+ eim.setEventCleared();
}
function isTDBoss(mob) {
- var mobid = mob.getId();
- return mobid == tdBossId;
+ var mobid = mob.getId();
+ return mobid == tdBossId;
}
function monsterKilled(mob, eim) {
- if(isTDBoss(mob)) {
- eim.showClearEffect();
- eim.clearPQ();
- }
+ if (isTDBoss(mob)) {
+ eim.showClearEffect();
+ eim.clearPQ();
+ }
}
function allMonstersDead(eim) {}
diff --git a/scripts/event/TD_Battle3.js b/scripts/event/TD_Battle3.js
index 33dc52a562..85634cbccd 100644
--- a/scripts/event/TD_Battle3.js
+++ b/scripts/event/TD_Battle3.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Vs Aufheben
-*/
+ */
var isPq = true;
var minPlayers = 2, maxPlayers = 6;
@@ -41,80 +41,90 @@ var eventTime = 15; // 15 minutes
const maxLobbies = 1;
function init() {
- setEventRequirements();
+ setEventRequirements();
}
function getMaxLobbies() {
- return maxLobbies;
+ return maxLobbies;
}
function setEventRequirements() {
- var reqStr = "";
-
- reqStr += "\r\n Number of players: ";
- if(maxPlayers - minPlayers >= 1) reqStr += minPlayers + " ~ " + maxPlayers;
- else reqStr += minPlayers;
-
- reqStr += "\r\n Level range: ";
- if(maxLevel - minLevel >= 1) reqStr += minLevel + " ~ " + maxLevel;
- else reqStr += minLevel;
-
- reqStr += "\r\n Time limit: ";
- reqStr += eventTime + " minutes";
-
- em.setProperty("party", reqStr);
+ var reqStr = "";
+
+ reqStr += "\r\n Number of players: ";
+ if (maxPlayers - minPlayers >= 1) {
+ reqStr += minPlayers + " ~ " + maxPlayers;
+ } else {
+ reqStr += minPlayers;
+ }
+
+ reqStr += "\r\n Level range: ";
+ if (maxLevel - minLevel >= 1) {
+ reqStr += minLevel + " ~ " + maxLevel;
+ } else {
+ reqStr += minLevel;
+ }
+
+ reqStr += "\r\n Time limit: ";
+ reqStr += eventTime + " minutes";
+
+ em.setProperty("party", reqStr);
}
function setEventExclusives(eim) {
- var itemSet = [];
- eim.setExclusiveItems(itemSet);
+ var itemSet = [];
+ eim.setExclusiveItems(itemSet);
}
function setEventRewards(eim) {
- var itemSet, itemQty, evLevel, expStages;
+ var itemSet, itemQty, evLevel, expStages;
- evLevel = 1; //Rewards at clear PQ
- itemSet = [];
- itemQty = [];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- expStages = []; //bonus exp given on CLEAR stage signal
- eim.setEventClearStageExp(expStages);
+ evLevel = 1; //Rewards at clear PQ
+ itemSet = [];
+ itemQty = [];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ expStages = []; //bonus exp given on CLEAR stage signal
+ eim.setEventClearStageExp(expStages);
}
function getEligibleParty(party) { //selects, from the given party, the team that is allowed to attempt this event
- var eligible = [];
- var hasLeader = false;
-
- if(party.size() > 0) {
- var partyList = party.toArray();
+ var eligible = [];
+ var hasLeader = false;
- for(var i = 0; i < party.size(); i++) {
- var ch = partyList[i];
+ if (party.size() > 0) {
+ var partyList = party.toArray();
- if(ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
- if(ch.isLeader()) hasLeader = true;
- eligible.push(ch);
- }
+ for (var i = 0; i < party.size(); i++) {
+ var ch = partyList[i];
+
+ if (ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
+ if (ch.isLeader()) {
+ hasLeader = true;
}
+ eligible.push(ch);
+ }
}
-
- if(!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) eligible = [];
- return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
+ }
+
+ if (!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) {
+ eligible = [];
+ }
+ return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
}
function setup(level, lobbyid) {
- var eim = em.newInstance("TDBoss" + lobbyid);
- eim.setProperty("level", level);
- eim.setProperty("boss", "0");
-
- eim.getInstanceMap(240070203).resetPQ(level);
-
- respawnStages(eim);
- eim.startEventTimer(eventTime * 60000);
- setEventRewards(eim);
- setEventExclusives(eim);
- return eim;
+ var eim = em.newInstance("TDBoss" + lobbyid);
+ eim.setProperty("level", level);
+ eim.setProperty("boss", "0");
+
+ eim.getInstanceMap(240070203).resetPQ(level);
+
+ respawnStages(eim);
+ eim.startEventTimer(eventTime * 60000);
+ setEventRewards(eim);
+ setEventExclusives(eim);
+ return eim;
}
function afterSetup(eim) {}
@@ -122,111 +132,111 @@ function afterSetup(eim) {}
function respawnStages(eim) {}
function playerEntry(eim, player) {
- var map = eim.getMapInstance(entryMap);
- player.changeMap(map, map.getPortal(0));
+ var map = eim.getMapInstance(entryMap);
+ player.changeMap(map, map.getPortal(0));
}
function scheduledTimeout(eim) {
- end(eim);
+ end(eim);
}
function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
- eim.unregisterPlayer(player);
- player.changeMap(exitMap, 0);
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap, 0);
}
function playerLeft(eim, player) {
- if(!eim.isEventCleared()) {
- playerExit(eim, player);
- }
+ if (!eim.isEventCleared()) {
+ playerExit(eim, player);
+ }
}
function changedMap(eim, player, mapid) {
- if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (mapid < minMapId || mapid > maxMapId) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
}
+ }
}
function changedLeader(eim, leader) {
- var mapid = leader.getMapId();
- if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
- end(eim);
- }
+ var mapid = leader.getMapId();
+ if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
+ end(eim);
+ }
}
function playerDead(eim, player) {}
function playerRevive(eim, player) { // player presses ok on the death pop up.
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function playerDisconnected(eim, player) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function leftParty(eim, player) {
- if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
- end(eim);
- }
- else
- playerLeft(eim, player);
+ if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
+ end(eim);
+ } else {
+ playerLeft(eim, player);
+ }
}
function disbandParty(eim) {
- if (!eim.isEventCleared()) {
- end(eim);
- }
+ if (!eim.isEventCleared()) {
+ end(eim);
+ }
}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function end(eim) {
- var party = eim.getPlayers();
-
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ var party = eim.getPlayers();
+
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
}
function giveRandomEventReward(eim, player) {
- eim.giveEventReward(player);
+ eim.giveEventReward(player);
}
function clearPQ(eim) {
- eim.stopEventTimer();
- eim.setEventCleared();
+ eim.stopEventTimer();
+ eim.setEventCleared();
}
function isTDBoss(mob) {
- var mobid = mob.getId();
- return mobid == tdBossId;
+ var mobid = mob.getId();
+ return mobid == tdBossId;
}
function monsterKilled(mob, eim) {
- if(isTDBoss(mob)) {
- eim.showClearEffect();
- eim.clearPQ();
- }
+ if (isTDBoss(mob)) {
+ eim.showClearEffect();
+ eim.clearPQ();
+ }
}
function allMonstersDead(eim) {}
diff --git a/scripts/event/TD_Battle4.js b/scripts/event/TD_Battle4.js
index ead9fb4927..8c911be262 100644
--- a/scripts/event/TD_Battle4.js
+++ b/scripts/event/TD_Battle4.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Vs Oberon
-*/
+ */
var isPq = true;
var minPlayers = 2, maxPlayers = 6;
@@ -41,80 +41,90 @@ var eventTime = 15; // 15 minutes
const maxLobbies = 1;
function init() {
- setEventRequirements();
+ setEventRequirements();
}
function getMaxLobbies() {
- return maxLobbies;
+ return maxLobbies;
}
function setEventRequirements() {
- var reqStr = "";
-
- reqStr += "\r\n Number of players: ";
- if(maxPlayers - minPlayers >= 1) reqStr += minPlayers + " ~ " + maxPlayers;
- else reqStr += minPlayers;
-
- reqStr += "\r\n Level range: ";
- if(maxLevel - minLevel >= 1) reqStr += minLevel + " ~ " + maxLevel;
- else reqStr += minLevel;
-
- reqStr += "\r\n Time limit: ";
- reqStr += eventTime + " minutes";
-
- em.setProperty("party", reqStr);
+ var reqStr = "";
+
+ reqStr += "\r\n Number of players: ";
+ if (maxPlayers - minPlayers >= 1) {
+ reqStr += minPlayers + " ~ " + maxPlayers;
+ } else {
+ reqStr += minPlayers;
+ }
+
+ reqStr += "\r\n Level range: ";
+ if (maxLevel - minLevel >= 1) {
+ reqStr += minLevel + " ~ " + maxLevel;
+ } else {
+ reqStr += minLevel;
+ }
+
+ reqStr += "\r\n Time limit: ";
+ reqStr += eventTime + " minutes";
+
+ em.setProperty("party", reqStr);
}
function setEventExclusives(eim) {
- var itemSet = [];
- eim.setExclusiveItems(itemSet);
+ var itemSet = [];
+ eim.setExclusiveItems(itemSet);
}
function setEventRewards(eim) {
- var itemSet, itemQty, evLevel, expStages;
+ var itemSet, itemQty, evLevel, expStages;
- evLevel = 1; //Rewards at clear PQ
- itemSet = [];
- itemQty = [];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- expStages = []; //bonus exp given on CLEAR stage signal
- eim.setEventClearStageExp(expStages);
+ evLevel = 1; //Rewards at clear PQ
+ itemSet = [];
+ itemQty = [];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ expStages = []; //bonus exp given on CLEAR stage signal
+ eim.setEventClearStageExp(expStages);
}
function getEligibleParty(party) { //selects, from the given party, the team that is allowed to attempt this event
- var eligible = [];
- var hasLeader = false;
-
- if(party.size() > 0) {
- var partyList = party.toArray();
+ var eligible = [];
+ var hasLeader = false;
- for(var i = 0; i < party.size(); i++) {
- var ch = partyList[i];
+ if (party.size() > 0) {
+ var partyList = party.toArray();
- if(ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
- if(ch.isLeader()) hasLeader = true;
- eligible.push(ch);
- }
+ for (var i = 0; i < party.size(); i++) {
+ var ch = partyList[i];
+
+ if (ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
+ if (ch.isLeader()) {
+ hasLeader = true;
}
+ eligible.push(ch);
+ }
}
-
- if(!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) eligible = [];
- return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
+ }
+
+ if (!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) {
+ eligible = [];
+ }
+ return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
}
function setup(level, lobbyid) {
- var eim = em.newInstance("TDBoss" + lobbyid);
- eim.setProperty("level", level);
- eim.setProperty("boss", "0");
-
- eim.getInstanceMap(240070203).resetPQ(level);
-
- respawnStages(eim);
- eim.startEventTimer(eventTime * 60000);
- setEventRewards(eim);
- setEventExclusives(eim);
- return eim;
+ var eim = em.newInstance("TDBoss" + lobbyid);
+ eim.setProperty("level", level);
+ eim.setProperty("boss", "0");
+
+ eim.getInstanceMap(240070203).resetPQ(level);
+
+ respawnStages(eim);
+ eim.startEventTimer(eventTime * 60000);
+ setEventRewards(eim);
+ setEventExclusives(eim);
+ return eim;
}
function afterSetup(eim) {}
@@ -122,111 +132,111 @@ function afterSetup(eim) {}
function respawnStages(eim) {}
function playerEntry(eim, player) {
- var map = eim.getMapInstance(entryMap);
- player.changeMap(map, map.getPortal(0));
+ var map = eim.getMapInstance(entryMap);
+ player.changeMap(map, map.getPortal(0));
}
function scheduledTimeout(eim) {
- end(eim);
+ end(eim);
}
function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
- eim.unregisterPlayer(player);
- player.changeMap(exitMap, 0);
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap, 0);
}
function playerLeft(eim, player) {
- if(!eim.isEventCleared()) {
- playerExit(eim, player);
- }
+ if (!eim.isEventCleared()) {
+ playerExit(eim, player);
+ }
}
function changedMap(eim, player, mapid) {
- if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (mapid < minMapId || mapid > maxMapId) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
}
+ }
}
function changedLeader(eim, leader) {
- var mapid = leader.getMapId();
- if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
- end(eim);
- }
+ var mapid = leader.getMapId();
+ if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
+ end(eim);
+ }
}
function playerDead(eim, player) {}
function playerRevive(eim, player) { // player presses ok on the death pop up.
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function playerDisconnected(eim, player) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function leftParty(eim, player) {
- if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
- end(eim);
- }
- else
- playerLeft(eim, player);
+ if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
+ end(eim);
+ } else {
+ playerLeft(eim, player);
+ }
}
function disbandParty(eim) {
- if (!eim.isEventCleared()) {
- end(eim);
- }
+ if (!eim.isEventCleared()) {
+ end(eim);
+ }
}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function end(eim) {
- var party = eim.getPlayers();
-
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ var party = eim.getPlayers();
+
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
}
function giveRandomEventReward(eim, player) {
- eim.giveEventReward(player);
+ eim.giveEventReward(player);
}
function clearPQ(eim) {
- eim.stopEventTimer();
- eim.setEventCleared();
+ eim.stopEventTimer();
+ eim.setEventCleared();
}
function isTDBoss(mob) {
- var mobid = mob.getId();
- return mobid == tdBossId;
+ var mobid = mob.getId();
+ return mobid == tdBossId;
}
function monsterKilled(mob, eim) {
- if(isTDBoss(mob)) {
- eim.showClearEffect();
- eim.clearPQ();
- }
+ if (isTDBoss(mob)) {
+ eim.showClearEffect();
+ eim.clearPQ();
+ }
}
function allMonstersDead(eim) {}
diff --git a/scripts/event/TD_Battle5.js b/scripts/event/TD_Battle5.js
index 41c97bfec0..f170a8746c 100644
--- a/scripts/event/TD_Battle5.js
+++ b/scripts/event/TD_Battle5.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Vs Nibelung
-*/
+ */
var isPq = true;
var minPlayers = 2, maxPlayers = 6;
@@ -41,80 +41,90 @@ var eventTime = 20; // 20 minutes
const maxLobbies = 1;
function init() {
- setEventRequirements();
+ setEventRequirements();
}
function getMaxLobbies() {
- return maxLobbies;
+ return maxLobbies;
}
function setEventRequirements() {
- var reqStr = "";
-
- reqStr += "\r\n Number of players: ";
- if(maxPlayers - minPlayers >= 1) reqStr += minPlayers + " ~ " + maxPlayers;
- else reqStr += minPlayers;
-
- reqStr += "\r\n Level range: ";
- if(maxLevel - minLevel >= 1) reqStr += minLevel + " ~ " + maxLevel;
- else reqStr += minLevel;
-
- reqStr += "\r\n Time limit: ";
- reqStr += eventTime + " minutes";
-
- em.setProperty("party", reqStr);
+ var reqStr = "";
+
+ reqStr += "\r\n Number of players: ";
+ if (maxPlayers - minPlayers >= 1) {
+ reqStr += minPlayers + " ~ " + maxPlayers;
+ } else {
+ reqStr += minPlayers;
+ }
+
+ reqStr += "\r\n Level range: ";
+ if (maxLevel - minLevel >= 1) {
+ reqStr += minLevel + " ~ " + maxLevel;
+ } else {
+ reqStr += minLevel;
+ }
+
+ reqStr += "\r\n Time limit: ";
+ reqStr += eventTime + " minutes";
+
+ em.setProperty("party", reqStr);
}
function setEventExclusives(eim) {
- var itemSet = [];
- eim.setExclusiveItems(itemSet);
+ var itemSet = [];
+ eim.setExclusiveItems(itemSet);
}
function setEventRewards(eim) {
- var itemSet, itemQty, evLevel, expStages;
+ var itemSet, itemQty, evLevel, expStages;
- evLevel = 1; //Rewards at clear PQ
- itemSet = [];
- itemQty = [];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- expStages = []; //bonus exp given on CLEAR stage signal
- eim.setEventClearStageExp(expStages);
+ evLevel = 1; //Rewards at clear PQ
+ itemSet = [];
+ itemQty = [];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ expStages = []; //bonus exp given on CLEAR stage signal
+ eim.setEventClearStageExp(expStages);
}
function getEligibleParty(party) { //selects, from the given party, the team that is allowed to attempt this event
- var eligible = [];
- var hasLeader = false;
-
- if(party.size() > 0) {
- var partyList = party.toArray();
+ var eligible = [];
+ var hasLeader = false;
- for(var i = 0; i < party.size(); i++) {
- var ch = partyList[i];
+ if (party.size() > 0) {
+ var partyList = party.toArray();
- if(ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
- if(ch.isLeader()) hasLeader = true;
- eligible.push(ch);
- }
+ for (var i = 0; i < party.size(); i++) {
+ var ch = partyList[i];
+
+ if (ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
+ if (ch.isLeader()) {
+ hasLeader = true;
}
+ eligible.push(ch);
+ }
}
-
- if(!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) eligible = [];
- return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
+ }
+
+ if (!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) {
+ eligible = [];
+ }
+ return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
}
function setup(level, lobbyid) {
- var eim = em.newInstance("TDBoss" + lobbyid);
- eim.setProperty("level", level);
- eim.setProperty("boss", "0");
-
- eim.getInstanceMap(240070203).resetPQ(level);
-
- respawnStages(eim);
- eim.startEventTimer(eventTime * 60000);
- setEventRewards(eim);
- setEventExclusives(eim);
- return eim;
+ var eim = em.newInstance("TDBoss" + lobbyid);
+ eim.setProperty("level", level);
+ eim.setProperty("boss", "0");
+
+ eim.getInstanceMap(240070203).resetPQ(level);
+
+ respawnStages(eim);
+ eim.startEventTimer(eventTime * 60000);
+ setEventRewards(eim);
+ setEventExclusives(eim);
+ return eim;
}
function afterSetup(eim) {}
@@ -122,111 +132,111 @@ function afterSetup(eim) {}
function respawnStages(eim) {}
function playerEntry(eim, player) {
- var map = eim.getMapInstance(entryMap);
- player.changeMap(map, map.getPortal(0));
+ var map = eim.getMapInstance(entryMap);
+ player.changeMap(map, map.getPortal(0));
}
function scheduledTimeout(eim) {
- end(eim);
+ end(eim);
}
function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
- eim.unregisterPlayer(player);
- player.changeMap(exitMap, 0);
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap, 0);
}
function playerLeft(eim, player) {
- if(!eim.isEventCleared()) {
- playerExit(eim, player);
- }
+ if (!eim.isEventCleared()) {
+ playerExit(eim, player);
+ }
}
function changedMap(eim, player, mapid) {
- if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (mapid < minMapId || mapid > maxMapId) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
}
+ }
}
function changedLeader(eim, leader) {
- var mapid = leader.getMapId();
- if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
- end(eim);
- }
+ var mapid = leader.getMapId();
+ if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
+ end(eim);
+ }
}
function playerDead(eim, player) {}
function playerRevive(eim, player) { // player presses ok on the death pop up.
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function playerDisconnected(eim, player) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function leftParty(eim, player) {
- if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
- end(eim);
- }
- else
- playerLeft(eim, player);
+ if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
+ end(eim);
+ } else {
+ playerLeft(eim, player);
+ }
}
function disbandParty(eim) {
- if (!eim.isEventCleared()) {
- end(eim);
- }
+ if (!eim.isEventCleared()) {
+ end(eim);
+ }
}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function end(eim) {
- var party = eim.getPlayers();
-
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ var party = eim.getPlayers();
+
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
}
function giveRandomEventReward(eim, player) {
- eim.giveEventReward(player);
+ eim.giveEventReward(player);
}
function clearPQ(eim) {
- eim.stopEventTimer();
- eim.setEventCleared();
+ eim.stopEventTimer();
+ eim.setEventCleared();
}
function isTDBoss(mob) {
- var mobid = mob.getId();
- return mobid == tdBossId;
+ var mobid = mob.getId();
+ return mobid == tdBossId;
}
function monsterKilled(mob, eim) {
- if(isTDBoss(mob)) {
- eim.showClearEffect();
- eim.clearPQ();
- }
+ if (isTDBoss(mob)) {
+ eim.showClearEffect();
+ eim.clearPQ();
+ }
}
function allMonstersDead(eim) {}
diff --git a/scripts/event/Trains.js b/scripts/event/Trains.js
index ae27b326fb..6b26257a23 100644
--- a/scripts/event/Trains.js
+++ b/scripts/event/Trains.js
@@ -10,13 +10,13 @@ var Ludibrium_Station;
//Time Setting is in millisecond
var closeTime = 4 * 60 * 1000; //The time to close the gate
var beginTime = 5 * 60 * 1000; //The time to begin the ride
-var rideTime = 5 * 60 * 1000; //The time that require move to destination
+var rideTime = 5 * 60 * 1000; //The time that require move to destination
function init() {
closeTime = em.getTransportationTime(closeTime);
beginTime = em.getTransportationTime(beginTime);
- rideTime = em.getTransportationTime(rideTime);
-
+ rideTime = em.getTransportationTime(rideTime);
+
Orbis_btf = em.getChannelServer().getMapFactory().getMap(200000122);
Ludibrium_btf = em.getChannelServer().getMapFactory().getMap(220000111);
Train_to_Orbis = em.getChannelServer().getMapFactory().getMap(200090110);
@@ -25,7 +25,7 @@ function init() {
Ludibrium_docked = em.getChannelServer().getMapFactory().getMap(220000110);
Orbis_Station = em.getChannelServer().getMapFactory().getMap(200000100);
Ludibrium_Station = em.getChannelServer().getMapFactory().getMap(220000100);
-
+
scheduleNew();
}
@@ -33,14 +33,14 @@ function scheduleNew() {
em.setProperty("docked", "true");
Orbis_docked.setDocked(true);
Ludibrium_docked.setDocked(true);
-
+
em.setProperty("entry", "true");
em.schedule("stopEntry", closeTime); //The time to close the gate
em.schedule("takeoff", beginTime); //The time to begin the ride
}
function stopEntry() {
- em.setProperty("entry","false");
+ em.setProperty("entry", "false");
}
function takeoff() {
@@ -48,11 +48,11 @@ function takeoff() {
Ludibrium_btf.warpEveryone(Train_to_Orbis.getId());
Orbis_docked.broadcastShip(false);
Ludibrium_docked.broadcastShip(false);
-
- em.setProperty("docked","false");
+
+ em.setProperty("docked", "false");
Orbis_docked.setDocked(false);
Ludibrium_docked.setDocked(false);
-
+
em.schedule("arrived", rideTime); //The time that require move to destination
}
diff --git a/scripts/event/TreasurePQ.js b/scripts/event/TreasurePQ.js
index 1f2560ef85..25802aea56 100644
--- a/scripts/event/TreasurePQ.js
+++ b/scripts/event/TreasurePQ.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Treasure PQ
-*/
+ */
var isPq = true;
var minPlayers = 4, maxPlayers = 6;
@@ -40,204 +40,214 @@ var bonusTime = 10; // 10 minutes
const maxLobbies = 1;
function init() {
- setEventRequirements();
+ setEventRequirements();
}
function getMaxLobbies() {
- return maxLobbies;
+ return maxLobbies;
}
function setEventRequirements() {
- var reqStr = "";
-
- reqStr += "\r\n Number of players: ";
- if(maxPlayers - minPlayers >= 1) reqStr += minPlayers + " ~ " + maxPlayers;
- else reqStr += minPlayers;
-
- reqStr += "\r\n Level range: ";
- if(maxLevel - minLevel >= 1) reqStr += minLevel + " ~ " + maxLevel;
- else reqStr += minLevel;
-
- reqStr += "\r\n Time limit: ";
- reqStr += eventTime + " minutes";
-
- em.setProperty("party", reqStr);
+ var reqStr = "";
+
+ reqStr += "\r\n Number of players: ";
+ if (maxPlayers - minPlayers >= 1) {
+ reqStr += minPlayers + " ~ " + maxPlayers;
+ } else {
+ reqStr += minPlayers;
+ }
+
+ reqStr += "\r\n Level range: ";
+ if (maxLevel - minLevel >= 1) {
+ reqStr += minLevel + " ~ " + maxLevel;
+ } else {
+ reqStr += minLevel;
+ }
+
+ reqStr += "\r\n Time limit: ";
+ reqStr += eventTime + " minutes";
+
+ em.setProperty("party", reqStr);
}
function setEventExclusives(eim) {
- var itemSet = [4032118];
- eim.setExclusiveItems(itemSet);
+ var itemSet = [4032118];
+ eim.setExclusiveItems(itemSet);
}
function setEventRewards(eim) {
- var itemSet, itemQty, evLevel, expStages;
+ var itemSet, itemQty, evLevel, expStages;
- evLevel = 1; //Rewards at clear PQ
- itemSet = [];
- itemQty = [];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- expStages = [60000, 100000]; //bonus exp given on CLEAR stage signal
- eim.setEventClearStageExp(expStages);
+ evLevel = 1; //Rewards at clear PQ
+ itemSet = [];
+ itemQty = [];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ expStages = [60000, 100000]; //bonus exp given on CLEAR stage signal
+ eim.setEventClearStageExp(expStages);
}
function getEligibleParty(party) { //selects, from the given party, the team that is allowed to attempt this event
- var eligible = [];
- var hasLeader = false;
-
- if(party.size() > 0) {
- var partyList = party.toArray();
+ var eligible = [];
+ var hasLeader = false;
- for(var i = 0; i < party.size(); i++) {
- var ch = partyList[i];
+ if (party.size() > 0) {
+ var partyList = party.toArray();
- if(ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
- if(ch.isLeader()) hasLeader = true;
- eligible.push(ch);
- }
+ for (var i = 0; i < party.size(); i++) {
+ var ch = partyList[i];
+
+ if (ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
+ if (ch.isLeader()) {
+ hasLeader = true;
}
+ eligible.push(ch);
+ }
}
-
- if(!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) eligible = [];
- return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
+ }
+
+ if (!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) {
+ eligible = [];
+ }
+ return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
}
function setup(level, lobbyid) {
- var eim = em.newInstance("Treasure" + lobbyid);
- eim.setProperty("level", level);
-
- eim.setProperty("statusStg1", "0");
-
- eim.getInstanceMap(674030000).shuffleReactors();
-
- respawnStages(eim);
- eim.startEventTimer(eventTime * 60000);
- setEventRewards(eim);
- setEventExclusives(eim);
- return eim;
+ var eim = em.newInstance("Treasure" + lobbyid);
+ eim.setProperty("level", level);
+
+ eim.setProperty("statusStg1", "0");
+
+ eim.getInstanceMap(674030000).shuffleReactors();
+
+ respawnStages(eim);
+ eim.startEventTimer(eventTime * 60000);
+ setEventRewards(eim);
+ setEventExclusives(eim);
+ return eim;
}
function afterSetup(eim) {}
-function respawnStages(eim) {
- eim.getMapInstance(674030000).instanceMapRespawn();
- eim.schedule("respawnStages", 15 * 1000);
+function respawnStages(eim) {
+ eim.getMapInstance(674030000).instanceMapRespawn();
+ eim.schedule("respawnStages", 15 * 1000);
}
function playerEntry(eim, player) {
- var map = eim.getMapInstance(entryMap);
- player.changeMap(map, map.getPortal(0));
+ var map = eim.getMapInstance(entryMap);
+ player.changeMap(map, map.getPortal(0));
}
function scheduledTimeout(eim) {
- end(eim);
+ end(eim);
}
function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
- eim.unregisterPlayer(player);
- player.changeMap(exitMap, 0);
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap, 0);
}
function playerLeft(eim, player) {
- if(!eim.isEventCleared()) {
- playerExit(eim, player);
- }
+ if (!eim.isEventCleared()) {
+ playerExit(eim, player);
+ }
}
function changedMap(eim, player, mapid) {
- if (mapid < minMapId || mapid > maxMapId || mapid == 674030100) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (mapid < minMapId || mapid > maxMapId || mapid == 674030100) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
}
+ }
}
function changedLeader(eim, leader) {
- var mapid = leader.getMapId();
- if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId || mapid == 674030100)) {
- end(eim);
- }
+ var mapid = leader.getMapId();
+ if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId || mapid == 674030100)) {
+ end(eim);
+ }
}
function playerDead(eim, player) {}
function playerRevive(eim, player) { // player presses ok on the death pop up.
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function playerDisconnected(eim, player) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function leftParty(eim, player) {
- if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
- end(eim);
- }
- else
- playerLeft(eim, player);
+ if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
+ end(eim);
+ } else {
+ playerLeft(eim, player);
+ }
}
function disbandParty(eim) {
- if (!eim.isEventCleared()) {
- end(eim);
- }
+ if (!eim.isEventCleared()) {
+ end(eim);
+ }
}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function end(eim) {
- var party = eim.getPlayers();
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ var party = eim.getPlayers();
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
}
function giveRandomEventReward(eim, player) {
- eim.giveEventReward(player);
+ eim.giveEventReward(player);
}
function warpBonus(eim) {
- eim.startEventTimer(bonusTime * 60000);
- eim.warpEventTeam(674030300);
+ eim.startEventTimer(bonusTime * 60000);
+ eim.warpEventTeam(674030300);
}
function clearPQ(eim) {
- eim.stopEventTimer();
- eim.setEventCleared();
-
- eim.schedule("warpBonus", 10 * 1000);
+ eim.stopEventTimer();
+ eim.setEventCleared();
+
+ eim.schedule("warpBonus", 10 * 1000);
}
function isMV(mob) {
- var mobid = mob.getId();
- return (mobid == 9400589);
+ var mobid = mob.getId();
+ return (mobid == 9400589);
}
function monsterKilled(mob, eim) {
- if(isMV(mob)) {
- eim.showClearEffect();
- eim.giveEventPlayersStageReward(2);
-
- eim.clearPQ();
- }
+ if (isMV(mob)) {
+ eim.showClearEffect();
+ eim.giveEventPlayersStageReward(2);
+
+ eim.clearPQ();
+ }
}
function allMonstersDead(eim) {}
diff --git a/scripts/event/WeddingCathedral.js b/scripts/event/WeddingCathedral.js
index 9a91bb6384..e375a985e9 100644
--- a/scripts/event/WeddingCathedral.js
+++ b/scripts/event/WeddingCathedral.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Cathedral Wedding
-*/
+ */
var entryMap = 680000200;
var exitMap = 680000500;
@@ -49,171 +49,173 @@ const maxLobbies = 1;
function init() {}
function getMaxLobbies() {
- return maxLobbies;
+ return maxLobbies;
}
function setEventExclusives(eim) {
- var itemSet = [4031217, 4000313]; // golden key, golden maple leaf
- eim.setExclusiveItems(itemSet);
+ var itemSet = [4031217, 4000313]; // golden key, golden maple leaf
+ eim.setExclusiveItems(itemSet);
}
function setEventRewards(eim) {
- var itemSet, itemQty, evLevel, expStages;
+ var itemSet, itemQty, evLevel, expStages;
- evLevel = 1; //Rewards at clear PQ
- itemSet = [];
- itemQty = [];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- expStages = []; //bonus exp given on CLEAR stage signal
- eim.setEventClearStageExp(expStages);
+ evLevel = 1; //Rewards at clear PQ
+ itemSet = [];
+ itemQty = [];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ expStages = []; //bonus exp given on CLEAR stage signal
+ eim.setEventClearStageExp(expStages);
}
function spawnCakeBoss(eim) {
- var mapObj = eim.getMapInstance(680000400);
+ var mapObj = eim.getMapInstance(680000400);
- const LifeFactory = Java.type('server.life.LifeFactory');
- const Point = Java.type('java.awt.Point');
- var mobObj = LifeFactory.getMonster(9400606);
- mapObj.spawnMonsterOnGroundBelow(mobObj, new Point(777, -177));
+ const LifeFactory = Java.type('server.life.LifeFactory');
+ const Point = Java.type('java.awt.Point');
+ var mobObj = LifeFactory.getMonster(9400606);
+ mapObj.spawnMonsterOnGroundBelow(mobObj, new Point(777, -177));
}
function setup(level, lobbyid) {
- var eim = em.newMarriage("Wedding" + lobbyid);
- eim.setProperty("weddingId", "0");
- eim.setProperty("weddingStage", "0"); // 0: gathering time, 1: wedding time, 2: ready to fulfill the wedding, 3: just married
- eim.setProperty("guestBlessings", "0");
- eim.setProperty("isPremium", "1");
- eim.setProperty("canJoin", "1");
- eim.setProperty("groomId", "0");
- eim.setProperty("brideId", "0");
- eim.setProperty("confirmedVows", "-1");
- eim.setProperty("groomWishlist", "");
- eim.setProperty("brideWishlist", "");
- eim.initializeGiftItems();
-
- eim.getInstanceMap(680000400).resetPQ(level);
- if(eventBoss) spawnCakeBoss(eim);
-
- respawnStages(eim);
- eim.startEventTimer(eventTime * 60000);
- setEventRewards(eim);
- setEventExclusives(eim);
- return eim;
+ var eim = em.newMarriage("Wedding" + lobbyid);
+ eim.setProperty("weddingId", "0");
+ eim.setProperty("weddingStage", "0"); // 0: gathering time, 1: wedding time, 2: ready to fulfill the wedding, 3: just married
+ eim.setProperty("guestBlessings", "0");
+ eim.setProperty("isPremium", "1");
+ eim.setProperty("canJoin", "1");
+ eim.setProperty("groomId", "0");
+ eim.setProperty("brideId", "0");
+ eim.setProperty("confirmedVows", "-1");
+ eim.setProperty("groomWishlist", "");
+ eim.setProperty("brideWishlist", "");
+ eim.initializeGiftItems();
+
+ eim.getInstanceMap(680000400).resetPQ(level);
+ if (eventBoss) {
+ spawnCakeBoss(eim);
+ }
+
+ respawnStages(eim);
+ eim.startEventTimer(eventTime * 60000);
+ setEventRewards(eim);
+ setEventExclusives(eim);
+ return eim;
}
function afterSetup(eim) {}
-function respawnStages(eim) {
- eim.getMapInstance(680000400).instanceMapRespawn();
- eim.schedule("respawnStages", 15 * 1000);
+function respawnStages(eim) {
+ eim.getMapInstance(680000400).instanceMapRespawn();
+ eim.schedule("respawnStages", 15 * 1000);
}
function playerEntry(eim, player) {
- eim.setProperty("giftedItemG" + player.getId(), "0");
- eim.setProperty("giftedItemB" + player.getId(), "0");
- player.getAbstractPlayerInteraction().gainItem(4000313, 1);
-
- var map = eim.getMapInstance(entryMap);
- player.changeMap(map, map.getPortal(0));
+ eim.setProperty("giftedItemG" + player.getId(), "0");
+ eim.setProperty("giftedItemB" + player.getId(), "0");
+ player.getAbstractPlayerInteraction().gainItem(4000313, 1);
+
+ var map = eim.getMapInstance(entryMap);
+ player.changeMap(map, map.getPortal(0));
}
function stopBlessings(eim) {
- var mapobj = eim.getMapInstance(entryMap + 10);
- mapobj.dropMessage(6, "Wedding Assistant: Alright people, our couple are preparing their vows to each other right now.");
-
- eim.setIntProperty("weddingStage", 2);
+ var mapobj = eim.getMapInstance(entryMap + 10);
+ mapobj.dropMessage(6, "Wedding Assistant: Alright people, our couple are preparing their vows to each other right now.");
+
+ eim.setIntProperty("weddingStage", 2);
}
function sendWeddingAction(eim, type) {
- var chr = eim.getLeader();
- const Wedding = Java.type('tools.packets.Wedding');
- if(chr.getGender() == 0) {
- chr.getMap().broadcastMessage(Wedding.OnWeddingProgress(type == 2, eim.getIntProperty("groomId"), eim.getIntProperty("brideId"), type + 1));
- } else {
- chr.getMap().broadcastMessage(Wedding.OnWeddingProgress(type == 2, eim.getIntProperty("brideId"), eim.getIntProperty("groomId"), type + 1));
- }
+ var chr = eim.getLeader();
+ const Wedding = Java.type('tools.packets.Wedding');
+ if (chr.getGender() == 0) {
+ chr.getMap().broadcastMessage(Wedding.OnWeddingProgress(type == 2, eim.getIntProperty("groomId"), eim.getIntProperty("brideId"), type + 1));
+ } else {
+ chr.getMap().broadcastMessage(Wedding.OnWeddingProgress(type == 2, eim.getIntProperty("brideId"), eim.getIntProperty("groomId"), type + 1));
+ }
}
function hidePriestMsg(eim) {
- sendWeddingAction(eim, 2);
+ sendWeddingAction(eim, 2);
}
function showStartMsg(eim) {
- const Wedding = Java.type('tools.packets.Wedding');
- eim.getMapInstance(entryMap + 10).broadcastMessage(Wedding.OnWeddingProgress(false, 0, 0, 0));
- eim.schedule("hidePriestMsg", forceHideMsgTime * 1000);
+ const Wedding = Java.type('tools.packets.Wedding');
+ eim.getMapInstance(entryMap + 10).broadcastMessage(Wedding.OnWeddingProgress(false, 0, 0, 0));
+ eim.schedule("hidePriestMsg", forceHideMsgTime * 1000);
}
function showBlessMsg(eim) {
- const Wedding = Java.type('tools.packets.Wedding');
- eim.getMapInstance(entryMap + 10).broadcastMessage(Wedding.OnWeddingProgress(false, 0, 0, 1));
- eim.setIntProperty("guestBlessings", 1);
- eim.schedule("hidePriestMsg", forceHideMsgTime * 1000);
+ const Wedding = Java.type('tools.packets.Wedding');
+ eim.getMapInstance(entryMap + 10).broadcastMessage(Wedding.OnWeddingProgress(false, 0, 0, 1));
+ eim.setIntProperty("guestBlessings", 1);
+ eim.schedule("hidePriestMsg", forceHideMsgTime * 1000);
}
function showMarriedMsg(eim) {
- sendWeddingAction(eim, 3);
- eim.schedule("hidePriestMsg", 10 * 1000);
-
- eim.restartEventTimer(partyTime * 60000);
+ sendWeddingAction(eim, 3);
+ eim.schedule("hidePriestMsg", 10 * 1000);
+
+ eim.restartEventTimer(partyTime * 60000);
}
function scheduledTimeout(eim) {
- if(eim.getIntProperty("canJoin") == 1) {
- em.getChannelServer().closeOngoingWedding(isCathedral);
- eim.setIntProperty("canJoin", 0);
-
- var mapobj = eim.getMapInstance(entryMap);
- var chr = mapobj.getCharacterById(eim.getIntProperty("groomId"));
- if(chr != null) {
- chr.changeMap(entryMap + 10, "we00");
- }
-
- chr = mapobj.getCharacterById(eim.getIntProperty("brideId"));
- if(chr != null) {
- chr.changeMap(entryMap + 10, "we00");
- }
-
- mapobj.dropMessage(6, "Wedding Assistant: The couple are heading to the altar, hurry hurry talk to me to arrange your seat.");
+ if (eim.getIntProperty("canJoin") == 1) {
+ em.getChannelServer().closeOngoingWedding(isCathedral);
+ eim.setIntProperty("canJoin", 0);
- eim.setIntProperty("weddingStage", 1);
- eim.schedule("showStartMsg", startMsgTime * 60 * 1000);
- eim.schedule("showBlessMsg", blessMsgTime * 60 * 1000);
- eim.schedule("stopBlessings", blessingsTime * 60 * 1000);
- eim.startEventTimer(ceremonyTime * 60000);
- } else {
- end(eim);
+ var mapobj = eim.getMapInstance(entryMap);
+ var chr = mapobj.getCharacterById(eim.getIntProperty("groomId"));
+ if (chr != null) {
+ chr.changeMap(entryMap + 10, "we00");
}
+
+ chr = mapobj.getCharacterById(eim.getIntProperty("brideId"));
+ if (chr != null) {
+ chr.changeMap(entryMap + 10, "we00");
+ }
+
+ mapobj.dropMessage(6, "Wedding Assistant: The couple are heading to the altar, hurry hurry talk to me to arrange your seat.");
+
+ eim.setIntProperty("weddingStage", 1);
+ eim.schedule("showStartMsg", startMsgTime * 60 * 1000);
+ eim.schedule("showBlessMsg", blessMsgTime * 60 * 1000);
+ eim.schedule("stopBlessings", blessingsTime * 60 * 1000);
+ eim.startEventTimer(ceremonyTime * 60000);
+ } else {
+ end(eim);
+ }
}
function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
- eim.unregisterPlayer(player);
- player.changeMap(exitMap, 0);
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap, 0);
}
function playerLeft(eim, player) {
- if(!eim.isEventCleared()) {
- playerExit(eim, player);
- }
+ if (!eim.isEventCleared()) {
+ playerExit(eim, player);
+ }
}
function isMarrying(eim, player) {
- var playerid = player.getId();
- return playerid == eim.getIntProperty("groomId") || playerid == eim.getIntProperty("brideId");
+ var playerid = player.getId();
+ return playerid == eim.getIntProperty("groomId") || playerid == eim.getIntProperty("brideId");
}
function changedMap(eim, player, mapid) {
- if (mapid < minMapId || mapid > maxMapId) {
- if (isMarrying(eim, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (mapid < minMapId || mapid > maxMapId) {
+ if (isMarrying(eim, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
}
+ }
}
function changedLeader(eim, leader) {}
@@ -221,21 +223,21 @@ function changedLeader(eim, leader) {}
function playerDead(eim, player) {}
function playerRevive(eim, player) { // player presses ok on the death pop up.
- if (isMarrying(eim, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (isMarrying(eim, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function playerDisconnected(eim, player) {
- if (isMarrying(eim, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (isMarrying(eim, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function leftParty(eim, player) {}
@@ -243,36 +245,36 @@ function leftParty(eim, player) {}
function disbandParty(eim) {}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function end(eim) {
- var party = eim.getPlayers();
-
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ var party = eim.getPlayers();
+
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
}
function giveRandomEventReward(eim, player) {
- eim.giveEventReward(player);
+ eim.giveEventReward(player);
}
function clearPQ(eim) {
- eim.stopEventTimer();
- eim.setEventCleared();
+ eim.stopEventTimer();
+ eim.setEventCleared();
}
function isCakeBoss(mob) {
- return mob.getId() == 9400606;
+ return mob.getId() == 9400606;
}
function monsterKilled(mob, eim) {
- if(isCakeBoss(mob)) {
- eim.showClearEffect();
- eim.clearPQ();
- }
+ if (isCakeBoss(mob)) {
+ eim.showClearEffect();
+ eim.clearPQ();
+ }
}
function allMonstersDead(eim) {}
diff --git a/scripts/event/WeddingChapel.js b/scripts/event/WeddingChapel.js
index e43c6de466..96129bab6c 100644
--- a/scripts/event/WeddingChapel.js
+++ b/scripts/event/WeddingChapel.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Chapel Wedding
-*/
+ */
var entryMap = 680000100;
var exitMap = 680000500;
@@ -49,172 +49,174 @@ const maxLobbies = 1;
function init() {}
function getMaxLobbies() {
- return maxLobbies;
+ return maxLobbies;
}
function setEventExclusives(eim) {
- var itemSet = [4031217, 4000313]; // golden key, golden maple leaf
- eim.setExclusiveItems(itemSet);
+ var itemSet = [4031217, 4000313]; // golden key, golden maple leaf
+ eim.setExclusiveItems(itemSet);
}
function setEventRewards(eim) {
- var itemSet, itemQty, evLevel, expStages;
+ var itemSet, itemQty, evLevel, expStages;
- evLevel = 1; //Rewards at clear PQ
- itemSet = [];
- itemQty = [];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- expStages = []; //bonus exp given on CLEAR stage signal
- eim.setEventClearStageExp(expStages);
+ evLevel = 1; //Rewards at clear PQ
+ itemSet = [];
+ itemQty = [];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ expStages = []; //bonus exp given on CLEAR stage signal
+ eim.setEventClearStageExp(expStages);
}
function spawnCakeBoss(eim) {
- var mapObj = eim.getMapInstance(680000400);
+ var mapObj = eim.getMapInstance(680000400);
- const LifeFactory = Java.type('server.life.LifeFactory');
- const Point = Java.type('java.awt.Point');
- var mobObj = LifeFactory.getMonster(9400606);
- mapObj.spawnMonsterOnGroundBelow(mobObj, new Point(777, -177));
+ const LifeFactory = Java.type('server.life.LifeFactory');
+ const Point = Java.type('java.awt.Point');
+ var mobObj = LifeFactory.getMonster(9400606);
+ mapObj.spawnMonsterOnGroundBelow(mobObj, new Point(777, -177));
}
function setup(level, lobbyid) {
- var eim = em.newMarriage("Wedding" + lobbyid);
- eim.setProperty("weddingId", "0");
- eim.setProperty("weddingStage", "0"); // 0: gathering time, 1: wedding time, 2: ready to fulfill the wedding, 3: just married
- eim.setProperty("guestBlessings", "0");
- eim.setProperty("isPremium", "1");
- eim.setProperty("canJoin", "1");
- eim.setProperty("groomId", "0");
- eim.setProperty("brideId", "0");
- eim.setProperty("confirmedVows", "-1");
- eim.setProperty("groomWishlist", "");
- eim.setProperty("brideWishlist", "");
- eim.initializeGiftItems();
-
- eim.getInstanceMap(680000400).resetPQ(level);
- if(eventBoss) spawnCakeBoss(eim);
-
- respawnStages(eim);
- eim.startEventTimer(eventTime * 60000);
- setEventRewards(eim);
- setEventExclusives(eim);
- return eim;
+ var eim = em.newMarriage("Wedding" + lobbyid);
+ eim.setProperty("weddingId", "0");
+ eim.setProperty("weddingStage", "0"); // 0: gathering time, 1: wedding time, 2: ready to fulfill the wedding, 3: just married
+ eim.setProperty("guestBlessings", "0");
+ eim.setProperty("isPremium", "1");
+ eim.setProperty("canJoin", "1");
+ eim.setProperty("groomId", "0");
+ eim.setProperty("brideId", "0");
+ eim.setProperty("confirmedVows", "-1");
+ eim.setProperty("groomWishlist", "");
+ eim.setProperty("brideWishlist", "");
+ eim.initializeGiftItems();
+
+ eim.getInstanceMap(680000400).resetPQ(level);
+ if (eventBoss) {
+ spawnCakeBoss(eim);
+ }
+
+ respawnStages(eim);
+ eim.startEventTimer(eventTime * 60000);
+ setEventRewards(eim);
+ setEventExclusives(eim);
+ return eim;
}
function afterSetup(eim) {}
-function respawnStages(eim) {
- eim.getMapInstance(680000400).instanceMapRespawn();
- eim.schedule("respawnStages", 15 * 1000);
+function respawnStages(eim) {
+ eim.getMapInstance(680000400).instanceMapRespawn();
+ eim.schedule("respawnStages", 15 * 1000);
}
function playerEntry(eim, player) {
- eim.setProperty("giftedItemG" + player.getId(), "0");
- eim.setProperty("giftedItemB" + player.getId(), "0");
- player.getAbstractPlayerInteraction().gainItem(4000313, 1);
-
- var map = eim.getMapInstance(entryMap);
- player.changeMap(map, map.getPortal(0));
+ eim.setProperty("giftedItemG" + player.getId(), "0");
+ eim.setProperty("giftedItemB" + player.getId(), "0");
+ player.getAbstractPlayerInteraction().gainItem(4000313, 1);
+
+ var map = eim.getMapInstance(entryMap);
+ player.changeMap(map, map.getPortal(0));
}
function stopBlessings(eim) {
- var mapobj = eim.getMapInstance(entryMap + 10);
- mapobj.dropMessage(6, "Wedding Assistant: Alright people, our couple are preparing their vows to each other right now.");
-
- eim.setIntProperty("weddingStage", 2);
+ var mapobj = eim.getMapInstance(entryMap + 10);
+ mapobj.dropMessage(6, "Wedding Assistant: Alright people, our couple are preparing their vows to each other right now.");
+
+ eim.setIntProperty("weddingStage", 2);
}
function sendWeddingAction(eim, type) {
- var chr = eim.getLeader();
+ var chr = eim.getLeader();
- const Wedding = Java.type('tools.packets.Wedding');
- if(chr.getGender() == 0) {
- chr.getMap().broadcastMessage(Wedding.OnWeddingProgress(type == 2, eim.getIntProperty("groomId"), eim.getIntProperty("brideId"), type + 1));
- } else {
- chr.getMap().broadcastMessage(Wedding.OnWeddingProgress(type == 2, eim.getIntProperty("brideId"), eim.getIntProperty("groomId"), type + 1));
- }
+ const Wedding = Java.type('tools.packets.Wedding');
+ if (chr.getGender() == 0) {
+ chr.getMap().broadcastMessage(Wedding.OnWeddingProgress(type == 2, eim.getIntProperty("groomId"), eim.getIntProperty("brideId"), type + 1));
+ } else {
+ chr.getMap().broadcastMessage(Wedding.OnWeddingProgress(type == 2, eim.getIntProperty("brideId"), eim.getIntProperty("groomId"), type + 1));
+ }
}
function hidePriestMsg(eim) {
- sendWeddingAction(eim, 2);
+ sendWeddingAction(eim, 2);
}
function showStartMsg(eim) {
- const Wedding = Java.type('tools.packets.Wedding');
- eim.getMapInstance(entryMap + 10).broadcastMessage(Wedding.OnWeddingProgress(false, 0, 0, 0));
- eim.schedule("hidePriestMsg", forceHideMsgTime * 1000);
+ const Wedding = Java.type('tools.packets.Wedding');
+ eim.getMapInstance(entryMap + 10).broadcastMessage(Wedding.OnWeddingProgress(false, 0, 0, 0));
+ eim.schedule("hidePriestMsg", forceHideMsgTime * 1000);
}
function showBlessMsg(eim) {
- const Wedding = Java.type('tools.packets.Wedding');
- eim.getMapInstance(entryMap + 10).broadcastMessage(Wedding.OnWeddingProgress(false, 0, 0, 1));
- eim.setIntProperty("guestBlessings", 1);
- eim.schedule("hidePriestMsg", forceHideMsgTime * 1000);
+ const Wedding = Java.type('tools.packets.Wedding');
+ eim.getMapInstance(entryMap + 10).broadcastMessage(Wedding.OnWeddingProgress(false, 0, 0, 1));
+ eim.setIntProperty("guestBlessings", 1);
+ eim.schedule("hidePriestMsg", forceHideMsgTime * 1000);
}
function showMarriedMsg(eim) {
- sendWeddingAction(eim, 1);
- eim.schedule("hidePriestMsg", 10 * 1000);
-
- eim.restartEventTimer(partyTime * 60000);
+ sendWeddingAction(eim, 1);
+ eim.schedule("hidePriestMsg", 10 * 1000);
+
+ eim.restartEventTimer(partyTime * 60000);
}
function scheduledTimeout(eim) {
- if(eim.getIntProperty("canJoin") == 1) {
- em.getChannelServer().closeOngoingWedding(isCathedral);
- eim.setIntProperty("canJoin", 0);
-
- var mapobj = eim.getMapInstance(entryMap);
- var chr = mapobj.getCharacterById(eim.getIntProperty("groomId"));
- if(chr != null) {
- chr.changeMap(entryMap + 10, "we00");
- }
-
- chr = mapobj.getCharacterById(eim.getIntProperty("brideId"));
- if(chr != null) {
- chr.changeMap(entryMap + 10, "we00");
- }
-
- mapobj.dropMessage(6, "Wedding Assistant: The couple are heading to the altar, hurry hurry talk to me to arrange your seat.");
+ if (eim.getIntProperty("canJoin") == 1) {
+ em.getChannelServer().closeOngoingWedding(isCathedral);
+ eim.setIntProperty("canJoin", 0);
- eim.setIntProperty("weddingStage", 1);
- eim.schedule("showStartMsg", startMsgTime * 60 * 1000);
- eim.schedule("showBlessMsg", blessMsgTime * 60 * 1000);
- eim.schedule("stopBlessings", blessingsTime * 60 * 1000);
- eim.startEventTimer(ceremonyTime * 60000);
- } else {
- end(eim);
+ var mapobj = eim.getMapInstance(entryMap);
+ var chr = mapobj.getCharacterById(eim.getIntProperty("groomId"));
+ if (chr != null) {
+ chr.changeMap(entryMap + 10, "we00");
}
+
+ chr = mapobj.getCharacterById(eim.getIntProperty("brideId"));
+ if (chr != null) {
+ chr.changeMap(entryMap + 10, "we00");
+ }
+
+ mapobj.dropMessage(6, "Wedding Assistant: The couple are heading to the altar, hurry hurry talk to me to arrange your seat.");
+
+ eim.setIntProperty("weddingStage", 1);
+ eim.schedule("showStartMsg", startMsgTime * 60 * 1000);
+ eim.schedule("showBlessMsg", blessMsgTime * 60 * 1000);
+ eim.schedule("stopBlessings", blessingsTime * 60 * 1000);
+ eim.startEventTimer(ceremonyTime * 60000);
+ } else {
+ end(eim);
+ }
}
function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
- eim.unregisterPlayer(player);
- player.changeMap(exitMap, 0);
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap, 0);
}
function playerLeft(eim, player) {
- if(!eim.isEventCleared()) {
- playerExit(eim, player);
- }
+ if (!eim.isEventCleared()) {
+ playerExit(eim, player);
+ }
}
function isMarrying(eim, player) {
- var playerid = player.getId();
- return playerid == eim.getIntProperty("groomId") || playerid == eim.getIntProperty("brideId");
+ var playerid = player.getId();
+ return playerid == eim.getIntProperty("groomId") || playerid == eim.getIntProperty("brideId");
}
function changedMap(eim, player, mapid) {
- if (mapid < minMapId || mapid > maxMapId) {
- if (isMarrying(eim, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (mapid < minMapId || mapid > maxMapId) {
+ if (isMarrying(eim, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
}
+ }
}
function changedLeader(eim, leader) {}
@@ -222,21 +224,21 @@ function changedLeader(eim, leader) {}
function playerDead(eim, player) {}
function playerRevive(eim, player) { // player presses ok on the death pop up.
- if (isMarrying(eim, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (isMarrying(eim, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function playerDisconnected(eim, player) {
- if (isMarrying(eim, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (isMarrying(eim, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function leftParty(eim, player) {}
@@ -244,36 +246,36 @@ function leftParty(eim, player) {}
function disbandParty(eim) {}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function end(eim) {
- var party = eim.getPlayers();
-
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ var party = eim.getPlayers();
+
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
}
function giveRandomEventReward(eim, player) {
- eim.giveEventReward(player);
+ eim.giveEventReward(player);
}
function clearPQ(eim) {
- eim.stopEventTimer();
- eim.setEventCleared();
+ eim.stopEventTimer();
+ eim.setEventCleared();
}
function isCakeBoss(mob) {
- return mob.getId() == 9400606;
+ return mob.getId() == 9400606;
}
function monsterKilled(mob, eim) {
- if(isCakeBoss(mob)) {
- eim.showClearEffect();
- eim.clearPQ();
- }
+ if (isCakeBoss(mob)) {
+ eim.showClearEffect();
+ eim.clearPQ();
+ }
}
function allMonstersDead(eim) {}
diff --git a/scripts/event/ZakumBattle.js b/scripts/event/ZakumBattle.js
index 0f370faf3a..362ee89fe5 100644
--- a/scripts/event/ZakumBattle.js
+++ b/scripts/event/ZakumBattle.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Zakum Battle
-*/
+ */
var isPq = true;
var minPlayers = 6, maxPlayers = 30;
@@ -39,7 +39,7 @@ var eventTime = 120; // 120 minutes
const maxLobbies = 1;
function init() {
- setEventRequirements();
+ setEventRequirements();
}
function getMaxLobbies() {
@@ -47,40 +47,46 @@ function getMaxLobbies() {
}
function setEventRequirements() {
- var reqStr = "";
-
- reqStr += "\r\n Number of players: ";
- if(maxPlayers - minPlayers >= 1) reqStr += minPlayers + " ~ " + maxPlayers;
- else reqStr += minPlayers;
-
- reqStr += "\r\n Level range: ";
- if(maxLevel - minLevel >= 1) reqStr += minLevel + " ~ " + maxLevel;
- else reqStr += minLevel;
-
- reqStr += "\r\n Time limit: ";
- reqStr += eventTime + " minutes";
-
- em.setProperty("party", reqStr);
+ var reqStr = "";
+
+ reqStr += "\r\n Number of players: ";
+ if (maxPlayers - minPlayers >= 1) {
+ reqStr += minPlayers + " ~ " + maxPlayers;
+ } else {
+ reqStr += minPlayers;
+ }
+
+ reqStr += "\r\n Level range: ";
+ if (maxLevel - minLevel >= 1) {
+ reqStr += minLevel + " ~ " + maxLevel;
+ } else {
+ reqStr += minLevel;
+ }
+
+ reqStr += "\r\n Time limit: ";
+ reqStr += eventTime + " minutes";
+
+ em.setProperty("party", reqStr);
}
function setEventExclusives(eim) {
- var itemSet = [];
- eim.setExclusiveItems(itemSet);
+ var itemSet = [];
+ eim.setExclusiveItems(itemSet);
}
function setEventRewards(eim) {
- var itemSet, itemQty, evLevel, expStages, mesoStages;
+ var itemSet, itemQty, evLevel, expStages, mesoStages;
- evLevel = 1; //Rewards at clear PQ
- itemSet = [];
- itemQty = [];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- expStages = []; //bonus exp given on CLEAR stage signal
- eim.setEventClearStageExp(expStages);
-
- mesoStages = []; //bonus meso given on CLEAR stage signal
- eim.setEventClearStageMeso(mesoStages);
+ evLevel = 1; //Rewards at clear PQ
+ itemSet = [];
+ itemQty = [];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ expStages = []; //bonus exp given on CLEAR stage signal
+ eim.setEventClearStageExp(expStages);
+
+ mesoStages = []; //bonus meso given on CLEAR stage signal
+ eim.setEventClearStageMeso(mesoStages);
}
function afterSetup(eim) {
@@ -94,11 +100,11 @@ function setup(channel) {
var level = 1;
eim.getInstanceMap(280030000).resetPQ(level);
-
+
eim.startEventTimer(eventTime * 60000);
setEventRewards(eim);
setEventExclusives(eim);
-
+
return eim;
}
@@ -114,12 +120,11 @@ function scheduledTimeout(eim) {
function changedMap(eim, player, mapid) {
if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isExpeditionTeamLackingNow(true, minPlayers, player)) {
+ if (eim.isExpeditionTeamLackingNow(true, minPlayers, player)) {
eim.unregisterPlayer(player);
eim.dropMessage(5, "[Expedition] Either the leader has quit the expedition or there is no longer the minimum number of members required to continue it.");
end(eim);
- }
- else {
+ } else {
eim.dropMessage(5, "[Expedition] " + player.getName() + " has left the instance.");
eim.unregisterPlayer(player);
}
@@ -135,8 +140,7 @@ function playerRevive(eim, player) {
eim.unregisterPlayer(player);
eim.dropMessage(5, "[Expedition] Either the leader has quit the expedition or there is no longer the minimum number of members required to continue it.");
end(eim);
- }
- else {
+ } else {
eim.dropMessage(5, "[Expedition] " + player.getName() + " has left the instance.");
eim.unregisterPlayer(player);
}
@@ -147,23 +151,22 @@ function playerDisconnected(eim, player) {
eim.unregisterPlayer(player);
eim.dropMessage(5, "[Expedition] Either the leader has quit the expedition or there is no longer the minimum number of members required to continue it.");
end(eim);
- }
- else {
+ } else {
eim.dropMessage(5, "[Expedition] " + player.getName() + " has left the instance.");
eim.unregisterPlayer(player);
}
}
-function leftParty (eim, player) {}
+function leftParty(eim, player) {}
-function disbandParty (eim) {}
+function disbandParty(eim) {}
function monsterValue(eim, mobId) {
return 1;
}
function playerUnregistered(eim, player) {
- if(eim.isEventCleared()) {
+ if (eim.isEventCleared()) {
em.completeQuest(player, 100200, 2030010);
}
}
@@ -197,11 +200,11 @@ function isZakum(mob) {
}
function monsterKilled(mob, eim) {
- if(isZakum(mob)) {
+ if (isZakum(mob)) {
eim.setIntProperty("defeatedBoss", 1);
eim.showClearEffect(mob.getMap().getId());
eim.clearPQ();
-
+
mob.getMap().broadcastZakumVictory();
}
}
diff --git a/scripts/event/ZakumPQ.js b/scripts/event/ZakumPQ.js
index 111855f747..bb33ef9db0 100644
--- a/scripts/event/ZakumPQ.js
+++ b/scripts/event/ZakumPQ.js
@@ -21,7 +21,7 @@
/**
* @author: Ronan
* @event: Zakum PQ
-*/
+ */
var isPq = true;
var minPlayers = 1, maxPlayers = 6;
@@ -39,111 +39,121 @@ var eventTime = 30; // 30 minutes
const maxLobbies = 1;
function init() {
- setEventRequirements();
+ setEventRequirements();
}
function getMaxLobbies() {
- return maxLobbies;
+ return maxLobbies;
}
function setEventRequirements() {
- var reqStr = "";
-
- reqStr += "\r\n Number of players: ";
- if(maxPlayers - minPlayers >= 1) reqStr += minPlayers + " ~ " + maxPlayers;
- else reqStr += minPlayers;
-
- reqStr += "\r\n Level range: ";
- if(maxLevel - minLevel >= 1) reqStr += minLevel + " ~ " + maxLevel;
- else reqStr += minLevel;
-
- reqStr += "\r\n Time limit: ";
- reqStr += eventTime + " minutes";
-
- em.setProperty("party", reqStr);
+ var reqStr = "";
+
+ reqStr += "\r\n Number of players: ";
+ if (maxPlayers - minPlayers >= 1) {
+ reqStr += minPlayers + " ~ " + maxPlayers;
+ } else {
+ reqStr += minPlayers;
+ }
+
+ reqStr += "\r\n Level range: ";
+ if (maxLevel - minLevel >= 1) {
+ reqStr += minLevel + " ~ " + maxLevel;
+ } else {
+ reqStr += minLevel;
+ }
+
+ reqStr += "\r\n Time limit: ";
+ reqStr += eventTime + " minutes";
+
+ em.setProperty("party", reqStr);
}
function setEventExclusives(eim) {
- var itemSet = [4001015, 4001016, 4001018];
- eim.setExclusiveItems(itemSet);
+ var itemSet = [4001015, 4001016, 4001018];
+ eim.setExclusiveItems(itemSet);
}
function setEventRewards(eim) {
- var itemSet, itemQty, evLevel, expStages;
+ var itemSet, itemQty, evLevel, expStages;
- evLevel = 1; //Rewards at clear PQ
- itemSet = [];
- itemQty = [];
- eim.setEventRewards(evLevel, itemSet, itemQty);
-
- expStages = []; //bonus exp given on CLEAR stage signal
- eim.setEventClearStageExp(expStages);
+ evLevel = 1; //Rewards at clear PQ
+ itemSet = [];
+ itemQty = [];
+ eim.setEventRewards(evLevel, itemSet, itemQty);
+
+ expStages = []; //bonus exp given on CLEAR stage signal
+ eim.setEventClearStageExp(expStages);
}
function getEligibleParty(party) { //selects, from the given party, the team that is allowed to attempt this event
- var eligible = [];
- var hasLeader = false;
-
- if(party.size() > 0) {
- var partyList = party.toArray();
+ var eligible = [];
+ var hasLeader = false;
- for(var i = 0; i < party.size(); i++) {
- var ch = partyList[i];
+ if (party.size() > 0) {
+ var partyList = party.toArray();
- if(ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
- if(ch.isLeader()) hasLeader = true;
- eligible.push(ch);
- }
+ for (var i = 0; i < party.size(); i++) {
+ var ch = partyList[i];
+
+ if (ch.getMapId() == recruitMap && ch.getLevel() >= minLevel && ch.getLevel() <= maxLevel) {
+ if (ch.isLeader()) {
+ hasLeader = true;
}
+ eligible.push(ch);
+ }
}
-
- if(!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) eligible = [];
- return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
+ }
+
+ if (!(hasLeader && eligible.length >= minPlayers && eligible.length <= maxPlayers)) {
+ eligible = [];
+ }
+ return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
}
function setup(level, lobbyid) {
- var eim = em.newInstance("PreZakum" + lobbyid);
- eim.setProperty("level", level);
- eim.setProperty("gotDocuments", 0);
-
- eim.getInstanceMap(280010000).resetPQ(level);
- eim.getInstanceMap(280010010).resetPQ(level);
- eim.getInstanceMap(280010011).resetPQ(level);
- eim.getInstanceMap(280010020).resetPQ(level);
- eim.getInstanceMap(280010030).resetPQ(level);
- eim.getInstanceMap(280010031).resetPQ(level);
- eim.getInstanceMap(280010040).resetPQ(level);
- eim.getInstanceMap(280010041).resetPQ(level);
- eim.getInstanceMap(280010050).resetPQ(level);
- eim.getInstanceMap(280010060).resetPQ(level);
- eim.getInstanceMap(280010070).resetPQ(level);
- eim.getInstanceMap(280010071).resetPQ(level);
- eim.getInstanceMap(280010080).resetPQ(level);
- eim.getInstanceMap(280010081).resetPQ(level);
- eim.getInstanceMap(280010090).resetPQ(level);
- eim.getInstanceMap(280010091).resetPQ(level);
- eim.getInstanceMap(280010100).resetPQ(level);
- eim.getInstanceMap(280010101).resetPQ(level);
- eim.getInstanceMap(280010110).resetPQ(level);
- eim.getInstanceMap(280010120).resetPQ(level);
- eim.getInstanceMap(280010130).resetPQ(level);
- eim.getInstanceMap(280010140).resetPQ(level);
- eim.getInstanceMap(280010150).resetPQ(level);
- eim.getInstanceMap(280011000).resetPQ(level);
- eim.getInstanceMap(280011001).resetPQ(level);
- eim.getInstanceMap(280011002).resetPQ(level);
- eim.getInstanceMap(280011003).resetPQ(level);
- eim.getInstanceMap(280011004).resetPQ(level);
- eim.getInstanceMap(280011005).resetPQ(level);
- eim.getInstanceMap(280011006).resetPQ(level);
-
- respawnStages(eim);
-
- eim.startEventTimer(eventTime * 60000);
- setEventRewards(eim);
- setEventExclusives(eim);
-
- return eim;
+ var eim = em.newInstance("PreZakum" + lobbyid);
+ eim.setProperty("level", level);
+ eim.setProperty("gotDocuments", 0);
+
+ eim.getInstanceMap(280010000).resetPQ(level);
+ eim.getInstanceMap(280010010).resetPQ(level);
+ eim.getInstanceMap(280010011).resetPQ(level);
+ eim.getInstanceMap(280010020).resetPQ(level);
+ eim.getInstanceMap(280010030).resetPQ(level);
+ eim.getInstanceMap(280010031).resetPQ(level);
+ eim.getInstanceMap(280010040).resetPQ(level);
+ eim.getInstanceMap(280010041).resetPQ(level);
+ eim.getInstanceMap(280010050).resetPQ(level);
+ eim.getInstanceMap(280010060).resetPQ(level);
+ eim.getInstanceMap(280010070).resetPQ(level);
+ eim.getInstanceMap(280010071).resetPQ(level);
+ eim.getInstanceMap(280010080).resetPQ(level);
+ eim.getInstanceMap(280010081).resetPQ(level);
+ eim.getInstanceMap(280010090).resetPQ(level);
+ eim.getInstanceMap(280010091).resetPQ(level);
+ eim.getInstanceMap(280010100).resetPQ(level);
+ eim.getInstanceMap(280010101).resetPQ(level);
+ eim.getInstanceMap(280010110).resetPQ(level);
+ eim.getInstanceMap(280010120).resetPQ(level);
+ eim.getInstanceMap(280010130).resetPQ(level);
+ eim.getInstanceMap(280010140).resetPQ(level);
+ eim.getInstanceMap(280010150).resetPQ(level);
+ eim.getInstanceMap(280011000).resetPQ(level);
+ eim.getInstanceMap(280011001).resetPQ(level);
+ eim.getInstanceMap(280011002).resetPQ(level);
+ eim.getInstanceMap(280011003).resetPQ(level);
+ eim.getInstanceMap(280011004).resetPQ(level);
+ eim.getInstanceMap(280011005).resetPQ(level);
+ eim.getInstanceMap(280011006).resetPQ(level);
+
+ respawnStages(eim);
+
+ eim.startEventTimer(eventTime * 60000);
+ setEventRewards(eim);
+ setEventExclusives(eim);
+
+ return eim;
}
function afterSetup(eim) {}
@@ -151,98 +161,98 @@ function afterSetup(eim) {}
function respawnStages(eim) {}
function playerEntry(eim, player) {
- var map = eim.getMapInstance(entryMap);
- player.changeMap(map, map.getPortal(0));
+ var map = eim.getMapInstance(entryMap);
+ player.changeMap(map, map.getPortal(0));
}
function scheduledTimeout(eim) {
- end(eim);
+ end(eim);
}
function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
- eim.unregisterPlayer(player);
- player.changeMap(exitMap, 0);
+ eim.unregisterPlayer(player);
+ player.changeMap(exitMap, 0);
}
function playerLeft(eim, player) {
- if(!eim.isEventCleared()) {
- playerExit(eim, player);
- }
+ if (!eim.isEventCleared()) {
+ playerExit(eim, player);
+ }
}
function changedMap(eim, player, mapid) {
- if (mapid < minMapId || mapid > maxMapId) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (mapid < minMapId || mapid > maxMapId) {
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
}
+ }
}
function changedLeader(eim, leader) {
- var mapid = leader.getMapId();
- if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
- end(eim);
- }
+ var mapid = leader.getMapId();
+ if (!eim.isEventCleared() && (mapid < minMapId || mapid > maxMapId)) {
+ end(eim);
+ }
}
function playerDead(eim, player) {}
function playerRevive(eim, player) { // player presses ok on the death pop up.
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function playerDisconnected(eim, player) {
- if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
- eim.unregisterPlayer(player);
- end(eim);
- }
- else
- eim.unregisterPlayer(player);
+ if (eim.isEventTeamLackingNow(true, minPlayers, player)) {
+ eim.unregisterPlayer(player);
+ end(eim);
+ } else {
+ eim.unregisterPlayer(player);
+ }
}
function leftParty(eim, player) {
- if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
- end(eim);
- }
- else
- playerLeft(eim, player);
+ if (eim.isEventTeamLackingNow(false, minPlayers, player)) {
+ end(eim);
+ } else {
+ playerLeft(eim, player);
+ }
}
function disbandParty(eim) {
- if (!eim.isEventCleared()) {
- end(eim);
- }
+ if (!eim.isEventCleared()) {
+ end(eim);
+ }
}
function monsterValue(eim, mobId) {
- return 1;
+ return 1;
}
function end(eim) {
- var party = eim.getPlayers();
- for (var i = 0; i < party.size(); i++) {
- playerExit(eim, party.get(i));
- }
- eim.dispose();
+ var party = eim.getPlayers();
+ for (var i = 0; i < party.size(); i++) {
+ playerExit(eim, party.get(i));
+ }
+ eim.dispose();
}
function giveRandomEventReward(eim, player) {
- eim.giveEventReward(player);
+ eim.giveEventReward(player);
}
function clearPQ(eim) {
- eim.stopEventTimer();
- eim.setEventCleared();
+ eim.stopEventTimer();
+ eim.setEventCleared();
}
function monsterKilled(mob, eim) {}
diff --git a/scripts/event/s4aWorld.js b/scripts/event/s4aWorld.js
index 2af88c7a84..16b4dfaf1c 100644
--- a/scripts/event/s4aWorld.js
+++ b/scripts/event/s4aWorld.js
@@ -13,24 +13,28 @@ function monsterValue(eim, mobId) {
}
function getEligibleParty(party) { //selects, from the given party, the team that is allowed to attempt this event
- var eligible = [];
- var hasLeader = false;
-
- if(party.size() > 0) {
- var partyList = party.toArray();
+ var eligible = [];
+ var hasLeader = false;
- for(var i = 0; i < party.size(); i++) {
- var ch = partyList[i];
+ if (party.size() > 0) {
+ var partyList = party.toArray();
- if(ch.getMapId() == 105090200 && ch.getLevel() >= 120) {
- if(ch.isLeader()) hasLeader = true;
- eligible.push(ch);
- }
+ for (var i = 0; i < party.size(); i++) {
+ var ch = partyList[i];
+
+ if (ch.getMapId() == 105090200 && ch.getLevel() >= 120) {
+ if (ch.isLeader()) {
+ hasLeader = true;
}
+ eligible.push(ch);
+ }
}
-
- if(!(hasLeader && eligible.length >= minPlayers)) eligible = [];
- return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
+ }
+
+ if (!(hasLeader && eligible.length >= minPlayers)) {
+ eligible = [];
+ }
+ return Java.to(eligible, Java.type('net.server.world.PartyCharacter[]'));
}
function setup(level, lobbyid) {
@@ -49,9 +53,9 @@ function setup(level, lobbyid) {
function afterSetup(eim) {}
-function respawnStages(eim) {
- eim.getMapInstance(910500000).instanceMapRespawn();
- eim.schedule("respawnStages", 15 * 1000);
+function respawnStages(eim) {
+ eim.getMapInstance(910500000).instanceMapRespawn();
+ eim.schedule("respawnStages", 15 * 1000);
}
function playerEntry(eim, player) {
@@ -73,11 +77,11 @@ function scheduledTimeout(eim) {
function changedMap(eim, player, mapid) {
if (mapid != 910500000) {
- eim.unregisterPlayer(player);
+ eim.unregisterPlayer(player);
- if (eim.disposeIfPlayerBelow(minPlayers, 105090200)) {
- em.setProperty("started", "false");
- }
+ if (eim.disposeIfPlayerBelow(minPlayers, 105090200)) {
+ em.setProperty("started", "false");
+ }
}
}