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:
@@ -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() {}
|
||||
@@ -48,10 +48,7 @@ function action(mode, type, selection) {
|
||||
return;
|
||||
}
|
||||
if (status == 0) {
|
||||
if (player.getClient().getChannel() != 1) { //Only channel 1
|
||||
cm.sendOk("Sorry, Crimsonwood Keep Party Quest may only be attempted on #bChannel 1#k.");
|
||||
cm.dispose();
|
||||
} else if (player.getLevel() < cwkpq.getMinLevel() && player.getLevel() > cwkpq.getMaxLevel()) { //Don't fit requirement
|
||||
if (player.getLevel() < cwkpq.getMinLevel() && player.getLevel() > cwkpq.getMaxLevel()) { //Don't fit requirement
|
||||
cm.sendOk("You do not meet the criteria to take attempt Crimsonwood Keep Party Quest!");
|
||||
cm.dispose();
|
||||
} else if (expedition == null) { //Start an expedition
|
||||
@@ -109,14 +106,14 @@ function action(mode, type, selection) {
|
||||
cm.sendSimple(text);
|
||||
status = 6;
|
||||
} else if (selection == 2) {
|
||||
cm.sendOk("The expedition will begin and you will now be escorted to the #bEntrance to cwkpq Altar#k.");
|
||||
cm.sendOk("The expedition will begin and you will now be escorted to the #bEntrance to CWKPQ Altar#k.");
|
||||
status = 4;
|
||||
} else if (selection == 3) {
|
||||
player.getMap().broadcastMessage(MaplePacketCreator.removeClock());
|
||||
player.getMap().broadcastMessage(MaplePacketCreator.serverNotice(6, expedition.getLeader().getName() + " has ended the expedition."));
|
||||
cm.endExpedition(expedition);
|
||||
player.getMap().broadcastMessage(MaplePacketCreator.removeClock());
|
||||
player.getMap().broadcastMessage(MaplePacketCreator.serverNotice(6, expedition.getLeader().getName() + " has ended the expedition."));
|
||||
cm.endExpedition(expedition);
|
||||
cm.sendOk("The expedition has now ended. Sometimes the best strategy is to run away.");
|
||||
cm.dispose();
|
||||
cm.dispose();
|
||||
return;
|
||||
}
|
||||
} else if (status == 4) {
|
||||
@@ -132,15 +129,15 @@ function action(mode, type, selection) {
|
||||
cm.dispose();
|
||||
return;
|
||||
}
|
||||
cm.sendOk("Good luck! Crimsonwood Keep Party Quest is a worthy challenge!");
|
||||
em.setProperty("leader", player.getName());
|
||||
|
||||
em.setProperty("leader", player.getName());
|
||||
em.setProperty("channel", player.getClient().getChannel());
|
||||
em.startInstance(expedition);
|
||||
cm.dispose();
|
||||
return;
|
||||
} else if (status == 6) {
|
||||
if (selection > 0) {
|
||||
var banned = expedition.getMembers().get(selection);
|
||||
var banned = expedition.getMembers().get(selection - 1);
|
||||
expedition.ban(banned);
|
||||
cm.sendOk("You have banned " + banned.getName() + " from the expedition.");
|
||||
cm.dispose();
|
||||
|
||||
@@ -26,5 +26,5 @@
|
||||
|
||||
function start() {
|
||||
cm.warp(610030020);
|
||||
cm.dispose();
|
||||
cm.dispose();
|
||||
}
|
||||
Reference in New Issue
Block a user