Guild & Alliances Patches

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.
This commit is contained in:
ronancpl
2017-06-21 01:17:25 -03:00
parent 7f6d420cf1
commit 6b2b3616d6
83 changed files with 293 additions and 178 deletions

View File

@@ -17,84 +17,85 @@ 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");
em.setProperty("state", "0");
em.setProperty("leader", "true");
}
function afterSetup(eim) {}
function setup(eim, 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
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");
//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
}
}
}
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.broadcastPlayerMsg(5, "[Expedition] " + player.getName() + " has entered the map.");
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.getCharactersSize() <= 0) {
if (map.countPlayers() <= 0) {
return;
}
eim.broadcastPlayerMsg(5, "The Master Guardians have detected you.");
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);
@@ -102,8 +103,7 @@ function spawnGuardians(eim) {
}
}
function playerRevive(eim, player) {
}
function playerRevive(eim, player) {}
function scheduledTimeout(eim) {
end(eim);
@@ -165,33 +165,30 @@ function monsterValue(eim, mobId) {
function playerUnregistered(eim, player) {}
function playerExit(eim, player) {
eim.broadcastPlayerMsg(5, "[Expedition] " + player.getName() + " has left the map.");
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");
}
em.setProperty("state", "0");
em.setProperty("leader", "true");
}
}
function end(eim) {
eim.disposeIfPlayerBelow(100, 610030010);
em.setProperty("state", "0");
em.setProperty("leader", "true");
em.setProperty("state", "0");
em.setProperty("leader", "true");
}
function clearPQ(eim) {
eim.setEventCleared();
end(eim);
}
function monsterKilled(mob, eim) {}
function allMonstersDead(eim) {}
function allMonstersDead(eim) {
}
function leftParty (eim, player) {
}
function disbandParty (eim) {
}
function leftParty (eim, player) {}
function disbandParty (eim) {}
function playerDead(eim, player) {}
function cancelSchedule() {}