As reported by J0k3r613, patched guild system not recognizing properly the guild leader just after creation. Patched many more issues related to guilds and alliances.
194 lines
5.8 KiB
JavaScript
194 lines
5.8 KiB
JavaScript
var mapz = Array(100, 200, 300, 400, 500, 510, 520, 521, 522, 530, 540, 550, 600, 700, 800);
|
|
var a = Array("a", "b", "c", "d", "e", "f", "g", "h", "i");
|
|
/*
|
|
a1,3,6
|
|
b1-7
|
|
c1,3,6
|
|
d1-7
|
|
e1-7
|
|
f1,3,6
|
|
g1-7
|
|
h1,3,6
|
|
i1-7
|
|
*/
|
|
|
|
var pos_x = Array(944,401,28,-332,-855);
|
|
var pos_y = Array(-204,-384,-504,-384,-204);
|
|
var pos_y2 = Array(-144, -444, -744, -1044, -1344, -1644);
|
|
|
|
function init() {
|
|
em.setProperty("state", "0");
|
|
em.setProperty("leader", "true");
|
|
}
|
|
|
|
function afterSetup(eim) {}
|
|
|
|
function setup(leaderid) {
|
|
em.setProperty("state", "1");
|
|
em.setProperty("leader", "true");
|
|
em.setProperty("current_instance", "0");
|
|
em.setProperty("glpq1", "0");
|
|
em.setProperty("glpq2", "0");
|
|
em.setProperty("glpq3", "0");
|
|
em.setProperty("glpq4", "0");
|
|
em.setProperty("glpq5", "0");
|
|
em.setProperty("glpq6", "0");
|
|
|
|
var eim = em.newInstance("CWKPQ" + leaderid);
|
|
for (var i = 0; i < mapz.length; i++) {
|
|
var map = eim.getInstanceMap(610030000 + mapz[i]);
|
|
if (map != null) {
|
|
map.resetFully();
|
|
if (map.getId() == 610030400) {
|
|
map.setReactorState(); //because everything is at 0 =[
|
|
map.limitReactor(6109016, 1);
|
|
map.limitReactor(6109017, 1);
|
|
map.limitReactor(6109018, 1);
|
|
map.limitReactor(6109019, 1);
|
|
map.limitReactor(6109020, 1);
|
|
map.shuffleReactors(6109016, 6109020);
|
|
map.destroyReactors(6108000, 6108005); //destroy the fake ones, non-GMS like or is this necessary
|
|
|
|
//add environments
|
|
for (var x = 0; x < a.length; x++) {
|
|
for (var y = 1; y <= 7; y++) {
|
|
if (x == 1 || x == 3 || x == 4 || x == 6 || x == 8) {
|
|
if (y != 2 && y != 4 && y != 5 && y != 7) {
|
|
map.moveEnvironment(a[x] + "" + y, 1);
|
|
}
|
|
} else {
|
|
map.moveEnvironment(a[x] + "" + y, 1);
|
|
}
|
|
}
|
|
}
|
|
} else if (map.getId() == 610030510) { //warrior room, crimson guardians
|
|
for (var z = 0; z < pos_y2.length; z++) {
|
|
var mob = em.getMonster(9400582);
|
|
eim.registerMonster(mob);
|
|
map.spawnMonsterOnGroundBelow(mob, new java.awt.Point(0, pos_y2[z]));
|
|
}
|
|
//skipping mage room, ehh
|
|
} else if (map.getId() == 610030540) { //bowman room, spawn master guardians
|
|
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]));
|
|
}
|
|
} else if (map.getId() == 610030550) {
|
|
map.shuffleReactors(); //pirate room
|
|
}
|
|
}
|
|
}
|
|
eim.startEventTimer(120000); //2 MIN for first stg
|
|
eim.schedule("spawnGuardians", 60000);
|
|
return eim;
|
|
}
|
|
|
|
function playerEntry(eim, player) {
|
|
eim.dropMessage(5, "[Expedition] " + player.getName() + " has entered the map.");
|
|
var map = eim.getMapInstance(610030100 + (parseInt(em.getProperty("current_instance")) * 100));
|
|
player.changeMap(map, map.getPortal(0));
|
|
}
|
|
|
|
function spawnGuardians(eim) {
|
|
var map = eim.getMapInstance(0);
|
|
if (map.countPlayers() <= 0) {
|
|
return;
|
|
}
|
|
eim.dropMessage(5, "The Master Guardians have detected you.");
|
|
for (var i = 0; i < 20; i++) { //spawn 20 guardians
|
|
var mob = em.getMonster(9400594);
|
|
eim.registerMonster(mob);
|
|
map.spawnMonsterOnGroundBelow(mob, new java.awt.Point(1000, 336));
|
|
}
|
|
}
|
|
|
|
function playerRevive(eim, player) {}
|
|
|
|
function scheduledTimeout(eim) {
|
|
end(eim);
|
|
}
|
|
|
|
function changedMap(eim, player, mapid) {
|
|
if (mapid < 610030100 || mapid > 610030800) {
|
|
playerExit(eim,player);
|
|
} else {
|
|
switch(mapid) {
|
|
case 610030200:
|
|
if (em.getProperty("current_instance").equals("0")) {
|
|
eim.restartEventTimer(600000); //10 mins
|
|
em.setProperty("current_instance", "1");
|
|
}
|
|
break;
|
|
case 610030300:
|
|
if (em.getProperty("current_instance").equals("1")) {
|
|
eim.restartEventTimer(600000); //10 mins
|
|
em.setProperty("current_instance", "2");
|
|
}
|
|
break;
|
|
case 610030400:
|
|
if (em.getProperty("current_instance").equals("2")) {
|
|
eim.restartEventTimer(600000); //10 mins
|
|
em.setProperty("current_instance", "3");
|
|
}
|
|
break;
|
|
case 610030500:
|
|
if (em.getProperty("current_instance").equals("3")) {
|
|
eim.restartEventTimer(1200000); //20 mins
|
|
em.setProperty("current_instance", "4");
|
|
}
|
|
break;
|
|
case 610030600:
|
|
if (em.getProperty("current_instance").equals("4")) {
|
|
eim.restartEventTimer(3600000); //1 hr
|
|
em.setProperty("current_instance", "5");
|
|
}
|
|
break;
|
|
case 610030800:
|
|
if (em.getProperty("current_instance").equals("5")) {
|
|
eim.restartEventTimer(60000); //1 min
|
|
em.setProperty("current_instance", "6");
|
|
}
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
|
|
function playerDisconnected(eim, player) {
|
|
return 0;
|
|
}
|
|
|
|
function monsterValue(eim, mobId) {
|
|
return 1;
|
|
}
|
|
|
|
function playerUnregistered(eim, player) {}
|
|
|
|
function playerExit(eim, player) {
|
|
eim.dropMessage(5, "[Expedition] " + player.getName() + " has left the event.");
|
|
eim.unregisterPlayer(player);
|
|
|
|
if (eim.disposeIfPlayerBelow(minPlayers, 610030010)) {
|
|
em.setProperty("state", "0");
|
|
em.setProperty("leader", "true");
|
|
}
|
|
}
|
|
|
|
function end(eim) {
|
|
eim.disposeIfPlayerBelow(100, 610030010);
|
|
em.setProperty("state", "0");
|
|
em.setProperty("leader", "true");
|
|
}
|
|
|
|
function clearPQ(eim) {
|
|
eim.setEventCleared();
|
|
end(eim);
|
|
}
|
|
|
|
function monsterKilled(mob, eim) {}
|
|
function allMonstersDead(eim) {}
|
|
|
|
function leftParty (eim, player) {}
|
|
function disbandParty (eim) {}
|
|
function playerDead(eim, player) {}
|
|
function cancelSchedule() {} |