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"); + } } }